PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tastenprobleme



GuS_GE
03.08.2004, 04:52
Hy, das Problem ist folgendes:

Wir wollten mit Hilfe von Inulukis T-Patch erreichen, dass der Held
à la Resident Evil seine Waffe nur hebt solange man auf einer
bestimmten Taste (in diesem Fall 'a') bleibt. Geht man von der
Taste runter, senkt auch er die Waffe.

Leider tritt ein Fehler auf, wenn man die Taste, anstatt zum
üblichen Zielen länger zu halten, nur kurz 'andrückt'. Dann
bleibt das Programm nämlich im Zielmodus, da es nicht schnell
genug registriert, dass die Taste bereits losgelassen wurde.

Kennt jemand, irgendeine Möglichkeit trotz kurzen Andrückens
den jeweiligen Befehl ausführen zu lassen?
Wenn ja, dann möge er bitte posten. http://www.multimediaxis.de/images/smilies/old/sm_12.gif

Rash
03.08.2004, 05:05
du musst (oder ihr müsst^^) das so machen, dass ihr abfragt, wann die taste gedrückt wird, und dann ein switch aktiviert wird.
so, und nun müsst ihr seperat abfragen, wann die taste losgelassen wird, und somit den swich ausschalten lassen.

ich habs jetzt nicht ausprobiert, aber das scheint mir die einzig plausieble lösung zu sein ;)

GuS_GE
03.08.2004, 05:40
Zum besseren Verständnis hier soetwas wie ein Quellcode eines
"Parallel Process"-Common Events. Die KeyList wurde so
prepariert, dass wenn man 'a' drückt eine 6 rauskommt und wenn
man 'a' loslässt eine 9 rauskommt.

cycle

play sound: miditickclear
3 x wait: 0.0
set variable(key) = midiplaypos(tick)

fork condition (variable(key) others -1)
{break cycle}

END cycle

fork condition (variable(key)=6
{switch (zielmodus) = ON}

ELSE case
fork condition (variable(key)=9)
{switch (zielmodus) = OFF}


Der Switch "zielmodus" startet ein "Auto Start"-Common Event in
dem dann die Drehbewegungen überprüft werden.

So, wer das jetzt verstanden hat, kann vielleicht auch bei
dem oben genannten Problem helfen.:D

Angi
04.08.2004, 02:16
kuck mal in dein harmony text dokument, ob a regestriert wurde und ob es jeweils die richtigen werte hatt

GuS_GE
04.08.2004, 03:27
Mit der Harmony ist alles in Ordnung, sprich, die richtigen Werte werden ja ausgegeben. Wenn man (was man normalerweise auch tut) die Taste länger hält, funktioniert ja auch alles.
Das Problem ist wie schon gesagt dieses 'antippen'. Bisher bemerkt er dabei (und nur dabei) nicht, dass die Taste wieder losgelassen wurde.

Jetzt ist unsere einzige Hoffnung, dass jemand eine Lösung hat, wie man das unterbinden kann (, falls das überhaupt geht :\).

Angi
05.08.2004, 16:52
Ich glaube das liegt an dem autostart:confused:
Versuche es mal mit dem parralel statt auto( ich meine setze das auto einfach mal auf parralell um)
Viel glück ANGI

Edit: frag doch mal ineluki:D

GuS_GE
05.08.2004, 22:30
Den Autostart kann ich nicht rausnehmen, da es nämlich
darum geht, dass man sich im Schussmodus (, den man durch
Halten der 'a'-Taste aktiviert,) nur drehen, nicht aber
bewegen kann.

Trotzdem danke für den Versuch.:\
Ich glaube, Ineluki zu fragen ist wohl die bessere Idee.
Werde mich gleich ransetzen...

Angi
06.08.2004, 18:30
Ähm du kannst ja so machen das bei dem parrallel event Die tasten oben und unten deaktiviert sind?

Ineluki
10.08.2004, 04:09
also der fehler muss irgendwo in euerem Skript liegen, denn bisher ist mir so ein fehler noch nicht unter gekommen ... afaik macht auch ein kurzes antippen der taste ein keyup event

werde das aber bei gelegenheit nochmals verifizieren