X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_menu.pas;h=5371f413c26e01849bafc272bbdd4c3e2d4aef6a;hb=eecf946cfd964072c60ad443f70cf18b677b6268;hp=309764e3b36568716a31a96b76f855c82b8f8849;hpb=488b568c21383b91f210ea0808fa3fac60f6a114;p=d2df-sdl.git diff --git a/src/game/g_menu.pas b/src/game/g_menu.pas index 309764e..5371f41 100644 --- a/src/game/g_menu.pas +++ b/src/game/g_menu.pas @@ -13,7 +13,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . *) -{$MODE DELPHI} +{$INCLUDE ../shared/a_modes.inc} unit g_menu; interface @@ -43,10 +43,10 @@ implementation uses g_gui, g_textures, e_graphics, g_main, g_window, g_game, g_map, - g_basic, g_console, g_sound, g_gfx, g_player, g_options, + g_basic, g_console, g_sound, g_gfx, g_player, g_options, g_weapons, e_log, SysUtils, CONFIG, g_playermodel, DateUtils, - MAPSTRUCT, wadreader, Math, g_saveload, - e_textures, GL, GLExt, g_language, + MAPDEF, wadreader, Math, g_saveload, + e_texture, GL, GLExt, g_language, g_net, g_netmsg, g_netmaster, g_items, e_input; @@ -192,8 +192,11 @@ begin menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP1MenuWeapons').GetControl('mOptionsControlsP1MenuWeapons')); with menu, gGameControls.P1Control do begin - for i := 0 to 9 do - KeyWeapon[i] := TGUIKeyRead(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key; + for i := WP_FIRST to WP_LAST do + begin + KeyWeapon[i] := TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key0; + KeyWeapon2[i] := TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key1; + end; end; menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP2Menu').GetControl('mOptionsControlsP2Menu')); @@ -225,8 +228,11 @@ begin menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP2MenuWeapons').GetControl('mOptionsControlsP2MenuWeapons')); with menu, gGameControls.P2Control do begin - for i := 0 to 9 do - KeyWeapon[i] := TGUIKeyRead(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key; + for i := WP_FIRST to WP_LAST do + begin + KeyWeapon[i] := TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key0; + KeyWeapon2[i] := TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key1; + end; end; if e_JoysticksAvailable > 0 then @@ -351,7 +357,7 @@ begin TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_NEXT_WEAPON])).Key0 := KeyNextWeapon; TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_PREV_WEAPON])).Key0 := KeyPrevWeapon; TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_USE])).Key0 := KeyOpen; - TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_STRAFE])).Key1 := KeyStrafe; + TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_STRAFE])).Key0 := KeyStrafe; // second set TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_RIGHT])).Key1 := KeyRight2; TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_LEFT])).Key1 := KeyLeft2; @@ -365,6 +371,16 @@ begin TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_STRAFE])).Key1 := KeyStrafe2; end; + menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP1MenuWeapons').GetControl('mOptionsControlsP1MenuWeapons')); + with menu, gGameControls.P1Control do + begin + for i := WP_FIRST to WP_LAST do + begin + TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key0 := KeyWeapon[i]; + TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key1 := KeyWeapon2[i]; + end; + end; + menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP2Menu').GetControl('mOptionsControlsP2Menu')); with menu, gGameControls.P2Control do begin @@ -391,6 +407,16 @@ begin TGUIKeyRead2(GetControl(_lc[I_MENU_CONTROL_STRAFE])).Key1 := KeyStrafe2; end; + menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsP2MenuWeapons').GetControl('mOptionsControlsP2MenuWeapons')); + with menu, gGameControls.P2Control do + begin + for i := WP_FIRST to WP_LAST do + begin + TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key0 := KeyWeapon[i]; + TGUIKeyRead2(GetControl(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)])).Key1 := KeyWeapon2[i]; + end; + end; + if e_JoysticksAvailable > 0 then begin menu := TGUIMenu(g_GUI_GetWindow('OptionsControlsJoystickMenu').GetControl('mOptionsControlsJoystickMenu')); @@ -1098,12 +1124,12 @@ end; procedure ProcSingle1Player(); begin - g_Game_StartSingle('megawads/DOOM2D.WAD:\MAP01', False, 1); + g_Game_StartSingle(gDefaultMegawadStart, False, 1); end; procedure ProcSingle2Players(); begin - g_Game_StartSingle('megawads/DOOM2D.WAD:\MAP01', True, 2); + g_Game_StartSingle(gDefaultMegawadStart, True, 2); end; procedure ProcSelectMapMenu(); @@ -2637,8 +2663,8 @@ begin with TGUIMenu(Menu.AddChild(TGUIMenu.Create(gMenuFont, gMenuSmallFont, _lc[I_MENU_PLAYER_1_WEAPONS]))) do begin Name := 'mOptionsControlsP1MenuWeapons'; - for i := 0 to 9 do - AddKeyRead(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]).Name := + for i := WP_FIRST to WP_LAST do + AddKeyRead2(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]).Name := _lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]; end; Menu.DefControl := 'mOptionsControlsP1MenuWeapons'; @@ -2666,8 +2692,8 @@ begin with TGUIMenu(Menu.AddChild(TGUIMenu.Create(gMenuFont, gMenuSmallFont, _lc[I_MENU_PLAYER_2_WEAPONS]))) do begin Name := 'mOptionsControlsP2MenuWeapons'; - for i := 0 to 9 do - AddKeyRead(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]).Name := + for i := WP_FIRST to WP_LAST do + AddKeyRead2(_lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]).Name := _lc[TStrings_Locale(Cardinal(I_GAME_WEAPON0) + i)]; end; Menu.DefControl := 'mOptionsControlsP2MenuWeapons';