Skip to content

Commit dabbe64

Browse files
authored
Custom Modules - Various improvements (#685)
1 parent d79fa3b commit dabbe64

File tree

13 files changed

+379
-161
lines changed

13 files changed

+379
-161
lines changed

addons/common/XEH_PREP.hpp

+1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ PREP(loadMagazineInstantly);
5050
PREP(messageBox);
5151
PREP(openArsenal);
5252
PREP(parseMagazineDetail);
53+
PREP(reloadDisplay);
5354
PREP(runAfterSettingsInit);
5455
PREP(selectPosition);
5556
PREP(serializeInventory);
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#include "script_component.hpp"
2+
/*
3+
* Author: mharis001
4+
* Reloads the Zeus display. Repeated calls have no effect
5+
* until the display is finished reloading.
6+
*
7+
* Arguments:
8+
* None
9+
*
10+
* Return Value:
11+
* None
12+
*
13+
* Example:
14+
* [] call zen_common_fnc_reloadDisplay
15+
*
16+
* Public: No
17+
*/
18+
19+
if (!isNull findDisplay IDD_RSCDISPLAYCURATOR && {isNil QGVAR(displayReload)}) then {
20+
GVAR(displayReload) = true;
21+
22+
{
23+
(findDisplay IDD_RSCDISPLAYCURATOR) closeDisplay IDC_CANCEL;
24+
25+
[{
26+
isNull findDisplay IDD_RSCDISPLAYCURATOR
27+
}, {
28+
openCuratorInterface;
29+
GVAR(displayReload) = nil;
30+
}] call CBA_fnc_waitUntilAndExecute;
31+
} call CBA_fnc_execNextFrame;
32+
};

addons/custom_modules/CfgVehicles.hpp

+106-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
class CfgVehicles {
22
class EGVAR(modules,moduleBase);
33

4-
#define ADD_CUSTOM_MODULE(id) \
5-
class DOUBLES(GVAR(module),id): EGVAR(modules,moduleBase) { \
6-
displayName = CSTRING(DisplayName); \
7-
function = QFUNC(init); \
8-
scopeCurator = 1; \
9-
GVAR(index) = __EVAL(id - 1); \
4+
#define ADD_CUSTOM_MODULE(x) \
5+
class GVAR(x): EGVAR(modules,moduleBase) {\
6+
displayName = CSTRING(DisplayName);\
7+
function = QFUNC(init);\
8+
scopeCurator = 1;\
9+
GVAR(id) = x;\
1010
}
1111

1212
ADD_CUSTOM_MODULE(1);
@@ -109,4 +109,104 @@ class CfgVehicles {
109109
ADD_CUSTOM_MODULE(98);
110110
ADD_CUSTOM_MODULE(99);
111111
ADD_CUSTOM_MODULE(100);
112+
ADD_CUSTOM_MODULE(101);
113+
ADD_CUSTOM_MODULE(102);
114+
ADD_CUSTOM_MODULE(103);
115+
ADD_CUSTOM_MODULE(104);
116+
ADD_CUSTOM_MODULE(105);
117+
ADD_CUSTOM_MODULE(106);
118+
ADD_CUSTOM_MODULE(107);
119+
ADD_CUSTOM_MODULE(108);
120+
ADD_CUSTOM_MODULE(109);
121+
ADD_CUSTOM_MODULE(110);
122+
ADD_CUSTOM_MODULE(111);
123+
ADD_CUSTOM_MODULE(112);
124+
ADD_CUSTOM_MODULE(113);
125+
ADD_CUSTOM_MODULE(114);
126+
ADD_CUSTOM_MODULE(115);
127+
ADD_CUSTOM_MODULE(116);
128+
ADD_CUSTOM_MODULE(117);
129+
ADD_CUSTOM_MODULE(118);
130+
ADD_CUSTOM_MODULE(119);
131+
ADD_CUSTOM_MODULE(120);
132+
ADD_CUSTOM_MODULE(121);
133+
ADD_CUSTOM_MODULE(122);
134+
ADD_CUSTOM_MODULE(123);
135+
ADD_CUSTOM_MODULE(124);
136+
ADD_CUSTOM_MODULE(125);
137+
ADD_CUSTOM_MODULE(126);
138+
ADD_CUSTOM_MODULE(127);
139+
ADD_CUSTOM_MODULE(128);
140+
ADD_CUSTOM_MODULE(129);
141+
ADD_CUSTOM_MODULE(130);
142+
ADD_CUSTOM_MODULE(131);
143+
ADD_CUSTOM_MODULE(132);
144+
ADD_CUSTOM_MODULE(133);
145+
ADD_CUSTOM_MODULE(134);
146+
ADD_CUSTOM_MODULE(135);
147+
ADD_CUSTOM_MODULE(136);
148+
ADD_CUSTOM_MODULE(137);
149+
ADD_CUSTOM_MODULE(138);
150+
ADD_CUSTOM_MODULE(139);
151+
ADD_CUSTOM_MODULE(140);
152+
ADD_CUSTOM_MODULE(141);
153+
ADD_CUSTOM_MODULE(142);
154+
ADD_CUSTOM_MODULE(143);
155+
ADD_CUSTOM_MODULE(144);
156+
ADD_CUSTOM_MODULE(145);
157+
ADD_CUSTOM_MODULE(146);
158+
ADD_CUSTOM_MODULE(147);
159+
ADD_CUSTOM_MODULE(148);
160+
ADD_CUSTOM_MODULE(149);
161+
ADD_CUSTOM_MODULE(150);
162+
ADD_CUSTOM_MODULE(151);
163+
ADD_CUSTOM_MODULE(152);
164+
ADD_CUSTOM_MODULE(153);
165+
ADD_CUSTOM_MODULE(154);
166+
ADD_CUSTOM_MODULE(155);
167+
ADD_CUSTOM_MODULE(156);
168+
ADD_CUSTOM_MODULE(157);
169+
ADD_CUSTOM_MODULE(158);
170+
ADD_CUSTOM_MODULE(159);
171+
ADD_CUSTOM_MODULE(160);
172+
ADD_CUSTOM_MODULE(161);
173+
ADD_CUSTOM_MODULE(162);
174+
ADD_CUSTOM_MODULE(163);
175+
ADD_CUSTOM_MODULE(164);
176+
ADD_CUSTOM_MODULE(165);
177+
ADD_CUSTOM_MODULE(166);
178+
ADD_CUSTOM_MODULE(167);
179+
ADD_CUSTOM_MODULE(168);
180+
ADD_CUSTOM_MODULE(169);
181+
ADD_CUSTOM_MODULE(170);
182+
ADD_CUSTOM_MODULE(171);
183+
ADD_CUSTOM_MODULE(172);
184+
ADD_CUSTOM_MODULE(173);
185+
ADD_CUSTOM_MODULE(174);
186+
ADD_CUSTOM_MODULE(175);
187+
ADD_CUSTOM_MODULE(176);
188+
ADD_CUSTOM_MODULE(177);
189+
ADD_CUSTOM_MODULE(178);
190+
ADD_CUSTOM_MODULE(179);
191+
ADD_CUSTOM_MODULE(180);
192+
ADD_CUSTOM_MODULE(181);
193+
ADD_CUSTOM_MODULE(182);
194+
ADD_CUSTOM_MODULE(183);
195+
ADD_CUSTOM_MODULE(184);
196+
ADD_CUSTOM_MODULE(185);
197+
ADD_CUSTOM_MODULE(186);
198+
ADD_CUSTOM_MODULE(187);
199+
ADD_CUSTOM_MODULE(188);
200+
ADD_CUSTOM_MODULE(189);
201+
ADD_CUSTOM_MODULE(190);
202+
ADD_CUSTOM_MODULE(191);
203+
ADD_CUSTOM_MODULE(192);
204+
ADD_CUSTOM_MODULE(193);
205+
ADD_CUSTOM_MODULE(194);
206+
ADD_CUSTOM_MODULE(195);
207+
ADD_CUSTOM_MODULE(196);
208+
ADD_CUSTOM_MODULE(197);
209+
ADD_CUSTOM_MODULE(198);
210+
ADD_CUSTOM_MODULE(199);
211+
ADD_CUSTOM_MODULE(200);
112212
};

addons/custom_modules/XEH_PREP.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
PREP(addModules);
21
PREP(init);
2+
PREP(initDisplayCurator);
33
PREP(register);

addons/custom_modules/XEH_preInit.sqf

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ PREP_RECOMPILE_START;
66
#include "XEH_PREP.hpp"
77
PREP_RECOMPILE_END;
88

9-
[QEGVAR(editor,treesLoaded), LINKFUNC(addModules)] call CBA_fnc_addEventHandler;
9+
[QEGVAR(editor,treesLoaded), LINKFUNC(initDisplayCurator)] call CBA_fnc_addEventHandler;
1010

1111
ADDON = true;

0 commit comments

Comments
 (0)