diff --git a/src/game/g_options.pas b/src/game/g_options.pas
index 2ad3e6e497fd99f58d1b45c16d61a0b93dd83c9f..a2624391c73f16f38161db5094764afa8e7a8d40 100644 (file)
--- a/src/game/g_options.pas
+++ b/src/game/g_options.pas
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*)
-{$MODE DELPHI}
+{$INCLUDE g_amodes.inc}
unit g_options;
interface
uses
- g_language;
+ g_language, g_weapons;
type
TPlayerControl = record
KeyPrevWeapon: Word;
KeyOpen: Word;
KeyStrafe: Word;
+ KeyWeapon: array [WP_FIRST..WP_LAST] of Word;
KeyRight2: Word;
KeyLeft2: Word;
KeyPrevWeapon2: Word;
KeyOpen2: Word;
KeyStrafe2: Word;
+ KeyWeapon2: array [WP_FIRST..WP_LAST] of Word;
end;
TGameControls = record
KeyPrevWeapon := 71;
KeyOpen := 54;
KeyStrafe := 0;
+ for i := 0 to High(KeyWeapon) do
+ KeyWeapon[i] := 0;
KeyRight2 := 0;
KeyLeft2 := 0;
KeyPrevWeapon2 := 0;
KeyOpen2 := 0;
KeyStrafe2 := 0;
+ for i := 0 to High(KeyWeapon2) do
+ KeyWeapon2[i] := 0;
end;
with gGameControls.P2Control do
KeyPrevWeapon := 17;
KeyOpen := 58;
KeyStrafe := 0;
+ for i := 0 to High(KeyWeapon) do
+ KeyWeapon[i] := 0;
KeyRight2 := 0;
KeyLeft2 := 0;
KeyPrevWeapon2 := 0;
KeyOpen2 := 0;
KeyStrafe2 := 0;
+ for i := 0 to High(KeyWeapon2) do
+ KeyWeapon2[i] := 0;
end;
with gPlayer1Settings do
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);
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
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);
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
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);
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);
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);
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);