X-Git-Url: https://deadsoftware.ru/gitweb?p=cavecraft.git;a=blobdiff_plain;f=src%2Fmobs.pas;h=72f062f21fdb2df6c94774f8f4a9304d81b6a7eb;hp=4899980faad7dd40f79c6aa86bac25798a8f3481;hb=3564ef6fb4685bbecd05d027d91a9f7d81385b07;hpb=89a93092c75dfc61007345054269c0c3c3d4b823 diff --git a/src/mobs.pas b/src/mobs.pas index 4899980..72f062f 100644 --- a/src/mobs.pas +++ b/src/mobs.pas @@ -22,7 +22,7 @@ interface procedure freeSkin;//Выгрузка текстур implementation - uses phy, player, canvas, func; + uses phy, player, canvas, jsr75i, func; const MAX_MOBS=31; MAX_ANIMREG=3; @@ -543,33 +543,61 @@ procedure storePhy(i:integer); end; end; - procedure saveData;//Сохранение всех данных - begin - + procedure saveData; + var + i, j : integer; + begin + for i := 0 to MAX_MOBS do + begin + write_byte(mob_type[i]); + writeint(mob_x[i]); + writeint(mob_y[i]); + writeint(mob_vx[i]); + writeint(mob_vy[i]); + write_byte(mob_posi[i]); + writeint(mob_hp[i]); + writebool(mob_jmp[i]); + for j := 0 to MAX_ANIMREG do + write_byte(mob_anim[i, j]); + end; end; procedure loadData;//Загрузка всех данных - begin - + var + i, j : integer; + begin + for i := 0 to MAX_MOBS do + begin + mob_type[i] := read_byte; + mob_x[i] := readint; + mob_y[i] := readint; + mob_vx[i] := readint; + mob_vy[i] := readint; + mob_posi[i] := read_byte; + mob_hp[i] := readint; + mob_jmp[i] := readbool; + for j := 0 to MAX_ANIMREG do + mob_anim[i, j] := read_byte; + end; end; procedure resetData;//Сброс всех данных - var - i, j:integer; - begin - for i:=0 to MAX_MOBS do - begin - mob_type[i]:=M_NONE; - mob_x[i]:=0; - mob_y[i]:=0; - mob_vx[i]:=0; - mob_vy[i]:=0; - mob_posi[i]:=0; - mob_hp[i]:=0; - mob_jmp[i]:=false; - for j:=0 to MAX_ANIMREG do - mob_anim[i, j]:=0; - end; + var + i, j:integer; + begin + for i := 0 to MAX_MOBS do + begin + mob_type[i]:=M_NONE; + mob_x[i]:=0; + mob_y[i]:=0; + mob_vx[i]:=0; + mob_vy[i]:=0; + mob_posi[i]:=0; + mob_hp[i]:=0; + mob_jmp[i]:=false; + for j := 0 to MAX_ANIMREG do + mob_anim[i, j]:=0; + end; end; initialization