Bug???

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Ornos

Betreff: Bug???

BeitragDo, Apr 28, 2005 9:24
Antworten mit Zitat
Benutzer-Profile anzeigen
bitte nicht auf syntax achten es geht hier ums prinzip...

BlitzBasic: [AUSKLAPPEN]


Type player
Field roll#
Field x#
End Type

p.player = New player
p\ent = CreateMesh(gelbetonne)
p\x = EntityX(p\ent)
p\roll = EntityRoll(p\ent)

If KeyDown(25)
TurnEntity p\ent,0,0,-6
End If

Text 0,20,\"X Position: \"+p\x
Text 0,60,\"Roll: \"+p\roll


x und roll sind 100% identisch, aber er zeigt mir bei roll "0.0" obwohl sich die "gelbetonne" rollt und bei x zeigt er mir RICHTIG die momentane x-position.
warum zeigt er mir nicht roll an sondern nur 0.0?
ist das vielleicht ein bug in bb?

D2006

Administrator

BeitragDo, Apr 28, 2005 9:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

schau mal was dein Code macht:
es speichert den Rollwert in einer Variable ab.
Danach wird das Objekt gedreht. Somit stimmt aber der
in der Variable abgespeicherte Wert ja nicht mehr, weil du
ihn ja nicht aktualisiert hast.

MfG

Ornos

BeitragDo, Apr 28, 2005 10:02
Antworten mit Zitat
Benutzer-Profile anzeigen
aber die x-position ändert sich doch auch andauernd
was soll ich denn deiner meinung nach machen?

D2006

Administrator

BeitragDo, Apr 28, 2005 10:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

also bei dem Code den du hier zeigst wird der X-Wert nicht laufend verändert (zumindest der abgespeicherte).
Hast du das ganze schon in einer Schleife? Kannst du bitte ein wenig mehr Code zeigen.

MfG
D2006

Ornos

BeitragDo, Apr 28, 2005 10:41
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habe den code jetzt nicht parat, aber es geht um eine tonne und wenn die umkippt, dann soll die sich wieder aufrichten, somit ermitelt ich mit entityroll, ob die umgekippt ist und das lustige ist, bei diesem code, ich kann die tonne immer drehen ("TurnEntity p\ent,0,0,-25") egal ob sie steht oder nicht.

BlitzBasic: [AUSKLAPPEN]


Type player
Field roll#
Field x#
End Type

p.player = New player
p\ent = CreateMesh(gelbetonne)
p\x = EntityX(p\ent)
p\roll = EntityRoll(p\ent)

If KeyDown(24)
MoveEntity p\ent,1,0,0 ;jetzt verändert sich die x-position Wink
End If

;umdrehen falls umgekippt
If p\roll>=120 Or p\roll<=-120
If KeyDown(24)
TurnEntity p\ent,0,0,-25
End If
End If

Text 0,20,\"X Position: \"+p\x
Text 0,60,\"Roll: \"+p\roll

Jolinah

BeitragDo, Apr 28, 2005 12:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Was D2006 sagen wollte oder eigentlich auch gesagt hat ist:

p\x und p\roll werden nicht aktualisiert.

p\x musst du in jedem Schleifendurchgang auf EntityX(p\ent) setzen und p\roll auf EntityRoll(p\ent).

Sonst bleiben p\x und p\roll immer so wie sie zum Zeitpunkt wo das Objekt erstellt wurde waren.

Ornos

BeitragDo, Apr 28, 2005 12:46
Antworten mit Zitat
Benutzer-Profile anzeigen
so hatte ich es auch vorher, aber wieso kann ich
BlitzBasic: [AUSKLAPPEN]

TurnEntity p\ent,0,0,-25

ausführen obwohl
BlitzBasic: [AUSKLAPPEN]

If EntityRoll(p\ent)>=120 Or EntityRoll(p\ent)<=-120

da steht, obwohl bei
BlitzBasic: [AUSKLAPPEN]

Text 0,60,\"Roll: \"+EntityRoll(p\ent)

zum beispiel 30 steht?

skey-z

BeitragDo, Apr 28, 2005 12:50
Antworten mit Zitat
Benutzer-Profile anzeigen
hab zwar noch nicht so nen plan von types, aber vielleicht funzt es ja, wenn du folgendes machst:

BlitzBasic: [AUSKLAPPEN]


For p=Each player
If p\roll>=120 Or p\roll<=-120
If KeyDown(24)
TurnEntity p\ent,0,0,-25
End If
End If
Next


also ohne gewähr, aber vlt hilft es ja
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

Ornos

BeitragDo, Apr 28, 2005 13:21
Antworten mit Zitat
Benutzer-Profile anzeigen
@sky-z gut das versuche ich mal

@die anderen
ich habe 2 probleme
1.p\x geht p\roll nicht obwohl das gleiche
2.hab ich davor genau erklärt

Jolinah

BeitragDo, Apr 28, 2005 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Achso meinst du das Wink

Weiss ich ehrlich gesagt auch nicht woran es liegt. Aber vielleicht bringts was wenn du Floats verwendest, also 120.0 statt 120 schreibst etc.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group