gh/hamster_m.pas
2026-01-10 12:09:22 +05:00

50 lines
1.0 KiB
ObjectPascal

unit hamster_m;
interface
uses arena_m, creature_m, trace_m;
const
HamsterStartX = 5;
HamsterStartY = 1;
HamsterStartDX = 0;
HamsterStartDY = 0;
HamsterMovespeed = 2;
HamsterSymbol = 'h';
procedure InitHamster(var cr: creature);
procedure KillHamster(var h: creature; var t: tracePtr; var a: arena);
implementation
uses arena_graphics_m, graphics_m;
procedure InitHamster(var cr: creature);
begin
cr.t := creatureHamster;
cr.curX := HamsterStartX;
cr.curY := HamsterStartY;
cr.dX := HamsterStartDX;
cr.dY := HamsterStartDY;
cr.moveSpeed := HamsterMovespeed;
cr.alive := true;
end;
procedure KillHamster(var h: creature; var t: tracePtr; var a: arena);
var
traceStart: tracePtr;
begin
RedrawArea(a, h.curX, h.curY, h.t);
EraseTrace(t, a);
DrawArenaCell(h.curX, h.curY, a);
GetStart(traceStart, t);
h.curX := traceStart^.x;
h.curY := traceStart^.y;
h.dX := HamsterStartDX;
h.dY := HamsterStartDY;
DeleteTrace(t);
DrawCreature(h)
end;
end.