Показать сообщение отдельно

Старый 09.10.2010, 07:44   #28
Троль
World GM
 
Аватар для Троль
 
Регистрация: 14.03.2009
Сообщения: 267
Троль  - великолепный выбор для заручения поддержкой
Вес репутации: 34
По умолчанию

Цитата:
Сообщение от animagus Посмотреть сообщение
Кто разбирается подскажите:
Если по теплейту создать просто моба, то скрипт для него работает как положенно. если же моб создается в качестве защитника игрока(речь идет про змей из ловушки)по томуже темплейту, скрипт отрубается. Где я что-то не так делаю?
не знаю что за темплейт(возможно ты про creature_template, таблицу в базе). В базе у каждого моба которого есть скрипт - вписан скрипт. Их два вида: EventAI и ScriptDev2. Первый через саму же базу, второй через С++ код. Если AI не вписан то скорее всего используется стандартный AI , то есть GuardianAI

UPD:
CreatureAI* selectAI(Creature *creature) в CreatureAISelector.cpp выбирает стандартные AI для петов и гвардов.
Код:
        if ((creature->isPet() && ((Pet*)creature)->isControlled() &&
            ((owner=creature->GetOwner()) && owner->GetTypeId()==TYPEID_PLAYER)) || creature->isCharmed())
            ai_factory = ai_registry.GetRegistryItem("PetAI");
        else if (creature->isTotem())
            ai_factory = ai_registry.GetRegistryItem("TotemAI");

        // select by script name
        if (!ai_factory && !ainame.empty())
            ai_factory = ai_registry.GetRegistryItem( ainame.c_str() );

        if (!ai_factory && creature->isGuard() )
            ai_factory = ai_registry.GetRegistryItem("GuardAI");
Покури код в том направлении. Кстати AI в Pet.cpp выбирается через AIM_Initalize() ктороая шлет в selectAI, то что вписано в базе для петов/гвардов/тотемов/минипетов там и не учитывается
__________________

Последний раз редактировалось Троль, 09.10.2010 в 08:26.
Троль вне форума   Ответить с цитированием