| 1 |
/////////////////////////////////////////////////////////// |
|---|
| 2 |
// MobSurgeon // |
|---|
| 3 |
// Ðåäàêòîð mob-îâ äëÿ Ïðîêëÿòûõ Çåìåëü // |
|---|
| 4 |
// Copyright (C) 2005-2007 Gipat Group // |
|---|
| 5 |
// Ðàñïðîñòðàíÿåòñÿ íà óñëîâèÿõ // |
|---|
| 6 |
// Gipat Group's opened EI-editor-utility license // |
|---|
| 7 |
// âåðñèè 1.0 // |
|---|
| 8 |
// // |
|---|
| 9 |
// www.gipatgroup.org // |
|---|
| 10 |
/////////////////////////////////////////////////////////// |
|---|
| 11 |
|
|---|
| 12 |
//Ê ðàáîòå íàä äàííûì ôàéëîì ïðèëîæèëè ðóêè, íîãè.... êîðî÷å àôôòàðû: |
|---|
| 13 |
// 1) Sagrer (sagrer@yandex.ru) |
|---|
| 14 |
|
|---|
| 15 |
//////////////////////////////////////////////////////////////////////// |
|---|
| 16 |
|
|---|
| 17 |
//--------------------------------------------------------------------------- |
|---|
| 18 |
|
|---|
| 19 |
#ifndef initerH |
|---|
| 20 |
#define initerH |
|---|
| 21 |
|
|---|
| 22 |
#include "VersionInfo.hpp" |
|---|
| 23 |
#include "MobFormat.h" |
|---|
| 24 |
#include <IniFiles.hpp> |
|---|
| 25 |
#include "VerInfoTxtFormat.hpp" |
|---|
| 26 |
#include "MobSurgeon_ver.h" |
|---|
| 27 |
|
|---|
| 28 |
//--------------------------------------------------------------------------- |
|---|
| 29 |
|
|---|
| 30 |
//Êîíñòàíòû. |
|---|
| 31 |
const String IniFileName = "MobSurgeon.ini"; |
|---|
| 32 |
const Integer IniFileVer = 6; |
|---|
| 33 |
|
|---|
| 34 |
//Êîíñòàíòû - èíôà î ïðîãå. |
|---|
| 35 |
const String MobSurgeon_AppName = "MobSurgeon"; |
|---|
| 36 |
const String MobSurgeon_AppDescription = "Ïðîãðàììà äëÿ âûïîëíåíèÿ ðàçëè÷íûõ õèòðûõ îïåðàöèé íàä ìîáàìè"; |
|---|
| 37 |
const String MobSurgeon_Copyright = "Copyright © 2005-2007 Gipat Group"; |
|---|
| 38 |
const String MobSurgeon_CraftedBy = "Sagrer, Ñíàéïåð"; |
|---|
| 39 |
const String MobSurgeon_DevelsContacts = "www.GipatGroup.org"; |
|---|
| 40 |
|
|---|
| 41 |
//Êîíñòàíòû-ñòàíäàðòíûå íàñòðîéêè. |
|---|
| 42 |
//[Main] |
|---|
| 43 |
const bool StandUseTMobThreads = false; //Èñïîëüçîâàòü ëè íèòêè ïðè ðàáîòå ñ TMob; |
|---|
| 44 |
const Integer StandSaveAttempts = 10; //Êîëè÷åñòâî ïîâòîðíûõ ïîïûòîê ïîñëå íåóäà÷íîãî ñàâà. |
|---|
| 45 |
const bool StandMakeAutoBackups = true; //Äåëàòü àâòîìàòè÷åñêèå áåêàïû... |
|---|
| 46 |
const String StandSearchStr = ""; //Óìîë÷àëüíàÿ ñòðîêà äëÿ ïîèñêà... |
|---|
| 47 |
const String StandRepStr = ""; //Óìîë÷àëüíàÿ ñòðîêà äëÿ çàìåíû... |
|---|
| 48 |
const bool StandMakeReplace = false; //Äåëàòü ëè çàìåíó ïðè ïîèñêå\çàìåíå ïî óìîë÷àíèþ. |
|---|
| 49 |
//[MassChangeOpts] |
|---|
| 50 |
const bool Stand_MC_KR_Param_Name1CB_ini = false; |
|---|
| 51 |
const bool Stand_MC_KR_Param_Name2CB_ini = false; |
|---|
| 52 |
const bool Stand_MC_KR_Param_ScriptVariableNameCB_ini = false; |
|---|
| 53 |
const bool Stand_MC_KR_Param_Model3dCB_ini = false; |
|---|
| 54 |
const bool Stand_MC_KR_Param_FirstTextureCB_ini = false; |
|---|
| 55 |
const bool Stand_MC_KR_Param_SecondTextureCB_ini = false; |
|---|
| 56 |
const bool Stand_MC_KR_Param_PlayerNumberCB_ini = false; |
|---|
| 57 |
const bool Stand_MC_KR_Coords_PramouglCB_ini = false; |
|---|
| 58 |
const bool Stand_MC_KR_Coords_KrugCB_ini = false; |
|---|
| 59 |
const bool Stand_MC_KR_Type_UnitCB_ini = false; |
|---|
| 60 |
const bool Stand_MC_KR_Type_ObjectCB_ini = false; |
|---|
| 61 |
const bool Stand_MC_KR_Type_LeverCB_ini = false; |
|---|
| 62 |
const bool Stand_MC_KR_Type_TrapCB_ini = false; |
|---|
| 63 |
const bool Stand_MC_KR_Type_FlameCB_ini = false; |
|---|
| 64 |
const bool Stand_MC_KR_Type_Particle1CB_ini = false; |
|---|
| 65 |
const bool Stand_MC_KR_Type_Particle2CB_ini = false; |
|---|
| 66 |
const bool Stand_MC_KR_Type_Particle3CB_ini = false; |
|---|
| 67 |
const bool Stand_MC_AS_Obj_DelRB_ini = false; |
|---|
| 68 |
const bool Stand_MC_AS_Obj_CopyRB_ini = false; |
|---|
| 69 |
const bool Stand_MC_AS_Obj_MoveRB_ini = false; |
|---|
| 70 |
const bool Stand_MC_AS_Obj_ReplaceCB_ini = true; |
|---|
| 71 |
const bool Stand_MC_AS_Params_Name1CB_ini = false; |
|---|
| 72 |
const bool Stand_MC_AS_Params_Name2CB_ini = false; |
|---|
| 73 |
const bool Stand_MC_AS_Params_ScriptVariableNameCB_ini = false; |
|---|
| 74 |
const bool Stand_MC_AS_Params_Model3dCB_ini = false; |
|---|
| 75 |
const bool Stand_MC_AS_Params_FirstTextureCB_ini = false; |
|---|
| 76 |
const bool Stand_MC_AS_Params_SecondTextureCB_ini = false; |
|---|
| 77 |
const bool Stand_MC_AS_Params_OffsetCB_ini = false; |
|---|
| 78 |
const bool Stand_MC_AS_Params_PlayerNumberCB_ini = false; |
|---|
| 79 |
const bool Stand_MC_AS_Obj_OnlyParamsRB_ini = true; |
|---|
| 80 |
const String Stand_MC_KR_Param_Name1Ed_ini = ""; |
|---|
| 81 |
const String Stand_MC_KR_Param_Name2Ed_ini = ""; |
|---|
| 82 |
const String Stand_MC_KR_Param_ScriptVariableNameEd_ini = ""; |
|---|
| 83 |
const String Stand_MC_KR_Param_Model3dEd_ini = ""; |
|---|
| 84 |
const String Stand_MC_KR_Param_FirstTextureEd_ini = ""; |
|---|
| 85 |
const String Stand_MC_KR_Param_SecondTextureEd_ini = ""; |
|---|
| 86 |
const String Stand_MC_KR_Param_PlayerNumberEd_ini = ""; |
|---|
| 87 |
const String Stand_MC_KR_Coords_Pramougl_X1Ed_ini = ""; |
|---|
| 88 |
const String Stand_MC_KR_Coords_Pramougl_Y1Ed_ini = ""; |
|---|
| 89 |
const String Stand_MC_KR_Coords_Pramougl_X2Ed_ini = ""; |
|---|
| 90 |
const String Stand_MC_KR_Coords_Pramougl_Y2Ed_ini = ""; |
|---|
| 91 |
const String Stand_MC_KR_Coords_Krug_XEd_ini = ""; |
|---|
| 92 |
const String Stand_MC_KR_Coords_Krug_YEd_ini = ""; |
|---|
| 93 |
const String Stand_MC_KR_Coords_Krug_RadEd_ini = ""; |
|---|
| 94 |
const String Stand_MC_AS_Obj_TargetMobEd_ini = ""; |
|---|
| 95 |
const String Stand_MC_AS_Params_Name1Ed_ini = ""; |
|---|
| 96 |
const String Stand_MC_AS_Params_Name2Ed_ini = ""; |
|---|
| 97 |
const String Stand_MC_AS_Params_ScriptVariableNameEd_ini = ""; |
|---|
| 98 |
const String Stand_MC_AS_Params_Model3dEd_ini = ""; |
|---|
| 99 |
const String Stand_MC_AS_Params_FirstTextureEd_ini = ""; |
|---|
| 100 |
const String Stand_MC_AS_Params_SecondTextureEd_ini = ""; |
|---|
| 101 |
const String Stand_MC_AS_Params_OffsetXEd_ini = ""; |
|---|
| 102 |
const String Stand_MC_AS_Params_OffsetYEd_ini = ""; |
|---|
| 103 |
const String Stand_MC_AS_Params_PlayerNumberEd_ini = ""; |
|---|
| 104 |
|
|---|
| 105 |
//Ïåðåìåííûå-íàñòðîéêè, êîòîðûå áóäóò ñàâèòüñÿ â ini |
|---|
| 106 |
//[Main] |
|---|
| 107 |
extern bool UseTMobThreads; //Èñïîëüçîâàòü ëè íèòêè ïðè ðàáîòå ñ TMob; |
|---|
| 108 |
extern Integer SaveAttempts; //Êîëè÷åñòâî ïîâòîðíûõ ïîïûòîê ïîñëå íåóäà÷íîãî ñàâà. |
|---|
| 109 |
extern String WorkPath; //Ðàáî÷èé ïóòü. |
|---|
| 110 |
extern bool MakeAutoBackups; //Äåëàòü àâòîìàòè÷åñêèå áåêàïû... |
|---|
| 111 |
extern String SearchStr; //Ñòðîêà äëÿ ïîèñêà... |
|---|
| 112 |
extern String RepStr; //Ñòðîêà äëÿ çàìåíû... |
|---|
| 113 |
extern bool MakeReplace; //Äåëàòü ëè çàìåíó ïðè ïîèñêå\çàìåíå. |
|---|
| 114 |
//[MassChangeOpts] |
|---|
| 115 |
extern bool MC_KR_Param_Name1CB_ini; |
|---|
| 116 |
extern bool MC_KR_Param_Name2CB_ini; |
|---|
| 117 |
extern bool MC_KR_Param_ScriptVariableNameCB_ini; |
|---|
| 118 |
extern bool MC_KR_Param_Model3dCB_ini; |
|---|
| 119 |
extern bool MC_KR_Param_FirstTextureCB_ini; |
|---|
| 120 |
extern bool MC_KR_Param_SecondTextureCB_ini; |
|---|
| 121 |
extern bool MC_KR_Param_PlayerNumberCB_ini; |
|---|
| 122 |
extern bool MC_KR_Coords_PramouglCB_ini; |
|---|
| 123 |
extern bool MC_KR_Coords_KrugCB_ini; |
|---|
| 124 |
extern bool MC_KR_Type_UnitCB_ini; |
|---|
| 125 |
extern bool MC_KR_Type_ObjectCB_ini; |
|---|
| 126 |
extern bool MC_KR_Type_LeverCB_ini; |
|---|
| 127 |
extern bool MC_KR_Type_TrapCB_ini; |
|---|
| 128 |
extern bool MC_KR_Type_FlameCB_ini; |
|---|
| 129 |
extern bool MC_KR_Type_Particle1CB_ini; |
|---|
| 130 |
extern bool MC_KR_Type_Particle2CB_ini; |
|---|
| 131 |
extern bool MC_KR_Type_Particle3CB_ini; |
|---|
| 132 |
extern bool MC_AS_Obj_DelRB_ini; |
|---|
| 133 |
extern bool MC_AS_Obj_CopyRB_ini; |
|---|
| 134 |
extern bool MC_AS_Obj_MoveRB_ini; |
|---|
| 135 |
extern bool MC_AS_Obj_ReplaceCB_ini; |
|---|
| 136 |
extern bool MC_AS_Params_Name1CB_ini; |
|---|
| 137 |
extern bool MC_AS_Params_Name2CB_ini; |
|---|
| 138 |
extern bool MC_AS_Params_ScriptVariableNameCB_ini; |
|---|
| 139 |
extern bool MC_AS_Params_Model3dCB_ini; |
|---|
| 140 |
extern bool MC_AS_Params_FirstTextureCB_ini; |
|---|
| 141 |
extern bool MC_AS_Params_SecondTextureCB_ini; |
|---|
| 142 |
extern bool MC_AS_Params_OffsetCB_ini; |
|---|
| 143 |
extern bool MC_AS_Params_PlayerNumberCB_ini; |
|---|
| 144 |
extern bool MC_AS_Obj_OnlyParamsRB_ini; |
|---|
| 145 |
extern String MC_KR_Param_Name1Ed_ini; |
|---|
| 146 |
extern String MC_KR_Param_Name2Ed_ini; |
|---|
| 147 |
extern String MC_KR_Param_ScriptVariableNameEd_ini; |
|---|
| 148 |
extern String MC_KR_Param_Model3dEd_ini; |
|---|
| 149 |
extern String MC_KR_Param_FirstTextureEd_ini; |
|---|
| 150 |
extern String MC_KR_Param_SecondTextureEd_ini; |
|---|
| 151 |
extern String MC_KR_Param_PlayerNumberEd_ini; |
|---|
| 152 |
extern String MC_KR_Coords_Pramougl_X1Ed_ini; |
|---|
| 153 |
extern String MC_KR_Coords_Pramougl_Y1Ed_ini; |
|---|
| 154 |
extern String MC_KR_Coords_Pramougl_X2Ed_ini; |
|---|
| 155 |
extern String MC_KR_Coords_Pramougl_Y2Ed_ini; |
|---|
| 156 |
extern String MC_KR_Coords_Krug_XEd_ini; |
|---|
| 157 |
extern String MC_KR_Coords_Krug_YEd_ini; |
|---|
| 158 |
extern String MC_KR_Coords_Krug_RadEd_ini; |
|---|
| 159 |
extern String MC_AS_Obj_TargetMobEd_ini; |
|---|
| 160 |
extern String MC_AS_Params_Name1Ed_ini; |
|---|
| 161 |
extern String MC_AS_Params_Name2Ed_ini; |
|---|
| 162 |
extern String MC_AS_Params_ScriptVariableNameEd_ini; |
|---|
| 163 |
extern String MC_AS_Params_Model3dEd_ini; |
|---|
| 164 |
extern String MC_AS_Params_FirstTextureEd_ini; |
|---|
| 165 |
extern String MC_AS_Params_SecondTextureEd_ini; |
|---|
| 166 |
extern String MC_AS_Params_OffsetXEd_ini; |
|---|
| 167 |
extern String MC_AS_Params_OffsetYEd_ini; |
|---|
| 168 |
extern String MC_AS_Params_PlayerNumberEd_ini; |
|---|
| 169 |
|
|---|
| 170 |
//Òèïà îáúÿâèòü ãëîáàëüíûå ïåðåìåííûå... |
|---|
| 171 |
extern TVerInfoTxtFormat *VitInfo; |
|---|
| 172 |
extern String ProgPath, MobFileName; |
|---|
| 173 |
extern TMob *MobInMem1, *TargetMob; |
|---|
| 174 |
extern bool MobLoaded, SearchDialCanceled, MakeSLBlockInterf, MobModified; |
|---|
| 175 |
extern TIniFile *MainIni; |
|---|
| 176 |
|
|---|
| 177 |
//Êîíåö ïåðåìåííûõ-íàñòðîåê. |
|---|
| 178 |
|
|---|
| 179 |
//Ãëîáàëüíûå ôóíêöèè. |
|---|
| 180 |
void AppInit(); //Ñðàáàòûâàåò äî RUN |
|---|
| 181 |
void AppDeInit(); //Ñðàáàòûâàåò ïîñëå RUN |
|---|
| 182 |
bool OpenMobComm(const AnsiString FileName); //Ýòà ôóíêöèÿ âûçûâàåòñÿ ïðè îòêðûòèè ìîáà. |
|---|
| 183 |
bool SaveMobComm(); //Ýòà ôóíêöèÿ âûçûâàåòñÿ ïðè ñåéâå ìîáà. |
|---|
| 184 |
bool SaveAsMobComm(); //Ýòà ôóíêöèÿ âûçûâàåòñÿ ïðè ïîïûòêå ñîõðàíèòü ìîá ïîä äðóãèì èìåíåì. |
|---|
| 185 |
bool CloseMobComm(); //Ýòà ôóíêöèÿ âûçûâàåòñÿ ïðè çàêðûòèè ìîáà. |
|---|
| 186 |
void SaveInterfInfo(); //Ýòà ôóíêöèÿ ñîõðàíÿåò èíôó èç èíòåðôåéñà â êëàññ ìîáà... |
|---|
| 187 |
void SetStandProgSetts(); //Ýòà ôóíêöèÿ ãåíåðèò ñòàíäàðòíûé íàáîð íàñòðîåê ïðîãè. |
|---|
| 188 |
void LoadProgSetts(); //Ýòà ôóíêöèÿ ãðóçèò íàñòðîéêè èç èíèøíèêà. |
|---|
| 189 |
void SaveProgSetts(); //Ýòà ôóíêöèÿ ñàâèò íàñòðîéêè â èíèøíèê. |
|---|
| 190 |
AnsiString ExtractFileNameNoExt(const AnsiString FileName); //Ïîëó÷àåò èìÿ ôàéëà áåç ðàñøèðåíèÿ. |
|---|
| 191 |
void MakeUserBackup(const AnsiString FileName); //Äåëàåò ñîçíàòåëüíûé áåêàï. |
|---|
| 192 |
void MakeAutoBackup(const AnsiString FileName); //Äåëàåò àâòîìàòè÷åñêèé áåêàï. |
|---|
| 193 |
bool CheckMCFormValues(); //Ïðîâåðÿåò ïðàâèëüíîñòü ââåäåííûõ íàñòðîåê ìàññ÷åíäæà. |
|---|
| 194 |
void MakeMassChanges(); //Âûïîëíÿåò ìàññîâûå èçìåíåíèÿ. |
|---|
| 195 |
bool MakeMassChangeAction(const DWORD ObjType, DWORD ObjNumber); //Âûïîëíÿåò ìàññ-äåéñòâèå íàä îïðåäåëåííûì îáúåêòîì. |
|---|
| 196 |
bool MakeMassChangeFilter(const DWORD ObjType, DWORD ObjNumber); //Âûïîëíÿåò ìàññ-äåéñòâèå íàä îïðåäåëåííûì îáúåêòîì. |
|---|
| 197 |
|
|---|
| 198 |
//Äîïîëíèòåëüíûå ôóíêöèè. |
|---|
| 199 |
AnsiString Win2UnixLBText(AnsiString& InputStr); //Êîíâåðòèò òåêñò â ñòðîêå ÷òîá òàì áûë þíèõîâûé òèï ïåðåíîñà ñòðîê... |
|---|
| 200 |
AnsiString StrArray2StrCommaList(DynamicArray <String> *StrArray); //Ãåíåðèò èç ìàñèâà ñòðîê ñòðîêó ñî çíà÷åíèÿìè, ðàçäåëèòåëü - çàïÿòàÿ. |
|---|
| 201 |
AnsiString Norm_StrCommaList(AnsiString& Str); //"Íîðìàëèçóåò" ñïèñîê - ôàêòè÷åñêè óáèðàåò ëèøíèå ïðîáåëû... |
|---|
| 202 |
bool Check_StrCommaList(AnsiString& Str); //Ïðîâåðÿåò ïðàâèëüíîñòü ñïèñêà òèïî... |
|---|
| 203 |
void StrCommaList2StrArray(AnsiString InputStr, DynamicArray <String> *OutputArray); //Ãåíåðèò èç ñïèñêà ìàññèâ ñî ñòðîêàìè... |
|---|
| 204 |
|
|---|
| 205 |
//AnsiString ProgPath; |
|---|
| 206 |
|
|---|
| 207 |
#endif |
|---|