Also, ich progge ein Jump&Run-Spiel, das Problem besteht kurz gesagt nur darin, dass ein Image mit Timer um 8 nach links verschoben werden soll, bis es auf ein anderes Image trifft, dann soll es zum Ausgangspunkt zurück und nach 5 Sekunden wieder um 8 verschoben werden bis es auf das andere trifft.
Also:
1.) FormCreate
2.) 5 Sec. warten
3.) Durch Timer verschieben um 8 nach links
4.) Image (IFireUSA) trifft auf anderes Image (IFire)
5.) IFireUSA auf Ausgangspunkt
6.) 5 Sec. warten
7.) wieder bei 3.) weiter
Was bei dem Sourcecode da unten passiert ist schlichtweg alles bis Punkt 6, dort wartet er nämlich Ewigkeiten und verschiebt es gar nicht mehr.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| procedure TForm1.TimerUSATimer(Sender: TObject); begin zeitUSA:=zeitUSA+1; case zeitUSA of 5: phaseUSA:=1; end; If TimerFire.Enabled=false then begin phaseUSA:=2; end; PhasenueberpruefungUSA; end;
procedure TForm1.PhasenueberpruefungUSA; begin case phaseUSA of 1: begin IFireUSA.Left:=IFireUSA.Left-8; end; 2: begin zeitUSA:=0; zeitUSA:=zeitUSA+1; IFireUSA.Left:=ITankUSA.Left; end; end; If IFire.Left>IFireUSA.Left then begin TimerFire.Enabled:=false; If zeitUSA=5 then PhaseUSA:=1; IFire.Left:=IFigure.Left; end;
end; |
Ich hoffe, das war verständlich und jemand kann mir sagen, wo der Fehler ist.
Thx 4 help
