Viktor19, таков синтаксис, сначала объяви функцию, а потом вызови и дай аргумент!
Функция может возвращать константное значение (частенько юзается в картах близзардов).
constant function A takes nothing returns integer nothing
return 5
endfunction
function B takes integer i returns nothing
//some code
endfunction
call B( A())
// можно сделать еще так
function B takes integer i returns nothing
if i == 0 then
set i = A( ) // ну можно пользоваться просто глобальной переменной, на хайве это считается эталоном - юзать константные функции для установки //настроек
endif
// some code
endfunction
endfunction
Preload exploit в помощь, ну или вам нужно совсем сложно? DracoL1ch, а что если вызвать функцию из storm.dll CreateMPQ? Игра же как то создает карты в папке? Это мпк архивы, в storm.dll есть функции для работы с мпк, в game.dll их явно нету...
Art35372, ну значит ошибки в коде, ищи ошибки - ибо это явно ваш косяк, т.к все ваши гуи переводятся jass при сохранении карты и хранятся в war3map.j файле, с которым и работает игра, а не с гуи писульками которые можно удалить и карта будет нормально работать.
Правда стоит помнить что для карты путей используется приблизительный размер, а именно 4х4, 8x8, 16x16 и так далее, меньше вы квадрат пути не сделайте. Реальнмй размер юзается для скиллов.
okfinch, on Hiveworkshop posted a DracoLich's memory hack and antimap hack, anti keys (software - meepokey, invoker key )
The examples of protection against cheaters laid out on hiveworkshop do not suit you?
ClotPh, не может же просто так фаталить, лог чтоли сделай, мб было что то общее во всех играх с фаталом, что не такое уж и очивидное...
Ну пока с ли чем открыли новый флаг криттера = ), не знаю когда он будет свободен.
Oxotnak, Инвиз то нужен для героя с иконочкой? Ну для иконки которую можно изучить и тыкать юберется любая пассивка которая ничего не дает, ну или её эффект можно убрать, чародейская аура с 0.01 мп\сек. регеном, промахи с 1% шансом и так далее. Далее следим триггером за тем что выучит герой, если это наша пустышка то вручаем ему перманентную невидимость, можно еще по другому, изначально поставить герою в способностях перманентный инвиз с несколькими уровнями, но на 1 уровне убрать все бонусы, время ухода в инвиз -1, там и так далее, при изучении пустышки поднимать уровень инвиза на 1.
ImbaStyle, Что за нуботня? какие таймеры? Блин пассивка волков - Постоянная невидимость...
морф в другого юнита, с бонусом хп меньше нуля, если макс хп юнита будет меньше или равно 0 то юнит никогда не умрет, он будет стоять, им можно управлять, его будут бить и он будет получать урон но никогда не умрёт.
Событие - юнит игрока умирает, действие посчитать юнитов в области, если юнитов меньше 1 то делай свои действия, чувак как то не круто...
Примитив же? Разве нет?
ClotPh, а чем это плохо? Глобалки? Создавать каждый раз группу глупо, достаточно одной для всех дейсвий, брать всех и перебирать в цикле? Нафиг надо, это не быстрее,не лучше ни коим образом, разве что удобнее, так же у меня везде есть проверки на корректность результатов выполнения функций, чего у тебя нету, RMaxBJ - не даст поставить юниту 0 хп если что то пойдет не так, хил возможен только выше 1.00.
Так же зачем брать кд абилки каждый раз, это не шибко быстрая функция, лучше запиши её результат в переменную.
Фильтр удалять ненужно, он не утекает, 1 и тот же boolexpr можно использовать многократно для разных целей.
Так же отсеиваем клонов. DracoL1ch, у тебя же у самого была проблема с GetTriggerEventId() С возвращением.
Фильтр страннооватый, сначала берёшь всех потом проверяешь на уровень абилки, сначала проверь что живые, не клоны. А потом смотри уже абилку. И почему одни юзы Gettriggerunit(), Getunitabilitylevel, заноси вначале триггера все значения в переменные, функции могут возвращать не то значение если вызвать повторное срабатывание триггеров.
globals
unit bj_lastFilterUnit = null
group TEMP_GROUP = CreateGroup( )
real TEMP_REAL = 0.00
endglobals
function IsUnitDead takes unit u returns boolean
return IsUnitType( u, UNIT_TYPE_DEAD ) or GetUnitTypeId( u ) < 1
endfunction
function Cond_Find_Alive_Hero_Units takes nothing returns boolean
set bj_lastFilterUnit = GetFilterUnit( )
return IsUnitType( UNIT_TYPE_HERO bj_lastFilterUnit ) and not( IsUnitIllusion( bj_lastFilterUnit ) or IsUnitDead( bj_lastFilterUnit ) )
endfunction
function Group_Add_Effect_Enum takes nothing returns nothing
local unit hero = GetEnumUnit( )
local integer level = GetUnitAbilityLevel( hero, 'A27T' )
if level > 0 then
call DestroyEffect(AddSpecialEffectTarget("Psychopomp4.mdx", hero, "origin"))
call SetUnitState( hero, UNIT_STATE_LIFE, GetUnitState( UNIR_STATE_LIFE ) + RMaxBJ( TEMP_REAL * level, 1.01 ) )
endif
set hero = null
endfunction
function PerceptionEffect takes nothing returns nothing
local unit cast = GetSpellAbilityUnit( )
local integer id = GetSpellAbilityId( )
local integer level = GetUnitAbilityLevel( cast, id )
local real cooldown
if level > 1 and not IsUnitDead( cast ) then
set cooldown = GetAbilityCD( id, level, cast )
else
set cooldown = 0.00
endif
if cooldown >= 1.01 then
call GroupClear( TEMP_GROUP )
call GroupEnumUnitsInRect( TEMP_GROUP, bj_mapInitialPlayableArea, Condition( function Cond_Find_Alive_Hero_Units ) )
set TEMP_REAL = cooldown
call ForGroup( TEMP_GROUP, function Group_Add_Effect_Enum )
endif
set cast = null
endfunction
Попробуй вот так, на вид куда понятнее, да и покороче...
Бери другую основу или юзай импорт, у многих скиллов хардкодные данные, т.е он прописаны в коде и спел не берет из из слк таблицы, хоть ты что измени. Так у аватара нельзя изменить бафф в настройках, а только отредактировать дефолт.
Юзай ауру смерти ("Unholy aura") или еще что, но не ауры фонтанов и лечащего варда, там ничего низя изменить, да и бафф там висит случайные 2-4 сек.
Спелл магнуса из доты? Ну движение по векторам с малым периодом, довольно примитивый спелл. Таймером двигаем юнита к цели + следим что цель жива, так же ищем союзников в радиусе и добавляем их в группу, при каждом тике таймера двигаем кастера с юнитами в группе к цели.
ClotPh, ничего там не работает, уже 10 раз сказали, точка. Хер вы что сделайте с эмпатией, это хардкодный спелл который работает только так как задумали близзарды и никак иначе! Её нельзя использовать в качестве связки варлока из доты, хоть вы там за настраивайтесь!
» WarCraft 3 / локальный тип точки
» WarCraft 3 / Если не задан параметр функции
Функция может возвращать константное значение (частенько юзается в картах близзардов).
» WarCraft 3 / Кокон разрушает, но не выполняет функции
» WarCraft 3 / Кокон разрушает, но не выполняет функции
» WarCraft 3 / Создание текстового файла
DracoL1ch, а что если вызвать функцию из storm.dll CreateMPQ? Игра же как то создает карты в папке? Это мпк архивы, в storm.dll есть функции для работы с мпк, в game.dll их явно нету...
» WarCraft 3 / Карты, в которых есть триггеры на джассе не запускаются.
» WarCraft 3 / Как уменьшить хитбокс юнита?
» WarCraft 3 / Полноценный Антимапхак.
The examples of protection against cheaters laid out on hiveworkshop do not suit you?
» WarCraft 3 / Как сделать два типа юнита?
Идем читать статьи про РО.
Будет несомненно полезно ссылка
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
Ну пока с ли чем открыли новый флаг криттера = ), не знаю когда он будет свободен.
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
» WarCraft 3 / Как сделать два типа юнита?
» WarCraft 3 / Как сделать два типа юнита?
» WarCraft 3 / аналог перста смерти
» WarCraft 3 / аналог перста смерти
» WarCraft 3 / аналог перста смерти
» WarCraft 3 / Юниты игрока в области мертвы
Примитив же? Разве нет?
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
Так же зачем брать кд абилки каждый раз, это не шибко быстрая функция, лучше запиши её результат в переменную.
Фильтр удалять ненужно, он не утекает, 1 и тот же boolexpr можно использовать многократно для разных целей.
Так же отсеиваем клонов.
DracoL1ch, у тебя же у самого была проблема с GetTriggerEventId() С возвращением.
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
Ред. quq_CCCP
» WarCraft 3 / И снова о GetAbilityCD и многострадальной Психопомпе
» WarCraft 3 / Аура ХП-регена (лайфсорс)
Юзай ауру смерти ("Unholy aura") или еще что, но не ауры фонтанов и лечащего варда, там ничего низя изменить, да и бафф там висит случайные 2-4 сек.
» WarCraft 3 / Как сделать неепически сложный спелл?
» WarCraft 3 / Эмпатия для врагов
» WarCraft 3 / Эмпатия для врагов