XBox Controller

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

Seven

Betreff: XBox Controller

BeitragSo, Jan 22, 2012 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Tag.
Eine kurze Frage;
Ich arbeite an einer XBox 360 Controller Unterstützung,
aber es funktioniert aus irgendeinem Grund nicht,
also habe ich einen kleinen Code kreiert und diesen
in BB und BMax probiert.
Das ganze sieht so aus:
BlitzMax: [AUSKLAPPEN]

Repeat

DebugLog JoyDown(1)

Forever


In BB wird eine 1 ausgegeben, wenn ich A drücke.
In BMax bleibt es bei 0, egal was ich drücke.
Meine Suche ergab leider auch nichts.

Woran liegt es?

Xeres

Moderator

BeitragSo, Jan 22, 2012 16:08
Antworten mit Zitat
Benutzer-Profile anzeigen
könnte einfach als anderer Knopf erkannt werden. Probiers einfach mal so:
BlitzMax: [AUSKLAPPEN]
Repeat

For Local i:Int = 0 Until 26
If JoyDown(i) Then DebugLog("Joy(" + i + ")")
Next

Until KeyHit(KEY_ESCAPE) Or AppTerminate()
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

Seven

BeitragSo, Jan 22, 2012 16:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Nope, funktioniert auch nicht.

Neben A habe ich auch alle anderen Knöpfe durchprobiert.
Es rührt sich nichts.

Midimaster

BeitragSo, Jan 22, 2012 17:03
Antworten mit Zitat
Benutzer-Profile anzeigen
frag doch zunächst mal die Ports ab, ob der Joystick überhaupt erkannt wird.

JoyCount(), Joyname(Port), JouyButtonCaps(Port)

möglicherweise taucht er ja ab einem anderen Port auf?
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe
 

Seven

BeitragSo, Jan 22, 2012 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Du hattest recht.
Port 424 xD

Leider funktioniert das hier nicht:
BlitzMax: [AUSKLAPPEN]


Repeat

If JoyDown(1,424) Then DebugLog "Hallo"

Until KeyDown(KEY_Escape)



Ich bekomme bei diesem Code eine Fehlermeldung.
JoyDown hat offenbar bei mir ein gewisses Maximum
von Port = 15.

Wie kann das den sein?

BladeRunner

Moderator

BeitragSo, Jan 22, 2012 20:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Im Modul Pub.Freejoy wird die Grenze auf 16 gesetzt- vielleicht funktioniert es wenn du die Grenze manuell erhöhst und das Modul neu buildest.
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
 

Seven

BeitragSo, Jan 22, 2012 21:00
Antworten mit Zitat
Benutzer-Profile anzeigen
In dem Ordner sind 8 Dateien und ein Modul zu ändern übersteigt
meine Momentanen Fähigkeiten.

Ich vermute auch das es in der Blitzmax Demo garnicht möglich ist...

EDIT; Ich gucke mal, ob sich der Port ändern lässt.
Bei den Controller Eigenschaften steht:

Code: [AUSKLAPPEN]

Ort:                 Port_#0002.Hub_#0003   


Sofern jmd. damit etwas anfangen kann.
Ich werde jetzt ein bisschen rumsuchen.

EDIT 2: OK, keine Ahnung. Das Internet sagt mir auch nichts... -.-

BladeRunner

Moderator

BeitragSo, Jan 22, 2012 21:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Ob Du mit der Demo neukompilieren kannst weiss ich leider aus dem Stehgreif auch nicht. Die zu ändernden Zeilen befinden sich in Freejoy.bmx und betreffen eine Handvoll Globale Variablen die derzeit als Array mit [16] Einträgen definiert sind. Hier müsstest Du nur die 16 durch zB 512 ersetzen und schauen ob das nach einem Rebuild des Modules funktioniert (dazu musst du den GCC installiert haben, weitere Infos findest du hier im Portal per Suche.
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
 

Seven

BeitragMi, Jan 25, 2012 17:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Sooo, mir ist da eine Sache eingefallen.

Bei der Blitzmax Demo gibt es verschiedene Sampels
und eine Darunter mit dem Namen "shooter" hat eine
Controller Unterstützung

und hier funktioniert es tatsächlich. Ich klicke X und schon
wird geschossen.

Alle JoyDown's, die ich im Code fand haben keine Port Angabe.


Die Durchsuchung ist nicht allzu einfach, da der Code auf einige Dateien
verteilt wurde. (Wieso machen das alle immer... -.-)

Naja, falls jmd. was einfällt -> sagt bescheid.

Solange diese andere Möglichkeit besteht,
werde ich nicht in den internen Modulen rumschrauben.

Der Eisvogel

BeitragMi, Jan 25, 2012 18:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Schreib mal am Anfang deines Codes JoyCount(). Denn in dem von dir genannten Sample wird der Befehl in init() einfach nur aufgerufen. Vielleicht hilft es ja.
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.
 

Seven

BeitragMi, Jan 25, 2012 18:18
Antworten mit Zitat
Benutzer-Profile anzeigen
WTF, es hilft.
Es funktioniert Very Happy

Danke. Endlich Laughing


Damit hat sich mein Problem erledigt.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group