Hier eine Steuerung für beide (Tastatur und Joystick), wie ich sie in meiner Bastel-Version von GV drin habe. Omega arbeitet da mit den CHR$-Codes der Cursor-Tasten, die muss ich also dem Joystick auch beibringen. Komischerweise reagiert die Joysticksteuerung *viel* schneller als die Tastatur, obwohl in der Schleife immer beide abgefragt werden. Die String-Behandlung (wenn GET einen Tasten-String abgeholt hat) in Basic muss sehr zeitaufwendig sein.
Also mein Code (Erläuterung unten drunter), die Zeilen bis 999 zum Testen:
- 100 cls:init
- 110 loop:navi:print"{space}{lft}"chr$(t)"o{lft}";:end loop
- 999 end
- 1000 proc init
- 1010 dim di%(8):n$="{up}{space}{rgt}{space}{dwn}{space}{lft}"
- 1020 di%(1)=145:di%(3)=29:di%(5)=17:di%(7)=157
- 1040 end proc
- 2740 proc navi
- 2750 repeat:geta$:t=place(a$,n$):t=di%(joy(2)and15ort):untilt>0
- 2770 end proc
Display More
Der LOOP ist endlos, muss also mit STOP abgebrochen werden. Das Array DI% enthälz die CHR$-Codes der vier JOY-Richtungen (oben=1, rechts=3, runter=5 und links=7). Zuerst fragt die Erkennung ob die Taste a$ in n$ enthalten ist (und an welcher Position, 1, 3, 5 oder7). Dann wird aus dem Array DI% der zugehörige CHR$-Code ausgelesen. War in a$ nichts drin, tritt JOY in die Bresche. Dabei wird die Feuertaste mit AND 15 weggeblendet.
Funktioniert wunderbar. Wie gesagt, der Joystick ist schneller, die Tastatur aber deshalb nicht gleich langsam.
Arndt