X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_monsters.pas;h=f5f69a93d5eea3b621a153db5d821dd334c49545;hb=a9c0a618b01fb1e51cc953ff8295f888890cc967;hp=1f1e71183c52b302e6b3f33927bc405c799506c8;hpb=2d607bc375126d0942aee16c8031903ab1ca7105;p=d2df-sdl.git diff --git a/src/game/g_monsters.pas b/src/game/g_monsters.pas index 1f1e711..f5f69a9 100644 --- a/src/game/g_monsters.pas +++ b/src/game/g_monsters.pas @@ -1134,8 +1134,8 @@ procedure g_Monsters_Free(); var a: Integer; begin - for a := 0 to High(gMonsters) do gMonsters[a].Free(); monsTree.reset(); + for a := 0 to High(gMonsters) do gMonsters[a].Free(); gMonsters := nil; clearUidMap(); monCheckTrapLastFrameId := 0; @@ -1929,10 +1929,13 @@ begin if (treeNode <> -1) then begin - {$IF DEFINED(D2F_DEBUG)} - e_WriteLog(Format('monster #%d(%u): removed from tree; nodeid=%d', [arrIdx, UID, treeNode]), MSG_NOTIFY); - {$ENDIF} - if monsTree.isValidId(treeNode) then monsTree.removeObject(treeNode); + if monsTree.isValidId(treeNode) then + begin + {$IF DEFINED(D2F_DEBUG)} + e_WriteLog(Format('monster #%d(%u): removed from tree; nodeid=%d', [arrIdx, UID, treeNode]), MSG_NOTIFY); + {$ENDIF} + monsTree.removeObject(treeNode); + end; end; if (arrIdx <> -1) then