X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_options.pas;h=416f3b3c1411eb514ea33f1228b6845b957ca134;hb=130ece9b593583c9f274da5d517c7bda10bf6cd4;hp=65e6f21188d331d1e0566db37a32c5eb90c2720e;hpb=02aa579297ce5b8e70659aacf1b9ab505edc7aaa;p=d2df-sdl.git diff --git a/src/game/g_options.pas b/src/game/g_options.pas index 65e6f21..416f3b3 100644 --- a/src/game/g_options.pas +++ b/src/game/g_options.pas @@ -19,7 +19,7 @@ unit g_options; interface uses - g_language; + g_language, g_weapons; type TPlayerControl = record @@ -32,6 +32,8 @@ type KeyNextWeapon: Word; KeyPrevWeapon: Word; KeyOpen: Word; + KeyStrafe: Word; + KeyWeapon: array [WP_FIRST..WP_LAST] of Word; KeyRight2: Word; KeyLeft2: Word; @@ -42,6 +44,8 @@ type KeyNextWeapon2: Word; KeyPrevWeapon2: Word; KeyOpen2: Word; + KeyStrafe2: Word; + KeyWeapon2: array [WP_FIRST..WP_LAST] of Word; end; TGameControls = record @@ -175,6 +179,9 @@ begin KeyNextWeapon := 73; KeyPrevWeapon := 71; KeyOpen := 54; + KeyStrafe := 0; + for i := 0 to High(KeyWeapon) do + KeyWeapon[i] := 0; KeyRight2 := 0; KeyLeft2 := 0; @@ -185,6 +192,9 @@ begin KeyNextWeapon2 := 0; KeyPrevWeapon2 := 0; KeyOpen2 := 0; + KeyStrafe2 := 0; + for i := 0 to High(KeyWeapon2) do + KeyWeapon2[i] := 0; end; with gGameControls.P2Control do @@ -198,6 +208,9 @@ begin KeyNextWeapon := 19; KeyPrevWeapon := 17; KeyOpen := 58; + KeyStrafe := 0; + for i := 0 to High(KeyWeapon) do + KeyWeapon[i] := 0; KeyRight2 := 0; KeyLeft2 := 0; @@ -208,6 +221,9 @@ begin KeyNextWeapon2 := 0; KeyPrevWeapon2 := 0; KeyOpen2 := 0; + KeyStrafe2 := 0; + for i := 0 to High(KeyWeapon2) do + KeyWeapon2[i] := 0; end; with gPlayer1Settings do @@ -314,6 +330,9 @@ begin KeyNextWeapon := ReadInt('Player1', 'KeyNextWeapon', 19); KeyPrevWeapon := ReadInt('Player1', 'KeyPrevWeapon', 17); KeyOpen := ReadInt('Player1', 'KeyOpen', 58); + KeyStrafe := ReadInt('Player1', 'KeyStrafe', 0); + for i := 0 to High(KeyWeapon) do + KeyWeapon[i] := ReadInt('Player1', 'KeyWeapon' + IntToStr(i), 0); KeyRight2 := ReadInt('Player1', 'KeyRight2', 0); KeyLeft2 := ReadInt('Player1', 'KeyLeft2', 0); @@ -324,6 +343,9 @@ begin KeyNextWeapon2 := ReadInt('Player1', 'KeyNextWeapon2', 0); KeyPrevWeapon2 := ReadInt('Player1', 'KeyPrevWeapon2', 0); KeyOpen2 := ReadInt('Player1', 'KeyOpen2', 0); + KeyStrafe2 := ReadInt('Player1', 'KeyStrafe2', 0); + for i := 0 to High(KeyWeapon2) do + KeyWeapon2[i] := ReadInt('Player1', 'KeyWeapon2' + IntToStr(i), 0); end; with gPlayer1Settings, config do @@ -349,6 +371,9 @@ begin KeyNextWeapon := ReadInt('Player2', 'KeyNextWeapon', 73); KeyPrevWeapon := ReadInt('Player2', 'KeyPrevWeapon', 71); KeyOpen := ReadInt('Player2', 'KeyOpen', 54); + KeyStrafe := ReadInt('Player2', 'KeyStrafe', 0); + for i := 0 to High(KeyWeapon) do + KeyWeapon[i] := ReadInt('Player2', 'KeyWeapon' + IntToStr(i), 0); KeyRight2 := ReadInt('Player2', 'KeyRight2', 0); KeyLeft2 := ReadInt('Player2', 'KeyLeft2', 0); @@ -359,6 +384,9 @@ begin KeyNextWeapon2 := ReadInt('Player2', 'KeyNextWeapon2', 0); KeyPrevWeapon2 := ReadInt('Player2', 'KeyPrevWeapon2', 0); KeyOpen2 := ReadInt('Player2', 'KeyOpen2', 0); + KeyStrafe2 := ReadInt('Player2', 'KeyStrafe2', 0); + for i := 0 to High(KeyWeapon2) do + KeyWeapon2[i] := ReadInt('Player2', 'KeyWeapon2' + IntToStr(i), 0); end; with gPlayer2Settings, config do @@ -550,6 +578,9 @@ begin WriteInt('Player1', 'KeyNextWeapon', KeyNextWeapon); WriteInt('Player1', 'KeyPrevWeapon', KeyPrevWeapon); WriteInt('Player1', 'KeyOpen', KeyOpen); + WriteInt('Player1', 'KeyStrafe', KeyStrafe); + for i := 0 to High(KeyWeapon) do + WriteInt('Player1', 'KeyWeapon' + IntToStr(i), KeyWeapon[i]); WriteInt('Player1', 'KeyRight2', KeyRight2); WriteInt('Player1', 'KeyLeft2', KeyLeft2); @@ -560,6 +591,9 @@ begin WriteInt('Player1', 'KeyNextWeapon2', KeyNextWeapon2); WriteInt('Player1', 'KeyPrevWeapon2', KeyPrevWeapon2); WriteInt('Player1', 'KeyOpen2', KeyOpen2); + WriteInt('Player1', 'KeyStrafe2', KeyStrafe2); + for i := 0 to High(KeyWeapon2) do + WriteInt('Player1', 'KeyWeapon2' + IntToStr(i), KeyWeapon2[i]); WriteStr('Player1', 'Name', Name); WriteStr('Player1', 'model', Model); @@ -580,6 +614,9 @@ begin WriteInt('Player2', 'KeyNextWeapon', KeyNextWeapon); WriteInt('Player2', 'KeyPrevWeapon', KeyPrevWeapon); WriteInt('Player2', 'KeyOpen', KeyOpen); + WriteInt('Player2', 'KeyStrafe', KeyStrafe); + for i := 0 to High(KeyWeapon) do + WriteInt('Player2', 'KeyWeapon' + IntToStr(i), KeyWeapon[i]); WriteInt('Player2', 'KeyRight2', KeyRight2); WriteInt('Player2', 'KeyLeft2', KeyLeft2); @@ -590,6 +627,9 @@ begin WriteInt('Player2', 'KeyNextWeapon2', KeyNextWeapon2); WriteInt('Player2', 'KeyPrevWeapon2', KeyPrevWeapon2); WriteInt('Player2', 'KeyOpen2', KeyOpen2); + WriteInt('Player2', 'KeyStrafe2', KeyStrafe2); + for i := 0 to High(KeyWeapon2) do + WriteInt('Player2', 'KeyWeapon2' + IntToStr(i), KeyWeapon2[i]); WriteStr('Player2', 'Name', Name); WriteStr('Player2', 'model', Model);