You will need to call Enemy.dead only when you are sure that you don't need to access the Enemy object anymore:

[pascal]
Enemy := TEnemy(sender);
if (not Enemy.Hit) then
begin
Enemy.hit := true;
Enemy.doSomething();
Enemy.whatever();
Enemy.foo := 12;
...

if (Enemy.hit) then
begin
DoSomeStuff();
...
end;

Enemy.Dead; // After this call, you can't access Enemy object anymore!
end;
[/pascal]