diff --git a/src/game/g_netmsg.pas b/src/game/g_netmsg.pas
index e84d82965bcc48850e4d971a28234fb4adbf7a18..1bb60c2d53a4aa234445cb1e56a8090f677b1c35 100644 (file)
--- a/src/game/g_netmsg.pas
+++ b/src/game/g_netmsg.pas
Predict: Boolean;
strafeDir: Byte;
WeaponSelect: Word = 0;
+ i: Integer;
begin
if not gGameOn then Exit;
if gPlayers = nil then Exit;
if gPlayerAction[0, ACTION_WEAPNEXT] then kByte := kByte or NET_KEY_NW;
if gPlayerAction[0, ACTION_WEAPPREV] then kByte := kByte or NET_KEY_PW;
- if gSelectWeapon[0] >= 0 then
+ for i := WP_FIRST to WP_LAST do
begin
- WeaponSelect := gSelectWeapon[0];
- //gSelectWeapon[0] := -1
+ if gSelectWeapon[0, i] then
+ begin
+ WeaponSelect := WeaponSelect or Word(1 shl i);
+ gSelectWeapon[0, i] := False
+ end
end;
// fix movebutton state