Skip to content

Commit f153fb5

Browse files
committed
added classes to m_menu
1 parent 7bcb235 commit f153fb5

File tree

4 files changed

+186
-142
lines changed

4 files changed

+186
-142
lines changed

jsdoom/m_menu.js

Lines changed: 158 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,42 @@ var quickSaveSlot;
1212
var detailLevel;
1313
var screenblocks;
1414

15+
class menuitem_t
16+
{
17+
status;
18+
name;
19+
routine;
20+
alphaKey;
21+
constructor(status, name, routine, alphaKey)
22+
{
23+
this.status = status;
24+
this.name = name;
25+
this.routine = routine;
26+
this.alphaKey = alphaKey;
27+
}
28+
}
29+
30+
class menu_t
31+
{
32+
numitems;
33+
prevMenu;
34+
menuitems;
35+
routine;
36+
x;
37+
y;
38+
lastOn;
39+
constructor(numitems, prevMenu, menuitems, routine, x, y, lastOn)
40+
{
41+
this.numitems = numitems;
42+
this.prevMenu = prevMenu;
43+
this.menuitems = menuitems;
44+
this.routine = routine;
45+
this.x = x;
46+
this.y = y;
47+
this.lastOn = lastOn;
48+
}
49+
}
50+
1551
function M_NewGame(choice) {};
1652
function M_Episode(choice) {};
1753
function M_ChooseSkill(choice) {};
@@ -61,23 +97,23 @@ const main_e =
6197

6298
var MainMenu =
6399
[
64-
[1, "M_NGAME", M_NewGame, "n"],
65-
[1, "M_OPTION", M_Options, "o"],
66-
[1, "M_LOADG", M_LoadGame, "l"],
67-
[1, "M_SAVEG", M_SaveGame, "s"],
68-
[1, "M_RDTHIS", M_ReadThis, "r"],
69-
[1, "M_QUITG", M_QuitDOOM, "q"]
100+
new menuitem_t(1, "M_NGAME", M_NewGame, "n"),
101+
new menuitem_t(1, "M_OPTION", M_Options, "o"),
102+
new menuitem_t(1, "M_LOADG", M_LoadGame, "l"),
103+
new menuitem_t(1, "M_SAVEG", M_SaveGame, "s"),
104+
new menuitem_t(1, "M_RDTHIS", M_ReadThis, "r"),
105+
new menuitem_t(1, "M_QUITG", M_QuitDOOM, "q"),
70106
];
71107

72-
var MainDef =
73-
{
74-
numitems: main_e.length,
75-
prevmenu: null,
76-
mmenuitems: MainMenu,
77-
routine: M_DrawMainMenu,
78-
x:97, y: 64,
79-
lastOn: 0
80-
};
108+
var MainDef = new menu_t
109+
(
110+
main_e.length,
111+
null,
112+
MainMenu,
113+
M_DrawMainMenu,
114+
97, 64,
115+
0
116+
);
81117

