MouseZ() macht WAS ES WILL >:[

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Darthshoot

Betreff: MouseZ() macht WAS ES WILL >:[

BeitragFr, Jan 05, 2007 10:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Ich bin fast am verzweifeln.. ich schreibe im Moment an einem kleinen TileMap Editor rum. Jetzt will ich, dass Texturen per Mausrad gewechselt werden.

Code: [AUSKLAPPEN]
; Mausrad wird initialisiert
If MouseZ() <= 0 Then Goto Forward
If MouseZ() >= Textures Then Goto Forward
Texture = MouseZ()
.Forward


Also.. im Grunde genommen geht es nur darum, dass "Texture" nicht kleiner als 1 und auch nicht größer als "Textures" wird. (Textures ist 3.) Aber irgendwie scheint er meine IF Abfragen komplett zu ignorieren Sad warum?

Danke im Voraus.
MfG Darthshoot

skey-z

BeitragFr, Jan 05, 2007 11:03
Antworten mit Zitat
Benutzer-Profile anzeigen
mousez() gibt die aktuelle position des Maurads wieder, und die wird bei jedem drehen größer bzw kleiner.

Mouse z Speed hilft dir hier weiter, dies gibt dir die änderung seit dem letzten durchlauf wieder.

nun musst du nur noch prüfen ob es <0 oder >0 ist und daraufhin eine hilfsvariable dementsprechend ändern
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

FreetimeCoder

BeitragFr, Jan 05, 2007 11:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm. Ich glaube du nutzt MouseZ() falsch.
Code: [AUSKLAPPEN]

Graphics 640,480,16,2
SetBuffer BackBuffer()

While Not KeyHit(1)
   Cls
   Text 0,0,"MausZ: "+MouseZ()
   Text 0,20,"MausZSpeed: "+MouseZSpeed()
   Flip
Wend
End


Mit MouseZ() wird die Scrollradposition ermittelt.
Du solltest es besser so machen:
Code: [AUSKLAPPEN]

Texture =Texture + MouseZSpeed()
If Texture<=0
   Texture=Textures
EndIf
If Texture>Textures
   Texture=1
EndIf

Damit kannst du auch das blöde Goto umgehen. Du solltest dir das sowieso abgewöhnen, es stört nur beim Lesen des Codes.

Edit: skey-z war schneller Razz
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA
 

Darthshoot

BeitragFr, Jan 05, 2007 14:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Cool danke! Very Happy

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group