Ayuda sobre un Script

Esta sección es para preguntas sobre programación/scripting usando AutoHotkey.

Moderator: Flipeador

adrian escobar
Posts: 1
Joined: 10 Nov 2017, 18:34

Ayuda sobre un Script

10 Nov 2017, 19:03

Hola ante todo buen dia para todos, soy nuevo en esto de la programacion.

Busco crear un script donde exista una tecla especifica por ejemplo la tecla "Q" que al presionarse cierta cantidad de veces muestre otra letra diferente
por ejemplo:
1 (vez) la "Q" muestre "a"
2 (veces) la "Q" muestre "s"
5 (veces) la "Q" muestre "d"
10 (veces) la "Q" muestre "z"
20 (veces) la "Q" muestre "x"

esto lo necesito para un juego tipo casino que tiene configurada una letra para cada denominacion de billete dolar, y no basta con presionar yo mismo dicha letra ya que no usare el teclado sino que configurare un billetero que solo se le puede asignar una sola tecla pero este mismo manda pulsos por cada billete que se le inserta espero haberme hecho entender.

espero anciosamente de su ayuda y les agradezco de ante mano.
User avatar
Flipeador
Posts: 1204
Joined: 15 Nov 2014, 21:31
Location: Argentina
Contact:

Re: Ayuda sobre un Script

11 Nov 2017, 09:53

Hola, prueba este script:
nota: es para la versión 2. para la versión 1 te lo dejo abajo de este.

Code: Select all

q::
str := 'a'
;ToolTip('a')
SetTimer('snd', 250)
KeyWait('q', 't0.2')
If (!ErrorLevel)
{
    KeyWait('q', 'D t0.2')
    If (!ErrorLevel)
    {
        SetTimer('snd', 250)
        str := 's'
        ;ToolTip('s')
        KeyWait('q', 't0.2')
        If (!ErrorLevel)
        {
            KeyWait('q', 'D t0.2')
            If (!ErrorLevel)
            {
                SetTimer('snd', 250)
                str := 'd'
                ;ToolTip('d')
                KeyWait('q', 't0.2')
                If (!ErrorLevel)
                {
                    KeyWait('q', 'D t0.2')
                    If (!ErrorLevel)
                    {
                        SetTimer('snd', 250)
                        str := 'z'
                        ;ToolTip('z')
                        KeyWait('q', 't0.2')
                        If (!ErrorLevel)
                        {
                            KeyWait('q', 'D t0.2')
                            If (!ErrorLevel)
                            {
                                SetTimer('snd', 250)
                                str := 'x'
                                ;ToolTip('x')
                            }
                        }
                    }
                }
            }
        }
    }
}
return


snd:
SetTimer('snd', 'Off')
SendInput(str)
Return
AHKV1:
(sin probar, no uso la versión 1)

Code: Select all

q::
str := "a"
ToolTip a
SetTimer snd, 250
KeyWait q, t0.2
If (!ErrorLevel)
{
    KeyWait q, D t0.2
    If (!ErrorLevel)
    {
        SetTimer snd, 250
        str := "s"
        ;ToolTip s
        KeyWait q, t0.2
        If (!ErrorLevel)
        {
            KeyWait q, D t0.2
            If (!ErrorLevel)
            {
                SetTimer snd, 250
                str := "d"
                ;ToolTip d
                KeyWait q, t0.2
                If (!ErrorLevel)
                {
                    KeyWait q, D t0.2
                    If (!ErrorLevel)
                    {
                        SetTimer snd, 250
                        str := "z"
                        ;ToolTip z
                        KeyWait q, t0.2
                        If (!ErrorLevel)
                        {
                            KeyWait q, D t0.2
                            If (!ErrorLevel)
                            {
                                SetTimer snd, 250
                                str := "x"
                                ;ToolTip x
                            }
                        }
                    }
                }
            }
        }
    }
}
return


snd:
SetTimer snd, Off
SendInput % str
Return

Tal vez se pueda optimizar... usando una variable como contador y evitando tanta repetición de código... :think:

Return to “Pedir Ayuda”

Who is online

Users browsing this forum: No registered users and 23 guests