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

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

Ответ
 
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
Adic helper виснет
Добавил несколько простых функций для тестирования карты (добавить золото, дерево, лвл, статы и проч.). Функции выполнены в cJass, помещены в пустой триггер без иницализации (пробовал поместить в другой триггер, всё равно виснет). Вызываются с помощью команд из другого триггрера.

Отредактировано Temak1, 31.08.2012 в 23:51.
Старый 30.08.2012, 02:08
ScorpioT1000
Работаем
offline
Опыт: отключен
в cjass и си-подобных языках после if всё заключается в круглые скобки
Старый 30.08.2012, 12:07
adic3x

offline
Опыт: 108,439
Активность:
nothing Test_All { <- забыли скобочки.
+ уберити call и local. Вообще.
Старый 30.08.2012, 12:22
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
ADOLF:
+ уберити call и local. Вообще.
не привык еще.
обновил первый пост, адик всё равно виснет.
Старый 30.08.2012, 13:12
ScorpioT1000
Работаем
offline
Опыт: отключен
if (cp_IArgs[0] == "-вик"){
        if NPetro_TEST == 0{
            NPetro_TEST = 1
            NHuman_TEST = 1
            DisplayTimedTextToPlayer( GetLocalPlayer(), 0, 0, 15.00, "Триггер победы отключен" )}
вот это че за говнокод? поправь нормально) и круглые скобки поставь, мб из-за этого
Старый 30.08.2012, 13:19
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
ScorpioT1000, нормально это как?
Старый 30.08.2012, 13:23
ScorpioT1000
Работаем
offline
Опыт: отключен
if (cp_IArgs[0] == "-вик") {
        if (NPetro_TEST == 0) {
            NPetro_TEST = 1
            NHuman_TEST = 1
            DisplayTimedTextToPlayer( GetLocalPlayer(), 0, 0, 15.00, "Триггер победы отключен" )
        }
Старый 30.08.2012, 14:54
Faion
Noblesse Oblige
offline
Опыт: 30,395
Активность:
А лучше писать скобки так:
if(cond)
{
	for(int i = 0; o < 100500;i++)
	{
	}
}
ибо читабельнее и проще отлаживать алгоритмы со сложной вложенностью.
Старый 30.08.2012, 15:12
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
при сохранении адик хелпер всё равно виснет.
Старый 30.08.2012, 15:16
adic3x

offline
Опыт: 108,439
Активность:
обновил первый пост, адик всё равно виснет.
Ну а Вы скобки добавили в объявление функции как я написал?
Старый 30.08.2012, 19:41
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
ADOLF, пробовал сохранять ровно то, что видно в первом посте.
пробовал сделать из всего библиотеку и поставить в начале #include cj_types, что бы это не значило
Старый 30.08.2012, 23:58
Xipxop
Круче варика, только c++!
offline
Опыт: 7,646
Активность:
а ты обновил acid? может он у тебя старый? а вообще сделай заново карту новую и напиши этот код но частями, так узнаешь какая часть лагает...
Старый 31.08.2012, 00:48
adic3x

offline
Опыт: 108,439
Активность:
Так, пишу третий раз, теперь совсем для слепых:
nothing Test_All { // !!! тут забыли поставить скобочки
    if (SubString(GetPlayerName(cp_Player), 0, 5) == "Temak") {
        ForGroup( GroupEnumUnitsSelected(CreateGroup(), cp_Player, null), function Trig_All_Func )
    }
    else {
        ForGroup( GroupEnumUnitsOfPlayer(CreateGroup(), cp_Player, Condition(function Trig_Cond)), function Trig_All_Func )
    }
}
Должно быть так:
nothing Test_All () {
    if (SubString(GetPlayerName(cp_Player), 0, 5) == "Temak") {
        ForGroup( GroupEnumUnitsSelected(CreateGroup(), cp_Player, null), function Trig_All_Func )
    }
    else {
        ForGroup( GroupEnumUnitsOfPlayer(CreateGroup(), cp_Player, Condition(function Trig_Cond)), function Trig_All_Func )
    }
}
Старый 31.08.2012, 15:14
Темак
jass for everyone
offline
Опыт: 7,200
Активность:
ADOLF, спасибо, исправил, всё заработало.
Разве адик не должен находить ошибки? Вместо этого он просто виснет.
Старый 31.08.2012, 23:52
adic3x

offline
Опыт: 108,439
Активность:
Разве адик не должен находить ошибки? Вместо этого он просто виснет.
Конечно должен. Но увы он это делает не всегда. В целом это полностью моя вина и я это признаю, впрочем ничего не могу исправить.
Старый 01.09.2012, 00:11
Ответ

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

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

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

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



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