DEADSOFTWARE

nuke doom2df.cfg; refactor some cvar-related stuff
[d2df-sdl.git] / src / game / g_items.pas
index ae047f82b8afcc86bfa283e05012af0964c9b3a5..200ebdd96cf725a2bc486d043e66bfce96ce46e4 100644 (file)
@@ -83,7 +83,6 @@ function g_Items_ForEachAlive (cb: TItemEachAliveCB; backwards: Boolean=false):
 var
   gItemsTexturesID: Array [1..ITEM_MAX] of DWORD;
   gMaxDist: Integer = 1; // for sounds
-  ITEM_RESPAWNTIME: Integer = 60 * 36;
 
 implementation
 
@@ -509,7 +508,6 @@ var
   Anim: TAnimation;
   m: Word;
   r, nxt: Boolean;
-  actualRespawnable: Boolean;
 begin
   if (ggItems = nil) then exit;
 
@@ -577,9 +575,10 @@ begin
               // Íàäî óáðàòü ñ êàðòû, åñëè ýòî íå êëþ÷, êîòîðûì íóæíî ïîäåëèòüñÿ ñ äðóãèì èãðîêîì
               if r then
               begin
-                actualRespawnable := Respawnable
-                  and ((ITEM_RESPAWNTIME > 0) and LongBool(gGameSettings.Options and GAME_OPTION_RESPAWNITEMS));
-                if not actualRespawnable then g_Items_Remove(i) else g_Items_Pick(i);
+                if not (Respawnable and (gGameSettings.ItemRespawnTime > 0)) then
+                  g_Items_Remove(i)
+                else 
+                  g_Items_Pick(i);
                 if g_Game_IsNet then MH_SEND_ItemDestroy(False, i);
                 nxt := True;
                 break;
@@ -692,7 +691,7 @@ begin
   if (ID < Length(ggItems)) then
   begin
     ggItems[ID].alive := false;
-    ggItems[ID].RespawnTime := ITEM_RESPAWNTIME;
+    ggItems[ID].RespawnTime := gGameSettings.ItemRespawnTime * 36;
   end;
 end;