Das Komische er mach Folgendes:
Delphi-Quellcode:
If (Sprite is THolz) and Assigned(Holz[1]) then
begin
Kollision := True;
//If Assigned(Holz[1]) then FreeAndNil(Holz[1]);
If Assigned(Holz[1]) then
begin
aHolz := Holz[1];
FreeAndNil(aHolz);
end;
frmMain.Player.FileName := 'Forest.wav';
frmMain.Player.Open;
frmMain.Player.Play;
end;
Er geht alles durch, spielt auch den sound ab, und beim End gibts dann den Fehler. Nehm ich FreeAndNil raus, klappt es prima. Am sound liegts also nicht.
So kommt kein Fehler:
Delphi-Quellcode:
If (Sprite is THolz) and Assigned(Holz[1]) then
begin
Kollision := True;
//If Assigned(Holz[1]) then FreeAndNil(Holz[1]);
If Assigned(Holz[1]) then
begin
//aHolz := Holz[1];
//FreeAndNil(aHolz);
end;
frmMain.Player.FileName := 'Forest.wav';
frmMain.Player.Open;
frmMain.Player.Play;
end;
Also am Assigned liegts nicht.