![]() |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi,
bin erst in der achten Klasse. Kenne mich noch nicht mit dem ganzen Zeugs (sin, cos, Deg, Rad...) aus ;). mfg Manu :hi: |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Zitat:
|
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi,
scheint irgendwie nicht zu klappen. Das Auto fährt einfach irgendwo hin. Mein code:
Delphi-Quellcode:
Das drehen klappt :roll: .
procedure TAuto.DoMove(MoveCount: Integer);
begin inherited DoMove(MoveCount); if isUp in Form1.Input.States then begin X := X + degtorad(cos(Angle)) * MoveCount; Y := Y + degtorad(sin(Angle)) * MoveCount; end; if isDown in Form1.Input.States then begin X := X - degtorad(cos(Angle)) * MoveCount; Y := Y - degtorad(sin(Angle)) * MoveCount; end; if isLeft in Form1.Input.States then Angle := Angle - 1; if isRight in Form1.Input.States then Angle := Angle + 1; end; Am besten ihr schauts euch mal an. ![]() ![]() |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Mhh.
degtorad wandelt die Gradzahl in Rad-Angabe um. diese musst du dann der Funktion (cos/sin) übergeben. Also:
Delphi-Quellcode:
und nicht anders herum :coder:
cos(degtorad(Angle))
|
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi,
thx, bin grad inner Schule, werde es später mal probieren ;). *MFG* Manu :hi: |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi,
also, irgendwie wills immernoch nicht :( . So sieht er jetzt aus:
Delphi-Quellcode:
Ich glaube es liegt an meinem Image. Werde ich mal ausprobieren.
procedure TAuto.DoMove(MoveCount: Integer);
begin inherited DoMove(MoveCount); if isUp in Form1.Input.States then begin X := X + cos(degtorad(Angle)) * MoveCount; Y := Y + sin(degtorad(Angle)) * MoveCount; end; if isDown in Form1.Input.States then begin X := X - cos(degtorad(Angle)) * MoveCount; Y := Y - sin(degtorad(Angle)) * MoveCount; end; if isLeft in Form1.Input.States then Angle := Angle - 1; if isRight in Form1.Input.States then Angle := Angle + 1; end; Hier könnt ihr euch mal meinen Source anschauen, ich hoffe ihr versteht das besser: ![]() ![]() [edit] Ups, da ist noch ein Fehler im Quellcode, nehmt grad den, den ich hier gepostet hab. Beim anderen steht noch ein - statt ein +. (Kommt vom rumprobieren). Der Fehler aber bleibt. [/edit] |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Delphi-Quellcode:
procedure TAuto.DoMove(MoveCount: Integer);
begin inherited DoMove(MoveCount); if isUp in Form1.Input.States then begin X := X - cos(degtorad(Angle)) * MoveCount; Y := Y + sin(degtorad(Angle)) * MoveCount; end; if isDown in Form1.Input.States then begin X := X + cos(degtorad(Angle)) * MoveCount; Y := Y - sin(degtorad(Angle)) * MoveCount; end; if isLeft in Form1.Input.States then Angle := Angle - 1; if isRight in Form1.Input.States then Angle := Angle + 1; end; So sollte es eigentlich funktionieren! //Edit: Da anscheinend die Farbcodes im Quelltext nicht funktionier hab ich sie wieder rausgelöscht |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi,
geht leider auch nicht :( *MFG* Manu :hi: |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Ja und was geht da nun nicht ?
Bewegt sich nichts ? Falsche Richtung ? Fehlermeldung ? |
Re: [DX] Sprite in Richtung wandern lassen, in die es guckt
Hi Ben,
ich hatte doch die Sourcen angehängt. Ich dachte man könnte es selbst mal testen ;). Trotzdem hier nochmal: Das Auto fährt einfach in irgendeine Richtung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz