/////////////////////////////////////////////////////////// // MobSurgeon // // Редактор mob-ов для Проклятых Земель // // Copyright (C) 2005-2007 Gipat Group // // Распространяется на условиях // // Gipat Group's opened EI-editor-utility license // // версии 1.0 // // // // www.gipatgroup.org // /////////////////////////////////////////////////////////// //К работе над данным файлом приложили руки, ноги.... короче аффтары: // 1) Sagrer (sagrer@yandex.ru) //////////////////////////////////////////////////////////////////////// //--------------------------------------------------------------------------- #ifndef MobTrapObjH #define MobTrapObjH //--------------------------------------------------------------------------- #include "MobObjectObj.h" //Константы... //Сигнатуры в блоке ловушки... //Заодно и формат виден в принципе :) const DWORD Trap_Sgn_UnknDw1 = 3148546049; //(01 00 AB BB) //Неизвестный DW (12) (DWORD) const DWORD Trap_Sgn_MagicStr = 3148546050; //(02 00 AB BB) //Чем бить будем - магия в ловушке (8+STR) (String) const DWORD Trap_Sgn_UnknDw2 = 3148546053; //(05 00 AB BB) //Неизвестный DW (12) (DWORD) const DWORD Trap_Sgn_UnknByte1 = 3148611589; //(05 00 AC BB) //Неизвестный byte (9) (byte) const DWORD Trap_Sgn_TrapPoints1 = 3148546051; //(03 00 AB BB) //Массив точек 1 (12+X*3) (X DWORD x 3) const DWORD Trap_Sgn_TrapPoints2 = 3148546052; //(04 00 AB BB) //Массив точек 2 (12+X*2) (X DWORD x 2) //{а тут по формату запихан обжектовый стандартный блок} //Предварительные объявления классов... class TMob; struct STrapPoint1 { DWORD CoordX; DWORD CoordY; DWORD Range; }; struct STrapPoint2 { DWORD CoordX; DWORD CoordY; }; //Реальные объявления классов... class TTrapObjBlock : public TObjectObjBlock //Класс юнита в блоке объектов. { public: DWORD UnknDw1; //Неизвестный DW String MagicStr; //Чем бить будем - магия в ловушке DWORD UnknDw2; //Неизвестный DW byte UnknByte1; //Неизвестный byte DynamicArray *TrapPoints1; //Массив точек 1 DynamicArray *TrapPoints2; //Массив точек 2 //{а тут по формату запихан обжектовый стандартный блок} //Типа функции... DWORD GetBlockSize(); //Считает сколько будет весить блок в виде байтов. byte* GenBlock(DWORD& BlockSize); //Генерирует блок... bool ReadBlock(byte *Buff, DWORD BuffSize, bool UseLog, TMob *PMobObj); //Читает инфу о юните в структуру. }; typedef TTrapObjBlock* PTrapObjBlock; //Типо указява %). #endif