Seltsames Problem...

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Mr Hopp

Betreff: Seltsames Problem...

BeitragSa, Sep 02, 2006 12:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ich habe ein altes Projekt aufgekramt und festgestellt, dass es etwas problematisch ist. Ich war mir nicht ganz sicher, ob das vll "Allgemein" ist, aber ich denke, im 2D-Forum bin ich ganz richtig.

Kann mir irgendjemand sagen, warum ich bei einem Winkel von mehr als 15° und weniger als 320° immer eine MAV bekomme? Laughing

Code: [AUSKLAPPEN]
Graphics 800, 600, 32, 1
SetBuffer BackBuffer()
AutoMidHandle 1
ClsColor 128, 128, 128

;Massig Globals deklarieren

Type TStreckeT
   Field TeilT.TTeilT
   Field Teile_ges
   Field Teil_a
End Type

Type TTeilT
   Field Teil_Type$
   Field r
   Field x
   Field y
End Type

Type Player
   Field x#
   Field y#
   Field Geschwindigkeit#
   Field Wendigkeit#
   Field Beschleunigung#
   Field Max_Speed_a#
   Field Max_Speed_c#
   Field Min_Speed#
   Field Pos
   Field Zeit#
   Field Checkpoint
   Field ID$
   Field Farbe$
   Field Name$
End Type

Local winkel#

Global StreckeT.TStreckeT = New TStreckeT

Global Arial_Gross = LoadFont("Arial", 80)
;SetFont Arial_Gross
Color 0, 0, 0

Dim Auto_1(359)

For gr = 0 To 359
Auto_1(gr) = LoadImage("Bilder\Auto_1.png")
MaskImage Auto_1(gr), 1, 0, 0
RotateImage Auto_1(gr), gr
Next

AutoMidHandle 0

;***************************************************************************Laden beendet

Strecke = LoadImage("Strecken\Strecke 1.png")
MaskImage Strecke, 0, 0, 255
x# = 400
y# = 300
Geschwindigkeit# = 0
Max_speed# = 2
Max_Speed_a# = 2
Min_Speed# = -0.5
Wendigkeit# = 1

ClsColor 0, 128, 0

Repeat
Cls

;Links und Rechts
If Geschwindigkeit# <= 0.5 Then Wendigkeit# = Geschwindigkeit# / 2
If Geschwindigkeit# > 0.5 Then Wendigkeit# = 1

If Geschwindigkeit# <> 0 Then
If KeyDown(203) Then winkel = winkel - Wendigkeit#
If KeyDown(205) Then winkel = winkel + Wendigkeit#
EndIf
If winkel > 359 Then winkel = 0
If winkel < 0 Then winkel = 359

;Koordinaten berechnen
x#=x#+Cos(winkel)*Geschwindigkeit#
y#=y#+Sin(winkel)*Geschwindigkeit#

;Geschwindigkeit berechnen
If Max_Speed# < 0.2 Then Max_Speed = Max_Speed_a#
If ImagesCollide(Auto_1(winkel), x#, y#, 0, Strecke, 0, 0, 0) = 0 Then Max_Speed# = 0.2
If ImagesCollide(Auto_1(winkel), x#, y#, 0, Strecke, 0, 0, 0) Then Max_Speed# = Max_Speed_a#
If KeyDown(200) And Geschwindigkeit# < Max_Speed# Then Geschwindigkeit# = Geschwindigkeit# + 0.025
If KeyDown(208) And Geschwindigkeit# > Min_Speed# Then Geschwindigkeit# = Geschwindigkeit# - 0.03

;Geschwindigkeitsverlust hinzufügen
If Geschwindigkeit# > 0 Then Geschwindigkeit# = Geschwindigkeit# - 0.02
If Geschwindigkeit# < 0 Then Geschwindigkeit# = Geschwindigkeit# + 0.02

DrawImage Strecke, 0, 0
DrawImage Auto_1(winkel), x#, y#

Text 0,0,winkel

Flip
Until KeyHit(1)
End


Danke im Vorraus

Edit: Der Code ist unübersichtlich und auch ein Ausschnitt aus einem Programm, aber das ist der teil des Programms, der sich mit der Steuerung befasst^^ Also bitte nur Antworten zu meiner Frage! Ich weiß, dass der Programmierstil sehr schlecht ist, war ja auch vor einem Jahr Very Happy

SpionAtom

BeitragSa, Sep 02, 2006 12:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab deinen Code gerade mal mit Dummybildern getestet. Ich kann mich einwandfrei umherbewegen. Uhrzeigersinn, gegen den Uhrzeigersinn, alles kein Problem Confused
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080
 

Mr Hopp

BeitragSa, Sep 02, 2006 12:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Mhhh......das ist aber der vollständige Code eines Testprogramms... Vll liegt's an meinem System...wobei das eigentlich recht modern ist und sowas kleines machen könnte Very Happy Aber das seltsame ist halt, dass es exakt bei >15° und <320° abstürzt...

Edit: Ich hab's mal mit nem anderen Image probiert....nun stürzt das Programm bei <150° und >90° ab...
 

Mr Hopp

BeitragSa, Nov 18, 2006 15:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Fehler ist jetzt schon bei einem weiteren Projekt aufgetreten. Geht immer alles super und vom einen Tag auf den anderen geht gar nix mehr. Könnte das ein Bug sein???
Zitat:
Wie poste ich falsch?

Nachdem ich Google, die FAQ's und die Boardsuche erfolgreich ignoriert habe, erstelle ich zwei bis fünf neue Themen, in den falschen Unterforen, mit kreativen Titeln und undeutlichem Text, unter dem sich jeder etwas anderes vorstellen kann.

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group