Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Einfaches Script (Taste gedrückt halten)


  • Please log in to reply
6 replies to this topic
badnaffy
  • Members
  • 2 posts
  • Last active: Jun 08 2013 05:40 PM
  • Joined: 18 Feb 2013

hallo zusammen, wink.png

 

ich brächte mal eure hilfe,

wie ist der befehlt dafür das ich eine taste gedrückt halten kann, solange bis ich die aktivierungstaste nochmal drücke?

 

also zb:

 

ich möchte "Q" drücken und dann soll das script die taste "W" aktivieren und solange gedrückt halten bis ich "Q" erneut drücke.

könnt ihr mir helfen wie das script aus zu sehen hat? 

 

mfg markus



strobo
  • Members
  • 359 posts
  • Last active: Mar 10 2015 08:13 PM
  • Joined: 19 Jun 2012

Hi,

zum Testen:

q::
    if (getkeystate("w"))
        send,{w up}
    else
        send,{w down}
    return
 

Regards,
Babba

badnaffy
  • Members
  • 2 posts
  • Last active: Jun 08 2013 05:40 PM
  • Joined: 18 Feb 2013

hi,

 

danke dir.. 

 

funzt leider nicht wirklich.. .er drückt war "w" aber hält die taste irgendwie nicht gedrückt



strobo
  • Members
  • 359 posts
  • Last active: Mar 10 2015 08:13 PM
  • Joined: 19 Jun 2012

In welchem program brauchst/testet du das?

Die Taste wird (wahrsch.) schon gedrückt, nur gibts kein auto repeat.


Regards,
Babba

Dr_Holle
  • Members
  • 105 posts
  • Last active: Mar 26 2014 10:10 AM
  • Joined: 18 Dec 2012

Stimmt. So wie Babba es schreibt wird die Taste gedrückt gehalten. Das ist z.B. in Spielen interessant.

 

Solltest du jedoch "lauter w´s schreiben wollen", dann wäre das für dich eine Lösung:

 

q::
    if RepeatIsRunning
    {
        SetTimer , KeyRepeat , Off
        RepeatIsRunning := 0
    }
    else
    {
        RepeatIsRunning := 1
        SetTimer , KeyRepeat, 20
    }
return

KeyRepeat:
    send,{w down}{w up}
return
 

 

Damit schreibst du unendlich viele w´s wenn du q drückst (so lange bis du q erneut drückst).

 

Nun, ich vermute mal dass du das für ein Spiel brauchst, in dem Fall ist der Code von Babba genau der richtige. Der von mir gepostete Code wird wahrscheinlich niemanden von Nutzen sein, habe das nur geschrieben um dir den Unterschied zu verdeutlichen.

Was Babba mit auto repeat meint ist Programmabhängig. Wenn ein Programm nur den Zustand der Taste abfragt würde Babbas Code das gleiche bewirken wir der von mir gepostete Code. Wenn ein Programm jedoch den physischen Zustand der Taste abfragt wird kein Auto-Repeat ausgeführt.

Da die meisten Spiele jedoch nicht den physischen Zustand abfragen sollte Babbas Code jedoch in den meisten Spielen funktionieren.



thiophen
  • Members
  • 2 posts
  • Last active: May 25 2013 10:24 AM
  • Joined: 25 May 2013

Stimmt. So wie Babba es schreibt wird die Taste gedrückt gehalten. Das ist z.B. in Spielen interessant.

 

Solltest du jedoch "lauter w´s schreiben wollen", dann wäre das für dich eine Lösung:

q::
    if RepeatIsRunning
    {
        SetTimer , KeyRepeat , Off
        RepeatIsRunning := 0
    }
    else
    {
        RepeatIsRunning := 1
        SetTimer , KeyRepeat, 20
    }
return

KeyRepeat:
    send,{w down}{w up}
return
 

 

Also mir hilft dieses Script riesig weiter. Ich bekomme es nur leider nicht hin, dass meine Taste nur ca alle 2 min gedrückt wird. Könnt ihr mir da weiterhelfen?



thiophen
  • Members
  • 2 posts
  • Last active: May 25 2013 10:24 AM
  • Joined: 25 May 2013

Habe es doch gelöst... War wohl zu einfach shocked.png