Page 1 of 1

Ayuda sobre un Script

Posted: 10 Nov 2017, 19:03
by adrian escobar
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.

Re: Ayuda sobre un Script

Posted: 11 Nov 2017, 09:53
by Flipeador
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: