X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_gibs.pas;h=69e5ca8b960d8d63dbdedd45094cda9ff30fc530;hb=f65767273250d1d0023d2b8b1050b12931586f6f;hp=627764b6142c5de86389c69a42c482f2f7278fc3;hpb=abed90e42988669146ac1f2ecf2f9eef74f336c1;p=d2df-sdl.git diff --git a/src/game/g_gibs.pas b/src/game/g_gibs.pas index 627764b..69e5ca8 100644 --- a/src/game/g_gibs.pas +++ b/src/game/g_gibs.pas @@ -22,6 +22,7 @@ interface const DefaultGibsCount = 32; DefaultGibsMax = 150; + DefaultGibSize: TRectWH = (X: 8; Y: 8; Width: 16; Height: 16); type PGib = ^TGib; @@ -46,6 +47,7 @@ interface function g_Gibs_GetMax (): Word; procedure g_Gibs_Create (fX, fY, mid: Integer; fColor: TRGB); + procedure g_Gibs_RemoveAll; procedure g_Gibs_Update; implementation @@ -54,7 +56,7 @@ implementation {$IFDEF ENABLE_GFX} g_gfx, {$ENDIF} - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} r_render, {$ENDIF} g_playermodel, g_options, g_game @@ -159,13 +161,10 @@ implementation Color := fColor; alive := True; g_Obj_Init(@Obj); - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} Obj.Rect := r_Render_GetGibRect(ModelID, GibID); {$ELSE} - Obj.Rect.X := 16; - Obj.Rect.Y := 16; - Obj.Rect.Width := 16; - Obj.Rect.Height := 16; + Obj.Rect := DefaultGibSize; {$ENDIF} Obj.X := fX - Obj.Rect.X - (Obj.Rect.Width div 2); Obj.Y := fY - Obj.Rect.Y - (Obj.Rect.Height div 2); @@ -198,6 +197,14 @@ implementation end; end; + procedure g_Gibs_RemoveAll; + var i: Integer; + begin + i := g_Gibs_GetMax(); + g_Gibs_SetMax(0); + g_Gibs_SetMax(i); + end; + procedure g_Gibs_Update; var i: Integer; vel: TPoint2i; mr: Word; begin