please help again

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ozzi789

Betreff: please help again

BeitragDo, Dez 14, 2006 18:54
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn man das so hat driftet das auto nur so rum... doch wieso??
kann mier jemdand helfen bitte:lol:

Graphics 800,600,32,1
SetBuffer BackBuffer()
Dim Auto(359)
TFormFilter 0
For winkel = 0 To 359
Auto(winkel)=LoadImage("D:\car.bmp")
RotateImage auto(winkel),winkel
MaskImage Auto(winkel),255,0,255
Next
Global x#,y#
Global geschwindigkeit#=3
While Not KeyHit(1) Cls
If KeyDown(203) Then winkel= winkel -1
If KeyDown(205) Then winkel= winkel +1
If winkel > 359 Then winkel = 0
If winkel < 0 Then winkel = 359
If KeyDown(200) Then
x = x + Cos(winkel)*geschwindigkeit
y = y - Sin(winkel)*geschwindigkeit
EndIf
DrawImage auto(winkel),x,y
Flip
Wend
End
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5
 

0penguin0

BeitragDo, Dez 14, 2006 18:57
Antworten mit Zitat
Benutzer-Profile anzeigen
was soll denn das
Code: [AUSKLAPPEN]

If KeyDown(200) Then
...
...

bewirken??
i never finish anyth

Hagbard

BeitragDo, Dez 14, 2006 19:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Das bewirkt, dass er losfährt.
Ich versteh allerdings nicht, was du mit driften meinst...

5k41

BeitragDo, Dez 14, 2006 19:03
Antworten mit Zitat
Benutzer-Profile anzeigen
weil deine Sin / Cos berechnung falsch ist Wink
hier mal richtig:
Code: [AUSKLAPPEN]

Graphics 800,600,32,1
Dim Auto(359)
TFormFilter 0
For winkel = 0 To 359
Auto(winkel)=CreateImage(50,100)
SetBuffer ImageBuffer(Auto(winkel))
Rect 0,0,50,100,1
MidHandle Auto(winkel)
RotateImage auto(winkel),winkel
MaskImage Auto(winkel),255,0,255
Next
Global x#=400,y#=300
Global geschwindigkeit#=3
winkel = 0
SetBuffer BackBuffer()
While Not KeyHit(1) Cls
If KeyDown(203) Then winkel= winkel -1
If KeyDown(205) Then winkel= winkel +1
If winkel > 359 Then winkel = 0
If winkel < 0 Then winkel = 359
If KeyDown(200) Then
x = x - Sin(winkel)*geschwindigkeit
y = y + Cos(-winkel)*geschwindigkeit
EndIf
DrawImage Auto(winkel),x,y
Text 0,0,winkel
Flip
Wend
End
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image
 

0penguin0

BeitragDo, Dez 14, 2006 19:04
Antworten mit Zitat
Benutzer-Profile anzeigen
deswegen driftet er ja!!!
er fährt nur, wenn du die taste 200 drückst, aber der winkel verändert sich mit den anderen tasten. lass mal das if keydown(200) ... weg.

EDIT:

und noch was:
Code: [AUSKLAPPEN]

For winkel = 0 To 359
     Auto(winkel)=LoadImage("D:\car.bmp")
     RotateImage auto(winkel),winkel
     MaskImage Auto(winkel),255,0,255
Next


du musst das bild nicht 360 laden, du musst es nur einmal machen und dann mit copyimage kopieren:
Code: [AUSKLAPPEN]

Auto=LoadImage("D:\car.bmp")
dim autow(359)

For winkel = 0 To 359
     autow(winkel) = copyimage(auto)
     RotateImage autow(winkel),winkel
     MaskImage Autow(winkel),255,0,255
Next
i never finish anyth

5k41

BeitragDo, Dez 14, 2006 19:12
Antworten mit Zitat
Benutzer-Profile anzeigen
sorry, pinguin aber ich glaub du weisst nicht was du sagst, der code bedeutet wenn du rechts und links drückst kannst dich drehen und wenn du oben drückst, fahren, doch war die Sin / Cos berechnung falsch, was ich geändert hab!

MfG
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

FireballFlame

BeitragDo, Dez 14, 2006 20:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Sry für das OffTopic, aber ich hasse solche Threadtitel!!!

BladeRunner

Moderator

BeitragDo, Dez 14, 2006 20:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Ozzi, verwende vernünftige Threadtitel oder ich seh mich gezwungen zu schliessen. 'Help' oder 'problem' beschreibt nicht mal ansatzweise worum es geht. Das Du Hilfe möchtest ist klar, sonst würdest Du ja nicht fragen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

ToeB

BeitragDo, Dez 14, 2006 21:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Wink außerdem : Wink
wenn du einen code anzeigst vorher auf Code klicken, okay?
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Blitzcoder

Newsposter

BeitragDo, Dez 14, 2006 23:47
Antworten mit Zitat
Benutzer-Profile anzeigen
crack93, Ja, man sollte Code Tags nutzen, aber Leute wie sollten lieber ihren Mund halten, anstatt hier andere zurechtzuweisen.

@Topic: Ja, die Sin/Cos ist/war falsch. Allerdings finde ich deinen ganzen Code recht...unverständlich. Am besten währe es, du schaust dir bei Wikipedia oder so mal die Sinus/Cosinus Funktion an, bis du sie verstehst. Dann kannst du deinen Code nochmal neu schreiben(So viel ist es ja nicht.) ´Noch ein Tipp, wenn du dein Auto sliden lassen willst(In der Kurve nach aussen rutschen), dann musst du das Auto mit dem aktuellen Winkel etwas vom Drehmittelpunkt wegsetzten. Also, wenn du z.B. deinen Winkel berechnest, und das Sinus Dingens dann mit dem Abstand zum Drehpunkt multiplizierst, dann multiplizierst du statt dessen mit einem Wert, der z.B. um 3 grösser ist. Ich hoffe ich konnte mich einigermassen verständlich ausdrücken.

MfG Blitzcoder
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group