PDA

Просмотр полной версии : [10299] Add new script call ProcessEventId


newsbot
31.07.2010, 19:00
<pre>m sql/mangos.sql
+ sql/updates/10299_01_mangos_event_id_scripts.sql
m sql/updates/Makefile.am
m src/bindings/universal/ScriptMgr.cpp
m src/bindings/universal/ScriptMgr.h
m src/game/GameObject.cpp
m src/game/ObjectMgr.cpp
m src/game/ObjectMgr.h
m src/game/ScriptCalls.cpp
m src/game/ScriptCalls.h
m src/game/SpellEffects.cpp
m src/game/Transports.cpp
m src/game/WaypointMovementGenerator.cpp
m src/game/World.cpp
m src/shared/revision_nr.h
m src/shared/revision_sql.h

[10299] Add new script call ProcessEventId

Let script library know when some event is about to start. Event id's may be
found in several sources, such as spells, GO's and transport/taxi paths.
Database scripts may be prevented by returning true from script side whenever
needed. If false, DB script will run like normal.
New database table event_id_scripts will need a ScriptName for the event id, in
same way as for example areatrigger_scripts.

Signed-off-by: NoFantasy <nofantasy@nf.no></pre>



Дальше... (http://github.com/mangos/mangos/commit/b0ec7e16b0900710f756b26e6f61d43036345ff4)

KiriX
01.08.2010, 20:41
Не компилиЦЦо =)
2>..\..\src\game\ObjectMgr.cpp(5333) : error C2039: LoadEventIdScripts: не является членом "ObjectMgr"
2> e:\test\mang-10306\src\game\ObjectMgr.h(472): см. объявление 'ObjectMgr'
2>..\..\src\game\ObjectMgr.cpp(5335) : error C2065: mEventIdScripts: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(5335) : error C2228: выражение слева от ".clear" должно представлять класс, структуру или объединение
2> тип: 'unknown-type'
2>..\..\src\game\ObjectMgr.cpp(5408) : error C2065: mEventIdScripts: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7811) : error C2039: GetEventIdScriptId: не является членом "ObjectMgr"
2> e:\test\mang-10306\src\game\ObjectMgr.h(472): см. объявление 'ObjectMgr'
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2653: EventIdScriptMap: не является именем класса или пространства имен
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2065: const_iterator: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "i"
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2065: i: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2065: mEventIdScripts: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7813) : error C2228: выражение слева от ".find" должно представлять класс, структуру или объединение
2> тип: 'unknown-type'
2>..\..\src\game\ObjectMgr.cpp(7814) : error C2065: i: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7814) : error C2065: mEventIdScripts: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7814) : error C2228: выражение слева от ".end" должно представлять класс, структуру или объединение
2> тип: 'unknown-type'
2>..\..\src\game\ObjectMgr.cpp(7815) : error C2065: i: необъявленный идентификатор
2>..\..\src\game\ObjectMgr.cpp(7815) : error C2227: выражение слева от "->second" должно указывать на тип класса, структуры или объединения либо на универсальный тип
2> тип: 'unknown-type'
2>..\..\src\game\ObjectMgr.cpp(9086) : error C2084: функция "uint32 GetEventIdScriptId(uint32)" уже имеет текст реализации
2> ..\..\src\game\ObjectMgr.cpp(7811): см. предыдущее определение 'GetEventIdScriptId'
2>..\..\src\game\ObjectMgr.cpp(9087) : error C2039: GetEventIdScriptId: не является членом "ObjectMgr"
2> e:\test\mang-10306\src\game\ObjectMgr.h(472): см. объявление 'ObjectMgr'
2>GameObject.cpp
2>Creature.cpp
2>..\..\src\game\Creature.cpp(2070) : warning C4305: return: усечение из 'double' к 'float'
2>WaypointMovementGenerator.cpp
2>World.cpp
2>Transports.cpp
2>..\..\src\game\World.cpp(1155) : error C2039: LoadEventIdScripts: не является членом "ObjectMgr"
2> e:\test\mang-10306\src\game\ObjectMgr.h(472): см. объявление 'ObjectMgr'

zergtmn
01.08.2010, 21:10
У разрушаемых гейм объектов 5 типов событий: Intact (невредимый), Damaged, Destroyed, Damage и Rebuilding.
Как предлагается работать например со стенами на озере ледяных оков, если там каждая стена - отдельный гейм-объект со своим entry и номера событий разные, а обработка каждого типа событий одна. Заводить массив 5*количество гейм-объектов что-то не хочется...

Vladimir
01.08.2010, 21:42
Не компилиЦЦо =)
У вас явно ObjectMgr.h не обновился почему-то.

KiriX
01.08.2010, 21:49
У вас явно ObjectMgr.h не обновился почему-то.
Да, извиняюсь - вижу, что мой косяк...