Тема: Crimson Hall.
Показать сообщение отдельно
Старый 10.04.2014, 22:37   #5
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию

SCRIPT_COMMAND_TERMINATE_CONDITION:
Код:
case SCRIPT_COMMAND_TERMINATE_COND:             // 34
            {
                if (!sConditionStorage.LookupEntry<PlayerCondition>(tmp.terminateCond.conditionId))
                {
                    sLog.outErrorDb("Table `%s` has datalong = %u in SCRIPT_COMMAND_TERMINATE_COND for script id %u, but this condition_id does not exist.", tablename, tmp.terminateCond.conditionId, tmp.id);
                    continue;
                }
                if (tmp.terminateCond.failQuest && !sObjectMgr.GetQuestTemplate(tmp.terminateCond.failQuest))
                {
                    sLog.outErrorDb("Table `%s` has datalong2 = %u in SCRIPT_COMMAND_TERMINATE_COND for script id %u, but this questId does not exist.", tablename, tmp.terminateCond.failQuest, tmp.id);
                    continue;
                }
                break;
            }
Раз имеют continue(переводя по простому значит продолжать)
То я думаю, что может работать не только для квестов.
Что самое интересное, TERMINATE_SCRIPT и TERMINATE_CONDITION могут работать вместе(хотя Xfurry собирает добавить новую кондицию)
http://ytdb.ru/showthread.php?t=14148
Я внимательно просмотрел работу NeatElves и могу смело утверждать, что квест необязателен для использования этой команды.
Можно добавить несколько кондиций сразу для прерывания скрипта и если хотя бы одно из них(условий) не выполняется, то будет прерывать скрипт.

Осталось только добавить возможность для свободного взаимодействия EAI и db_script и дело в шляпе!

Последний раз редактировалось NeatElves; 10.04.2014 в 22:41.
Ulduar вне форума   Ответить с цитированием