функция FlushChildHashtable_HSD должна принимать лишь 1 параметр (инт)
либо можно так
define FlushChildHashtable(a, b) = {
if(`a` == "SYSTEM_HASHTABLE"){
FlushChildHashtable_HSD(b)
}else{
FlushChild##Hashtable(a, b)
}
}
в результате второго варианта FlushChildHashtable(hash, 5) будет заменено на
if ( "hash" == "SYSTEM_HASHTABLE" ) then
call FlushChildHashtable_HSD(5)
else
call FlushChildHashtable(hash, 5)
endif
первый вариант предпочтительнее если подобных переменных немного
второй если необходимо передавать в функцию FlushChildHashtable_HSD не только инт но и сам хэштейбл
если же тебе нужно проверять не по названию а по значению то используй 2 вариант
только вместо строк сравнивай сами переменные
Skolz, ок
ответ - в структурах не должно быть глобальных переменных
они там нафиг не нужны
это исходит из самого понятия ооп
вопрос закрыт
и советую ещё прочесть правила сайта
в том числе 10 раздел
в структуре глобальные переменные?
ты хоть знаешь что такое структура и как их использовать?
если используешь структуру то нафига тебе глобальные переменные и параллельные массивы
короче читай статьи про структуры
что это такое, зачем они нужны и как их использовать
по поводу тумана войны могут возникнуть проблемы
т.к. придётся постоянно проверять видимость юнитов Fakov, успокойся Fackov)
так же напиши что по поводу подключаемых библиотек
так как таже cj_types.j может вызывать конфликты
Maniac_91, и толку от копирования?
речь о повторном использовании
например если я сделал функцию которая даёт герою зелёный урон то могу просто написать heroAddDamage(myHero, 150)
а если тупо скопирую гуи то придётся менять все параметры в этих окошках
имхо на jass намного быстрее чтото сделать чем на гуи долбить окошки
+ то что сделал можно будет использовать повторно в других местах
гуи подобного не позволяет из за отсутствия подпрограмм
некоторые пытались использовать для этого триггеры но получилось очень громоздко и с кучей багов
DemonoiD, если 2 участника хранят данные в юзердате юнитов то произойдёт конфликт и работы обоих участников будут работать неправильно
вообще по твоему комментарию складывается впечатление что ты не знаешь что такое юзердата
конкурс в котором всё на рандоме и 1 участнику может тупо повезти сложно назвать объективным
но если ты уверен что всё учёл то я готов создать карту напичканную эксплоитами и ломающая чужие работы
только учти что после старта конкурса ты не сможешь отказаться от моей работы
причём не нужно ничего специально ломать
просто небольшого конфликта будет достаточно чтобы всё пошло к чертям
условия и константы не полностью описаны
непонятно какие способности допустимы кроме пустышек
и в каком случае их можно давать
могу ли я дать изначально всем своим тп по всей карте и скил убивающий врага 1 ударом?
могу ли я дать юнитам хил и забить нафиг на голод просто заставляя их хилить друг друга?
так же не понятно где именно генерируются цветы
подобные вещи требуют чётко расписанных правил охватывающих все аспекты, включая:
начальное состояние
доступные операции
влияние среды
у тебя же просто описана твоя задумка
составь подробный список
и рано выставлять конечную дату
ещё хз сколько времени ты будешь дорабатывать правила конкурса
также начальное состояние и влияние среды должны быть общими для всех
т.е. не должно быть никаких "цветок и юнит появляются в случайном месте" или "с вероятностью в 10% ваш юнит умрёт"
т.к. это может привести к ситуации когда 1 игроку тупо повезло
все параметры должны быть чётко расписаны
правила russian ai cup занимают 50 страниц
и это на движке разработанным специально для конкурса
тебе же нужно ещё учесть различные технические особенности движка вар3 (конфликты систем вызванные использованием юзердаты, лимит потока, баги и фишки игры)
наиболее правильным решением будет запретить все стандартные функции и вместо них создать свои функции которые доступны для использования участникам конкурса
иначе не удивляйся если при запуске карты возникнет конфликт систем различных участников и игра вылетит с фаталом
UrsaBoss, только что оформил ресурс с системой которая немного поможет в оптимизации
только на этих 2 активных способностях правда будет не особо видно но если в карте более 100 активных способностей то результат заметен невооружённым глазом
UrsaBoss, переделывай
хотя как по мне проще будет написать с 0
и я бы триггеры заменил на таймеры
и раз юзаешь cjass то юзай его полностью
а то гдето есть, гдето нету
если ктото захочет дать эти абилки многим юнитам то будет ппц
думаю даже при 100 юнитах будут лаги
размеры, категория, ландшафт и прочие указываются в параметрах карты
не надо дублировать их в описание
название карты так же не стоит дублировать в описание
» Warcraft III: Majesty / Warcraft III: Majesty
внизу слева блок приглашение
Ред. nvc123
» Fa_losophy / Результаты мапперской дуэли
» WarCraft 3 / Boss Battle
Ред. nvc123
» Вселенная моими кривыми руками / Конкурс имени Demonoid'a v2
да и вообще с подключаемыми библиотеками и дефайнами
Ред. nvc123
» WarCraft 3 / Нюанс в cJass
либо можно так
второй если необходимо передавать в функцию FlushChildHashtable_HSD не только инт но и сам хэштейбл
если же тебе нужно проверять не по названию а по значению то используй 2 вариант
только вместо строк сравнивай сами переменные
» WarCraft 3 / Проклятие
но по правилам публикуются только готовые работы
Ред. nvc123
» WarCraft 3 / Вопрос по Jass
ответ - в структурах не должно быть глобальных переменных
они там нафиг не нужны
это исходит из самого понятия ооп
вопрос закрыт
и советую ещё прочесть правила сайта
в том числе 10 раздел
» WarCraft 3 / Кампания героев
Ред. nvc123
» WarCraft 3 / Вопрос по Jass
ты хоть знаешь что такое структура и как их использовать?
если используешь структуру то нафига тебе глобальные переменные и параллельные массивы
короче читай статьи про структуры
что это такое, зачем они нужны и как их использовать
https://www.xgm.guru/files/705/97998/comments/178733/vJass.doc
» WarCraft 3 / Как назывется тип карты где играешь только героем?
» WarCraft 3 / Охотники за сокровищами
» Вселенная моими кривыми руками / Конкурс имени Demonoid'a v2
Ред. nvc123
» Вселенная моими кривыми руками / Конкурс имени Demonoid'a v2
т.к. придётся постоянно проверять видимость юнитов
Fakov, успокойся Fackov)
так же напиши что по поводу подключаемых библиотек
так как таже cj_types.j может вызывать конфликты
» Блог sleep`a / GUI или jass?
речь о повторном использовании
например если я сделал функцию которая даёт герою зелёный урон то могу просто написать heroAddDamage(myHero, 150)
а если тупо скопирую гуи то придётся менять все параметры в этих окошках
» Блог sleep`a / GUI или jass?
+ то что сделал можно будет использовать повторно в других местах
гуи подобного не позволяет из за отсутствия подпрограмм
некоторые пытались использовать для этого триггеры но получилось очень громоздко и с кучей багов
» WarCraft 3 / Еда
ссылки на яндекс диск нафиг не нужны тут
Ред. nvc123
» Вселенная моими кривыми руками / Конкурс имени Demonoid'a
вообще по твоему комментарию складывается впечатление что ты не знаешь что такое юзердата
конкурс в котором всё на рандоме и 1 участнику может тупо повезти сложно назвать объективным
но если ты уверен что всё учёл то я готов создать карту напичканную эксплоитами и ломающая чужие работы
только учти что после старта конкурса ты не сможешь отказаться от моей работы
причём не нужно ничего специально ломать
просто небольшого конфликта будет достаточно чтобы всё пошло к чертям
Ред. nvc123
» Вселенная моими кривыми руками / Конкурс имени Demonoid'a
непонятно какие способности допустимы кроме пустышек
и в каком случае их можно давать
могу ли я дать изначально всем своим тп по всей карте и скил убивающий врага 1 ударом?
могу ли я дать юнитам хил и забить нафиг на голод просто заставляя их хилить друг друга?
так же не понятно где именно генерируются цветы
подобные вещи требуют чётко расписанных правил охватывающих все аспекты, включая:
составь подробный список
и рано выставлять конечную дату
ещё хз сколько времени ты будешь дорабатывать правила конкурса
т.е. не должно быть никаких "цветок и юнит появляются в случайном месте" или "с вероятностью в 10% ваш юнит умрёт"
т.к. это может привести к ситуации когда 1 игроку тупо повезло
все параметры должны быть чётко расписаны
и это на движке разработанным специально для конкурса
тебе же нужно ещё учесть различные технические особенности движка вар3 (конфликты систем вызванные использованием юзердаты, лимит потока, баги и фишки игры)
наиболее правильным решением будет запретить все стандартные функции и вместо них создать свои функции которые доступны для использования участникам конкурса
иначе не удивляйся если при запуске карты возникнет конфликт систем различных участников и игра вылетит с фаталом
» Fa_losophy / Мапперская дуэль имени меня
Ред. nvc123
» WarCraft 3 / Spell Cast
» WarCraft 3 / Spirit Breaker из DotA со всеми способностями
только на этих 2 активных способностях правда будет не особо видно но если в карте более 100 активных способностей то результат заметен невооружённым глазом
» WarCraft 3 / Spirit Breaker из DotA со всеми способностями
хотя как по мне проще будет написать с 0
и я бы триггеры заменил на таймеры
и раз юзаешь cjass то юзай его полностью
а то гдето есть, гдето нету
если ктото захочет дать эти абилки многим юнитам то будет ппц
думаю даже при 100 юнитах будут лаги
» WarCraft 3 / Destiny Islands
не надо дублировать их в описание
название карты так же не стоит дублировать в описание
» WarCraft 3 / RemoveUnit или KillUnit?