XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
J
expert
offline
Опыт: 48,447
Активность:
дай сам код что именно сейчас что выдает ошибку...

Jon добавил:
хотя ген пак и правдо некоторые ошибки берет из воздуха, у меня тоже такое было...
Например нельзя назвать переменую также как функцию в пределах одного гуишного триггера, хотя в обычном редакторе это свободно допускается...
Старый 17.03.2008, 20:13
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
Тада уж даю всю карту - она маленькая (чтоб тебе не создавать там кэш и прочее) вот ссылка http://dump.ru/files/o/o6964730155/ триггер TEST

Вообще эта ошибка похожа на ошибку с необъявленными глобалками ^_^ она как бы есть, но и как бы не мешает
Старый 17.03.2008, 20:39
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
Код:
local player pl = GetOwningPlayer(GetTriggerUnit())

Если переменная типа player, то ей присваивается именно игрок, а не номер игрока. Ибо номер - это integer.
Старый 20.03.2008, 23:05
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
Вот пару вопросов:
Можно ли через тригеры изменить заклинание каменный доспех (горный великан, эльфы) ?
Можно ли функцией получить число брони юнита (возможно с округление), чтобы занести потом в переменную?
Старый 21.03.2008, 00:55
df Hunter
Нападатель
offline
Опыт: 5,749
Активность:
happy_horror ну триггерно ты можешь получить агилу, умножить её на коэффицент "броня за агилу" и прибавить базовый армор + бонусы с вещей(если бонусы даются через бонусмод)
Старый 21.03.2008, 02:24
Toadcop

offline
Опыт: 54,313
Активность:
happy_horror или коцнуть этого юнита "спец юнитом" и сравнить полученый урон с тем что должен был быть.

ака чисто математически можно посчитать =) а ну да ^^ кстати во ! для этого лутче всего зарезервировать спец тип урона на карте (напр хаос или чёнить) и сделать процент урона для каждой брони уникальный тогда можно на 100% точно определять это =)
// там прийдётьса писать маленькую БД по "резам" брони =)
Старый 21.03.2008, 02:57
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
Желательно примеры функций которые бы помогли в этом
(в одной из тем нашёл интересное предложение) Я собираюсь поставить в константах бонус брони в % 0.00 за единицу брони и бонусы/штрафы типов атак тоже по 0.00% (т.е. 1.00 всегда 100% урона)
Всё это будет сводиться к тому, что при любом количестве защиты будет наноситься 100% урона - но, вместо обычной брони я хочу использовать способность каменный доспех:
у этой способности минимальный (сдерживаемый) урон будет 0 а максимальный (сдерживаемый) будет равен количеству брони юнита
Нужно это для того, чтобы урон по юниту расчитывался по системе урон = урон - броня (в числах, а не %)
Для ясности вот 2 цели:
Установить переменную i (целочисленная) = защита юнита (число, а не %)
Установить максимальный сдерживаемый урон (способности каменных доспех) = i
примерно вот этого я пытаюсь добиться...

Отредактировано happy_horror, 21.03.2008 в 16:55.
Старый 21.03.2008, 15:27
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
По момему нельзя никак сделать стопроцентный урон.

Из FAQ'а:
Код:
DMG_REDUCTION = COEFF*ARMOR /(1+COEFF*ARMOR)
COEFF по умолчанию равен 0.06 (в Игровых константах)
Старый 21.03.2008, 17:18
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
Рыскал по функция и наткнулся на
Код:
GetUnitState
в функции нужно указать юнита и один из его параметров в виде UNIT_STATE_...есть LIFE , MANA но почему-то нету DEFENSE или ARMOR.

А как на счёт переменной типа юнит? Ведь в ней хранятся параметры юнита, можно ли из переменной вытащить параметр - броня юнита??

happy_horror добавил:
Цитата:
Сообщение от DFlyer
По момему нельзя никак сделать стопроцентный урон.


Конешно можно - указать в константах зависимости типов атак и брони по 1.00 для всех и тогда урон всегда будет 100% да к тому же я поставил бонус брони за единицу = 0.00 т.е. сколько бы защиты не было у юнита он всегда получит 100% урона, это так сказать первая часть задачи
Старый 21.03.2008, 17:23
DFlyer
<3 MJ
offline
Опыт: 42,879
Активность:
happy_horror
В переменной типа юнит хранится ссылка именно на юнита. А "параметры юнита" хранятся как ни странно, в самом же юните.
Старый 21.03.2008, 17:23
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
Но тогда всё тот же насуший вопрос - как из юнита достать количество брони?

P.S. автор одной из тем по такой системы выложил карту, которая не работает http://xgm.guru/forum/attachment.php?attachmentid=24998 но она даже и не открывается, из-за то, что: "Функция триггера отсутствует в базе данных: GetCurrentDefenseBonus"

У автора стоит WeU, я его себе тоже поставил и запускаю с Ген Паком, но тем не менее, редактор у меня такой функции не знает >.>

Отредактировано happy_horror, 21.03.2008 в 18:14.
Старый 21.03.2008, 18:04
adic3x

offline
Опыт: 108,439
Активность:
// ребят, может таки стоп оффтоп? ну создайте тему и там задайте вопрос....

Цитата:
как из юнита достать количество брони

базовая броня (бд по характеристикам в РО) + проверить все бафы + проверить предметы + броня от ловкости

либо даммиатака
Старый 21.03.2008, 18:34
happy_horror
2 + 2 = 22 :-D
offline
Опыт: 7,818
Активность:
А что за тип переменной boolexpr ? Похоже на boolean exprassion, но как тада его передавать в функцию
Код:
function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group
    local group g = CreateGroup()
    call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter)
    call DestroyBoolExpr(filter)
    return g
endfunction

?
Старый 21.03.2008, 21:03
J
expert
offline
Опыт: 48,447
Активность:
local boolexpr b = Condition(function Cond)
функция Cond, должна возвращать булеан
Старый 21.03.2008, 21:19
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 15:09.