DEADSOFTWARE

put "{$MODE ...}" directive in each source file; removed trailing spaces, and convert...
[d2df-sdl.git] / src / game / g_player.pas
index bb9b4149dca2a8bfcc677691bf985814fbb1b4ca..5dc5a096cfc3fff8a2e6a64b8a40a2e8c508aa0a 100644 (file)
@@ -1,3 +1,4 @@
+{$MODE DELPHI}
 unit g_player;
 
 interface
@@ -243,6 +244,7 @@ type
     procedure   SetFlag(Flag: Byte);
     function    DropFlag(): Boolean;
     procedure   AllRulez(Health: Boolean);
+    procedure   RestoreHealthArmor();
     procedure   FragCombo();
     procedure   GiveItem(ItemType: Byte);
     procedure   Damage(value: Word; SpawnerUID: Word; vx, vy: Integer; t: Byte); virtual;
@@ -399,7 +401,7 @@ type
     procedure   Draw();
     procedure   SaveState(var Mem: TBinMemoryWriter);
     procedure   LoadState(var Mem: TBinMemoryReader);
-    
+
     property    Obj: TObj read FObj;
     property    State: Byte read FState;
     property    Mess: Boolean read FMess;
@@ -470,7 +472,7 @@ implementation
 uses
   e_log, g_map, g_items, g_console, SysUtils, g_gfx, Math,
   g_options, g_triggers, g_menu, MAPDEF, g_game,
-  WADEDITOR, g_main, g_monsters, CONFIG, g_language, g_net, g_netmsg;
+  wadreader, g_main, g_monsters, CONFIG, g_language, g_net, g_netmsg;
 
 type
   TBotProfile = record
@@ -514,11 +516,14 @@ const
   TEAMCOLOR: Array [TEAM_RED..TEAM_BLUE] of TRGB = ((R:255; G:0; B:0),
                                                    (R:0; G:0; B:255));
   DIFFICULT_EASY: TDifficult = (DiagFire: 32; InvisFire: 32; DiagPrecision: 32;
-                                FlyPrecision: 32; Cover: 32; CloseJump: 32);
+                                FlyPrecision: 32; Cover: 32; CloseJump: 32;
+                                WeaponPrior:(0,0,0,0,0,0,0,0,0,0); CloseWeaponPrior:(0,0,0,0,0,0,0,0,0,0));
   DIFFICULT_MEDIUM: TDifficult = (DiagFire: 127; InvisFire: 127; DiagPrecision: 127;
-                                  FlyPrecision: 127; Cover: 127; CloseJump: 127);
+                                  FlyPrecision: 127; Cover: 127; CloseJump: 127;
+                                WeaponPrior:(0,0,0,0,0,0,0,0,0,0); CloseWeaponPrior:(0,0,0,0,0,0,0,0,0,0));
   DIFFICULT_HARD: TDifficult = (DiagFire: 255; InvisFire: 255; DiagPrecision: 255;
-                                FlyPrecision: 255; Cover: 255; CloseJump: 255);
+                                FlyPrecision: 255; Cover: 255; CloseJump: 255;
+                                WeaponPrior:(0,0,0,0,0,0,0,0,0,0); CloseWeaponPrior:(0,0,0,0,0,0,0,0,0,0));
   WEAPON_PRIOR1: Array [WEAPON_KASTET..WEAPON_SUPERPULEMET] of Byte =
                                 (WEAPON_SUPERPULEMET, WEAPON_SHOTGUN2, WEAPON_SHOTGUN1,
                                  WEAPON_CHAINGUN, WEAPON_PLASMA, WEAPON_ROCKETLAUNCHER,
@@ -1429,7 +1434,7 @@ var
 begin
   if (gShells = nil) or (Length(gShells) = 0) then
     Exit;
-  
+
   with gShells[CurrentShell] do
   begin
     SpriteID := 0;
@@ -1520,7 +1525,7 @@ var
     else
       g_Sound_PlayExAt('SOUND_PLAYER_SHELL' + IntToStr(k), X, Y);
   end;
-  
+
 begin
 // Êóñêè ìÿñà:
   if gGibs <> nil then
@@ -1542,7 +1547,7 @@ begin
             Obj.Vel.X := -(vel.X div 2);
           if WordBool(mr and (MOVE_HITCEIL or MOVE_HITLAND)) then
             Obj.Vel.Y := -(vel.Y div 2);
-          
+
           if (Obj.Vel.X >= 0) then
           begin // Clockwise
             RAngle := RAngle + Abs(Obj.Vel.X)*6 + Abs(Obj.Vel.Y);
@@ -1680,7 +1685,7 @@ begin
   SetLength(gShells, MaxGibs);
   CurrentGib := 0;
   CurrentShell := 0;
-  
+
   if gCorpses <> nil then
     for i := 0 to High(gCorpses) do
       gCorpses[i].Free();
@@ -5461,6 +5466,12 @@ begin
   FRulez := FRulez+[R_KEY_RED, R_KEY_GREEN, R_KEY_BLUE];
 end;
 
+procedure TPlayer.RestoreHealthArmor();
+begin
+  FHealth := PLAYER_HP_LIMIT;
+  FArmor := PLAYER_AP_LIMIT;
+end;
+
 procedure TPlayer.FragCombo();
 var
   Param: Integer;
@@ -5686,7 +5697,7 @@ begin
   if gTime mod (GAME_TICK*2) <> 0 then
   begin
     g_Obj_Move(@FObj, True, True, True);
-    
+
     Exit;
   end;
 
@@ -6344,7 +6355,7 @@ begin
   else
   begin
     EnableAI := True;
-    
+
     // Ïðîâåðÿåì, îòêëþ÷¸í ëè AI áîòîâ
     if (g_debug_BotAIOff = 1) and (Team = TEAM_RED) then
       EnableAI := False;
@@ -6843,7 +6854,7 @@ end;}
 procedure TBot.SelectWeapon(Dist: Integer);
 var
   a: Integer;
-  
+
   function HaveAmmo(weapon: Byte): Boolean;
   begin
     case weapon of