root/trunk/initer.h

Revision 12, 10.0 kB (checked in by sagrer, 9 months ago)
  • Добавлен пункт меню для закрытия текущего открытого моба.
  • Исправлена ошибка, проявлявшаяся в некоторых случаях если начать крутить ориентатор при не выделенном в дереве реальном объекте.
  • При любом закрытии активного моба, в т.ч. при выходе из программы если файл был изменен - появляется вопрос о том что делать с измененным файлом.
  • Добавлен svn-clean.cmd для удаления неверсифицированных файлов в рабочей копии.
Line 
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
Note: See TracBrowser for help on using the browser.