82118
const episodes_e =
83119
{
@@ -89,21 +125,21 @@ const episodes_e =
89125

90126
var EpisodeMenu =
91127
[
92-
[1, "M_EPI1", M_Episode, "k"],
93-
[1, "M_EPI2", M_Episode, "t"],
94-
[1, "M_EPI3", M_Episode, "i"],
95-
[1, "M_EPI4", M_Episode, "t"]
128+
new menuitem_t(1, "M_EPI1", M_Episode, "k"),
129+
new menuitem_t(1, "M_EPI2", M_Episode, "t"),
130+
new menuitem_t(1, "M_EPI3", M_Episode, "i"),
131+
new menuitem_t(1, "M_EPI4", M_Episode, "t"),
96132
];
97133

98-
var EpiDef =
99-
{
100-
numitems: episodes_e.length,
101-
prevMenu: MainDef,
102-
menuitems: EpisodeMenu,
103-
routine: M_DrawEpisode,
104-
x: 48, y: 63,
105-
lastOn: episodes_e.ep1
106-
};
134+
var EpiDef = new menu_t
135+
(
136+
episodes_e.length,
137+
MainDef,
138+
EpisodeMenu,
139+
M_DrawEpisode,
140+
48, 63,
141+
episodes_e.ep1
142+
);
107143

108144
const newgame_e =
109145
{
@@ -116,22 +152,22 @@ const newgame_e =
116152

117153
var NewGameMenu =
118154
[
119-
[1, "M_JKILL", M_ChooseSkill, "i"],
120-
[1, "M_ROUGH", M_ChooseSkill, "h"],
121-
[1, "M_HURT", M_ChooseSkill, "h"],
122-
[1, "M_ULTRA", M_ChooseSkill, "u"],
123-
[1, "M_NMARE", M_ChooseSkill, "n"]
155+
new menuitem_t(1, "M_JKILL", M_ChooseSkill, "i"),
156+
new menuitem_t(1, "M_ROUGH", M_ChooseSkill, "h"),
157+
new menuitem_t(1, "M_HURT", M_ChooseSkill, "h"),
158+
new menuitem_t(1, "M_ULTRA", M_ChooseSkill, "u"),
159+
new menuitem_t(1, "M_NMARE", M_ChooseSkill, "n"),
124160
];
125161

126-
var NewDef =
127-
{
128-
numitems: newgame_e.length,
129-
prevMenu: EpiDef,
130-
menuitems: NewGameMenu,
131-
routine: M_DrawNewGame,
132-
x: 48, y: 63,
133-
lastOn: newgame_e.hurtme
134-
};
162+
var NewDef = new menu_t
163+
(
164+
newgame_e.length,
165+
EpiDef,
166+
NewGameMenu,
167+
M_DrawNewGame,
168+
48, 63,
169+
newgame_e.hurtme
170+
);
135171

136172
const options_e =
137173
{
@@ -148,25 +184,25 @@ const options_e =
148184

149185
var OptionsMenu =
150186
[
151-
[1, "M_ENDGAM", M_EndGame, "e"],
152-
[1, "M_MESSG", M_ChangeMessages, "m"],
153-
[1, "M_DETAIL", M_ChangeDetail, "g"],
154-
[2, "M_SCRNSZ", M_SizeDisplay, "s"],
155-
[-1, "", 0],
156-
[2, "M_MSENS", M_ChangeSensitivity, "m"],
157-
[-1, "", 0],
158-
[1, "M_SVOL", M_Sound, "s"]
187+
new menuitem_t(1, "M_ENDGAM", M_EndGame, "e"),
188+
new menuitem_t(1, "M_MESSG", M_ChangeMessages, "m"),
189+
new menuitem_t(1, "M_DETAIL", M_ChangeDetail, "g"),
190+
new menuitem_t(2, "M_SCRNSZ", M_SizeDisplay, "s"),
191+
new menuitem_t(-1, "", 0),
192+
new menuitem_t(2, "M_MSENS", M_ChangeSensitivity, "m"),
193+
new menuitem_t(-1, "", 0),
194+
new menuitem_t(1, "M_SVOL", M_Sound, "s"),
159195
];
160196

161-
var OptionsDef =
162-
{
163-
numitems: options_e.length,
164-
prevMenu: MainDef,
165-
menuitems: OptionsMenu,
166-
routine: M_DrawOptions,
167-
x: 60, y: 37,
168-
lastOn: 0
169-
};
197+
var OptionsDef = new menu_t
198+
(
199+
options_e.length,
200+
MainDef,
201+
OptionsMenu,
202+
M_DrawOptions,
203+
60, 37,
204+
0
205+
);
170206

171207
const read_e =
172208
{
@@ -175,18 +211,18 @@ const read_e =
175211

176212
var ReadMenu1 =
177213
[
178-
[1, "", M_FinishReadThis, 0]
214+
new menuitem_t(1, "", M_FinishReadThis, 0),
179215
];
180216

181-
var ReadDef1 =
182-
{
183-
numitems: read_e.length,
184-
prevMenu: MainDef,
185-
menuitems: ReadMenu1,
186-
routine: M_DrawReadThis1,
187-
x: 280, y: 185,
188-
lastOn: 0
189-
};
217+
var ReadDef1 = new menu_t
218+
(
219+
read_e.length,
220+
MainDef,
221+
ReadMenu1,
222+
M_DrawReadThis1,
223+
280, 185,
224+
0
225+
);
190226

191227
const read_e2 =
192228
{
@@ -195,18 +231,18 @@ const read_e2 =
195231

196232
var ReadMenu2 =
197233
[
198-
[1, "", M_FinishReadThis, 0]
234+
new menuitem_t(1, "", M_FinishReadThis, 0),
199235
];
200236

201-
var ReadDef2 =
202-
{
203-
numitems: read_e2.length,
204-
prevMenu: ReadDef1,
205-
menuitems: ReadMenu2,
206-
routine: M_DrawReadThis2,
207-
x: 330, y: 175,
208-
lastOn: 0
209-
};
237+
var ReadDef2 = new menu_t
238+
(
239+
read_e2.length,
240+
ReadDef1,
241+
ReadMenu2,
242+
M_DrawReadThis2,
243+
330, 175,
244+
0
245+
);
210246

211247
const sound_e =
212248
{
@@ -218,21 +254,21 @@ const sound_e =
218254

219255
var SoundMenu =
220256
[
221-
[2, "M_SFXVOl", M_SfxVol, "s"],
222-
[-1, "", 0],
223-
[2, "M_MUSVOl", M_MusicVol, "m"],
224-
[-1, "", 0]
257+
new menuitem_t(2, "M_SFXVOl", M_SfxVol, "s"),
258+
new menuitem_t(-1, "", 0),
259+
new menuitem_t(2, "M_MUSVOl", M_MusicVol, "m"),
260+
new menuitem_t(-1, "", 0),
225261
];
226262

227-
var SoundDef =
228-
{
229-
numitems: sound_e.length,
230-
prevMenu: OptionsDef,
231-
menuitems: SoundMenu,
232-
routine: M_DrawSound,
233-
x: 80, y: 64,
234-
lastOn: 0
235-
};
263+
var SoundDef = new menu_t
264+
(
265+
sound_e.length,
266+
OptionsDef,
267+
SoundMenu,
268+
M_DrawSound,
269+
80, 64,
270+
0
271+
);
236272

237273
const load_e =
238274
{
@@ -246,43 +282,43 @@ const load_e =
246282

247283
var LoadMenu =
248284
[
249-
[1, "", M_LoadSelect, "1"],
250-
[1, "", M_LoadSelect, "2"],
251-
[1, "", M_LoadSelect, "3"],
252-
[1, "", M_LoadSelect, "4"],
253-
[1, "", M_LoadSelect, "5"],
254-
[1, "", M_LoadSelect, "6"]
285+
new menuitem_t(1, "", M_LoadSelect, "1"),
286+
new menuitem_t(1, "", M_LoadSelect, "2"),
287+
new menuitem_t(1, "", M_LoadSelect, "3"),
288+
new menuitem_t(1, "", M_LoadSelect, "4"),
289+
new menuitem_t(1, "", M_LoadSelect, "5"),
290+
new menuitem_t(1, "", M_LoadSelect, "6"),
255291
];
256292

257-
var LoadDef =
258-
{
259-
numitems: load_e.length,
260-
prevMenu: MainDef,
261-
menuitems: LoadMenu,
262-
routine: M_DrawLoad,
263-
x: 80, y: 54,
264-
lastOn: 0
265-
};
293+
var LoadDef = new menu_t
294+
(
295+
load_e.length,
296+
MainDef,
297+
LoadMenu,
298+
M_DrawLoad,
299+
80, 54,
300+
0
301+
);
266302

267303
var SaveMenu =
268304
[
269-
[1, "", M_SaveSelect, "1"],
270-
[1, "", M_SaveSelect, "3"],
271-
[1, "", M_SaveSelect, "4"],
272-
[1, "", M_SaveSelect, "5"],
273-
[1, "", M_SaveSelect, "2"],
274-
[1, "", M_SaveSelect, "6"]
305+
new menuitem_t(1, "", M_SaveSelect, "1"),
306+
new menuitem_t(1, "", M_SaveSelect, "3"),
307+
new menuitem_t(1, "", M_SaveSelect, "4"),
308+
new menuitem_t(1, "", M_SaveSelect, "5"),
309+
new menuitem_t(1, "", M_SaveSelect, "2"),
310+
new menuitem_t(1, "", M_SaveSelect, "6"),
275311
];
276312

277-
var SaveDef =
278-
{
279-
numitems: load_e.length,
280-
prevMenu: MainDef,
281-
menuitems: SaveMenu,
282-
routine: M_DrawSave,
283-
x: 80, y: 54,
284-
lastOn: 0
285-
};
313+
var SaveDef = new menu_t
314+
(
315+
load_e.length,
316+
MainDef,
317+
SaveMenu,
318+
M_DrawSave,
319+
80, 54,
320+
0
321+
);
286322

287323
function M_Init()
288324
{

0 commit comments

Comments
 (0)