+ Responder ao Tópico
Resultados 1 a 17 de 17

Tópico: timer para sair do jogo

  1. #1
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    timer para sair do jogo

    queria fazer uma função simples
    Código:
    	$TECLA1 = _WINAPI_GETASYNCKEYSTATE($TECLAl);tecla l start1
    	$TECLA2 = _WINAPI_GETASYNCKEYSTATE($TECLAB);tecla b start 2
    	If BitAND($TECLA1, $MASCARA) And BitAND($TECLA2, $MASCARA) Then;ao precionas o start1 e 2 por 7 segundos fecha o emulador
    		Sleep(7000);no lugar desse sleep fazer um timer para voltar para o menu
    		FECHAEMULADOR()
    
    		EndIf
    
    
    WEnd
    o que acontece queria colocar um timer para zerar o tempo que os 2 starts fica precionados porque esta acontecendo de os jogadores ficar apertando os starts e as vezes sai do jogo,com um timer zerando o tempo ajudaria muito ai a função só funcionaria realmente se deixar os 2 starts apertados
    "nós devemos amar nossos inimigos"


  2. #2
    Jogador de Enduro (1983) Gamus Se tornará famoso em breve Avatar de Gamus
    Data de Ingresso
    02/2011
    Posts
    240
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    72

    Re: timer para sair do jogo

    Eu queria algo parecido tipo segurar os star 1 e 2 por 7 segundos e dar um ESC
    Pq coloquei a tecla ESC pra sair do frontend

  3. #3
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    Re: timer para sair do jogo

    fiz uma modificação das funções e funcionou do jeito que eu queria
    Código:
    	;Inicia as variáveis
       $tecla1 = _WinAPI_GetAsyncKeyState($teclal); verifica o estado da tecla "l"
       $tecla2 = _WinAPI_GetAsyncKeyState($teclab); verifica o estado da tecla "b"
    
       ;Verifica se as teclas foram pressioandas
       If BitAND($tecla1,$MASCARA) And BitAND($tecla2,$MASCARA) Then ; teclas "a" e "b" pressionadas chama a função fechaemulador
            
    		fechaemulador()
       EndIf
    
    
    WEnd
    
    ;função que irá verificar o estado do emulador e fecha-lo caso necessario
    
    ; e a função que fecha emulador
    	 ; <<Início da Função>>
       Local $estado_tecla1,$estado_tecla2
       Local Const $mascara = 0x8000
       Local $tempo = 0
       $tempo = TimerInit()
    
       ;Loop que verifica o tempo de pressionamento das teclas
       While 1
         ;Verifica o estado das teclas
         $estado_tecla1 = _WinAPI_GetAsyncKeyState($teclal)
         $estado_tecla2 = _WinAPI_GetAsyncKeyState($teclab)
    
         ;Inversão da lógica: se NÃO houve alteração, ou seja, mantidos pressioandos, sai do loop
         If Not BitAND($estado_tecla1, $mascara) and BitAND($estado_tecla2,$MASCARA)Then
              ExitLoop
         Else
             ;Ou se houve alteração, verifica se a diferença de tempo entre as mudanças de estado
             ;foi maior que o tempo estipulado para fechar o emulador e sai do loop
    		 If TimerDiff($tempo) > 10000 Then
                  ExitLoop
             EndIf
         EndIf
         Sleep(100)
       WEnd
    
     ;Verifica se ficou pressionada menos tempo que o necessário e sai sem fechar o emulador
     If TimerDiff($tempo) <= 9000 Then
      Return; volta ao emulador
     EndIf
    
     ;Se o tempo foi maior que o estipulado, fecha o emulador

    assim funcionou
    "nós devemos amar nossos inimigos"


  4. #4
    Jogador de Enduro (1983) Gamus Se tornará famoso em breve Avatar de Gamus
    Data de Ingresso
    02/2011
    Posts
    240
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    72

    Re: timer para sair do jogo

    @amaral então eu poderia fazer assim também para enviar um ESC?

    Código:
    ;Inicia as variáveis
    $tecla1 = _WinAPI_GetAsyncKeyState($teclal); verifica o estado da tecla "l"
    $tecla2 = _WinAPI_GetAsyncKeyState($teclab); verifica o estado da tecla "b"
    
    ;Verifica se as teclas foram pressioandas
    If BitAND($tecla1,$MASCARA) And BitAND($tecla2,$MASCARA) Then ; teclas "a" e "b" pressionadas chama a função fechaemulador
    
    fechaemulador()
    EndIf
    
    
    WEnd
    
    ;função que irá verificar o estado do emulador e fecha-lo caso necessario
    
    ; e a função que fecha emulador
    ; <<Início da Função>>
    Local $estado_tecla1,$estado_tecla2
    Local Const $mascara = 0x8000
    Local $tempo = 0
    $tempo = TimerInit()
    
    ;Loop que verifica o tempo de pressionamento das teclas
    While 1
    ;Verifica o estado das teclas
    $estado_tecla1 = _WinAPI_GetAsyncKeyState($teclal)
    $estado_tecla2 = _WinAPI_GetAsyncKeyState($teclab)
    
    ;Inversão da lógica: se NÃO houve alteração, ou seja, mantidos pressioandos, sai do loop
    If Not BitAND($estado_tecla1, $mascara) and BitAND($estado_tecla2,$MASCARA)Then
    ExitLoop
    Else
    ;Ou se houve alteração, verifica se a diferença de tempo entre as mudanças de estado
    ;foi maior que o tempo estipulado para fechar o emulador e sai do loop
    If TimerDiff($tempo) > 10000 Then
    
    Send("{ESC}")
    
    ExitLoop
    EndIf
    EndIf
    Sleep(100)
    WEnd
    
    ;Verifica se ficou pressionada menos tempo que o necessário e sai sem fechar o emulador
    If TimerDiff($tempo) <= 9000 Then
    Return; volta ao emulador
    EndIf
    
    ;Se o tempo foi maior que o estipulado, fecha o emulador

  5. #5
    Jogador de Enduro (1983) Gamus Se tornará famoso em breve Avatar de Gamus
    Data de Ingresso
    02/2011
    Posts
    240
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    72

    Re: timer para sair do jogo

    Nossa preciso desse script pra sair do maximum arcade segurando 2 botões

  6. #6
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    Re: timer para sair do jogo

    esse script ele verifica se os 2 botões firaram precionados 10 segundos, como pode observar se ele ficar precionado 9 segundos zera o timer e não sai do emulador
    "nós devemos amar nossos inimigos"


  7. #7
    Jogador de Enduro (1983) Gamus Se tornará famoso em breve Avatar de Gamus
    Data de Ingresso
    02/2011
    Posts
    240
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    72

    Re: timer para sair do jogo

    Olha me desculpa não tinha prestado atenção na sua postagem agora entendi o que vc fez
    Mas quero um script da enviar um ESC pra sair do maximum arcade segurando os dois starts

  8. #8
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    Re: timer para sair do jogo

    a função completa dele fica assim
    Código:
    	;Inicia as variáveis
       $tecla1 = _WinAPI_GetAsyncKeyState($teclal); verifica o estado da tecla "l"
       $tecla2 = _WinAPI_GetAsyncKeyState($teclab); verifica o estado da tecla "b"
    
       ;Verifica se as teclas foram pressioandas
       If BitAND($tecla1,$MASCARA) And BitAND($tecla2,$MASCARA) Then ; teclas "a" e "b" pressionadas chama a função fechaemulador
    
    		fechaemulador()
       EndIf
    
    
    WEnd
    
    ;função que irá verificar o estado do emulador e fecha-lo caso necessario
    
    Func FECHAEMULADOR()
    	 ; <<Início da Função>>
       Local $estado_tecla1,$estado_tecla2
       Local Const $mascara = 0x8000
       Local $tempo = 0
       $tempo = TimerInit()
    
       ;Loop que verifica o tempo de pressionamento das teclas
       While 1
         ;Verifica o estado das teclas
         $estado_tecla1 = _WinAPI_GetAsyncKeyState($teclal)
         $estado_tecla2 = _WinAPI_GetAsyncKeyState($teclab)
    
         ;Inversão da lógica: se NÃO houve alteração, ou seja, mantidos pressioandos, sai do loop
         If Not BitAND($estado_tecla1, $mascara) and BitAND($estado_tecla2,$MASCARA)Then
              ExitLoop
         Else
             ;Ou se houve alteração, verifica se a diferença de tempo entre as mudanças de estado
             ;foi maior que o tempo estipulado para fechar o emulador e sai do loop
    		 If TimerDiff($tempo) > 10000 Then
                  ExitLoop
             EndIf
         EndIf
         Sleep(100)
       WEnd
    
     ;Verifica se ficou pressionada menos tempo que o necessário e sai sem fechar o emulador
     If TimerDiff($tempo) <= 9000 Then
      Return; volta ao emulador
     EndIf
    
     ;Se o tempo foi maior que o estipulado, fecha o emulador
     ;<<Aqui você coloca sua rotina que fecha o emulador>>
    
    	;função que irá verificar o estado do emulador e fecha-lo caso necessario
        Local $EMULADOR, $FECHOU
    	  ;envia um ESC para o emulador
    	   Send("{P DOWN}")
    		Sleep(100)
    		Send("{P UP}")
    		Sleep(100)
    	    Send("{ESC DOWN}")
    		Sleep(100)
    		Send("{ESC UP}")
    		Sleep(100)
    	$PID = ProcessExists("brmamep.exe")
    	If $PID Then
    		ProcessClose($PID)
    	EndIf
    	SplashOff()
    	$LOPPING = 0
    	Exit
    	;remove os hotkeys
    	HotKeySet("s")
    	HotKeySet("9")
    	HotKeySet("c")
    EndFunc
    Última edição por amaral; 22/04/2012 às 02:17.
    "nós devemos amar nossos inimigos"


  9. #9
    Jogador de Enduro (1983) Gamus Se tornará famoso em breve Avatar de Gamus
    Data de Ingresso
    02/2011
    Posts
    240
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    72

    Re: timer para sair do jogo

    @amaral ta faltando a While no início acho que seu código está incompleto
    Consegui resolver meu problema com uma dica do Beline
    No meu caso sai em 4 segundos ou como eu quiser.
    Espero que seja útil para outros membros do fórum esse script aqui.
    Eu coloquei pra sair as teclas 1 e 2

    Código:
    #include <WinAPI.au3>
    
    
    Const $TECLA1 = 0x31 ; corresponde a tecla "1"
    
    Const $TECLA2 = 0x32 ; corresponde a virgula "2"
    
    Const $MASCARA = 0x8000 
    
    
    ;rotina de loop
    
    Global $lopping
    
    $lopping = 1
    
    While $lopping	
    
    
    ;verifica se aa tecla "." estão pressionadas e aciona a função fehaemulador
    
    $estado_tecla1 = _WinAPI_GetAsyncKeyState($TECLA1)
    
    $estado_tecla2 = _WinAPI_GetAsyncKeyState($TECLA2)
    
    If BitAND($estado_tecla1,$MASCARA) and BitAND($estado_tecla2,$MASCARA)Then
    
    FechaEmulador()
    
    EndIf 
    
    
    Sleep(100)
    
    WEnd
    
    Exit (0)
    
    
    ;função fecha emulador pressionando tecla por 4 segundos
    
    Func FechaEmulador()
    
    Local $fechou,$estado_tecla1,$estado_tecla2
    
    Local Const $mascara = 0x8000
    
    Local $tempo = 0
    
    
    $tempo = TimerInit()
    
    While 1
    
    $estado_tecla1 = _WinAPI_GetAsyncKeyState($TECLA1)
    
    $estado_tecla2 = _WinAPI_GetAsyncKeyState($TECLA2)
    
    If Not BitAND($estado_tecla1, $mascara) and BitAND($estado_tecla2,$MASCARA)Then
    
    ExitLoop
    
    Else ;branco
    
    If TimerDiff($tempo) > 4000 Then
    
    ExitLoop
    
    EndIf
    
    EndIf
    
    Sleep(100)
    
    WEnd
    
    
    ; se a tecla ficar pressionada o tempo necessário fecha o emulador.
    
    If TimerDiff($tempo) <= 4000 Then
    
    Return ;branco
    
    EndIf
    
    Send("{ESC}")
    
    $lopping = 1
    
    EndFunc ; encerra a função FechaEmulador
    Última edição por Gamus; 22/04/2012 às 03:13.

  10. #10
    Mestre dos Arcades Caseiros esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar esiocosta É esplêndido para se contemplar Avatar de esiocosta
    Data de Ingresso
    04/2011
    Posts
    603
    Posts de Blog
    1
    Mentioned
    99 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    111

    Re: timer para sair do jogo

    Citação Postado originalmente por Gamus Ver Post
    @amaral ta faltando a While no início acho que seu código está incompleto
    Consegui resolver meu problema com uma dica do Beline
    No meu caso sai em 4 segundos ou como eu quiser.
    Espero que seja útil para outros membros do fórum esse script aqui.
    Eu coloquei pra sair as teclas 1 e 2

    Código:
    #include <WinAPI.au3>
    
    
    Const $TECLA1 = 0x31 ; corresponde a tecla "1"
    
    Const $TECLA2 = 0x32 ; corresponde a virgula "2"
    
    Const $MASCARA = 0x8000 
    
    
    ;rotina de loop
    
    Global $lopping
    
    $lopping = 1
    
    While $lopping	
    
    
    ;verifica se aa tecla "." estão pressionadas e aciona a função fehaemulador
    
    $estado_tecla1 = _WinAPI_GetAsyncKeyState($TECLA1)
    
    $estado_tecla2 = _WinAPI_GetAsyncKeyState($TECLA2)
    
    If BitAND($estado_tecla1,$MASCARA) and BitAND($estado_tecla2,$MASCARA)Then
    
    FechaEmulador()
    
    EndIf 
    
    
    Sleep(100)
    
    WEnd
    
    Exit (0)
    
    
    ;função fecha emulador pressionando tecla por 4 segundos
    
    Func FechaEmulador()
    
    Local $fechou,$estado_tecla1,$estado_tecla2
    
    Local Const $mascara = 0x8000
    
    Local $tempo = 0
    
    
    $tempo = TimerInit()
    
    While 1
    
    $estado_tecla1 = _WinAPI_GetAsyncKeyState($TECLA1)
    
    $estado_tecla2 = _WinAPI_GetAsyncKeyState($TECLA2)
    
    If Not BitAND($estado_tecla1, $mascara) and BitAND($estado_tecla2,$MASCARA)Then
    
    ExitLoop
    
    Else ;branco
    
    If TimerDiff($tempo) > 4000 Then
    
    ExitLoop
    
    EndIf
    
    EndIf
    
    Sleep(100)
    
    WEnd
    
    
    ; se a tecla ficar pressionada o tempo necessário fecha o emulador.
    
    If TimerDiff($tempo) <= 4000 Then
    
    Return ;branco
    
    EndIf
    
    Send("{ESC}")
    
    $lopping = 1
    
    EndFunc ; encerra a função FechaEmulador

    como eu uso esse script, ele funciona sozinho ou tem que por essas funções no script principal ?

  11. #11
    Jogador de Sonic the Hedgehog (1991) Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Avatar de Wilson755
    Data de Ingresso
    02/2018
    Localização
    Macatuba/SP
    Posts
    160
    Posts de Blog
    2
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    35

    Cool Re: timer para sair do jogo

    To tentando fazer minha multijogos, fechar com os 2 Starts segurados por 4 segundos , porém não uso joytokey, é tudo por script direto, achei esse script e estou com algumas dúvidas. por exemplo na parte
    Const $MASCARA = 0x8000 esse é o valor das teclas pressionada ao mesmo tempo?

    Alguém poderia me dar algumas dicas. pesquisei esse valor 0x8000 mas não achei nada que me desse um dica.

    Fiz algumas alterações, porém parece que falta alguma coisa. ainda não testei, pois acho que esse valor 0x8000 não vai funcionar.

    Spoiler!

  12. #12
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    Re: timer para sair do jogo

    se não usa joytokey ou um teclado desmontado amigo aconselho a esquecer esse script tem outro ai que funciona com teclas de joystick vou dar uma olhad ase eu achar posto aqui o exemplo

    amigo achei a função e essa
    #include <WindowsConstants.au3>

    If NOT $CmdLine[0] = 1 Then
    MsgBox (0, "Erro 1", "O advmenu não passou o nome da rom", 5)
    Exit ( 0 )
    EndIf

    ;importante verificar o valor pelo painel de controle->joystick->propriedades, ver os valores de "X, Y"
    Const $JOY_CENTRO = 32767
    Const $uJoyID0 = 0
    Const $uJoyID1 = 0
    Const $uJoyID2 = 1
    Const $idTimer = 1001

    ;variaveis globais
    Global $iTimer1
    $iTimer1=0

    ;variaveis locais
    Dim $TempoAtual, $TempoOcioso, $b0,$b1, $b2, $hCallBack, $str, $x0,$x1, $x2,$y0 ,$y1, $y2, $iniTempo, $iniBotao, $PID, $Sair

    ;cria a strutura

    $str = "int x;int y;int z;int buttons"
    GLOBAL $JOYINFO0 = DllStructCreate($str)
    if @error Then
    MsgBox(0,"Erro","Erro criando a strutura1: " & @error);
    exit 0
    endif

    $str = "int x;int y;int z;int buttons"
    GLOBAL $JOYINFO1 = DllStructCreate($str)
    if @error Then
    MsgBox(0,"Erro","Erro criando a strutura1: " & @error);
    exit 0
    endif
    GLOBAL $JOYINFO2 = DllStructCreate($str)
    if @error Then
    MsgBox(0,"Erro","Erro criando a strutura1: " & @error);
    exit 0
    endif

    ;chama o contador de tempo
    $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if @error Then
    MsgBox(0,"Erro","Erro chamando GettickCount: " & @error);
    exit 0
    endif

    ;cria a função callback
    $hCallBack = DllCallbackRegister("_TimerCallBackFunc", "none", "hwnd;int;int;dword")
    $iTimer1 = _WinAPI_SetTimer(0, $idTimer, 1, DllCallbackGetPtr($hCallBack))

    ;************************************************ rotina principal ************************************************** ************
    ;rotina para ler um arquivo ini, que irá conter o valor do Tempo Ocioso,...
    $iniTempo = IniRead("D:\Arcade\advmenu.ini", "TEMPO", "MINUTOS", "0")
    ;rotina para ler qual botão foi informado como Saida
    ;$iniBotao = IniRead( "timer.ini", "BOTOES", "SAIDA", "1" )
    $Sair = Number($iniBotao)



    ;rotina para chamar o mameui32.exe
    $Resultado = ShellExecute("mameui32.exe", $CmdLine[1], @ScriptDir)




    While 1
    ;pega os valores preenchidos pela função JoyGetPos
    $b0=DllStructGetData($JOYINFO0,"buttons")
    $b1=DllStructGetData($JOYINFO1,"buttons")
    $b2=DllStructGetData($JOYINFO2,"buttons")
    $x1=DllStructGetData($JOYINFO1,"x")
    $x2=DllStructGetData($JOYINFO2,"x")
    $y1=DllStructGetData($JOYINFO1,"y")
    $y2=DllStructGetData($JOYINFO2,"y")

    ;verifica se o botão sair foi pressionado
    ;If BitAND($b1, $Sair) Then
    ; $PID =ProcessExists("mameui32.exe")
    ; If $PID Then
    ; ProcessClose($PID)
    ; msgbox(0,"Pedido de saida","O botão Sair foi pressionado")
    ; ExitLoop
    ;Else
    ; msgbox(0,"Pedido de saida","O botão Sair foi pressionado, mas o emulador não foi localizado.")
    ; ExitLoop
    ;EndIf
    ; EndIf

    ;verifica o estado do joystick, se pressionado atualiza o tempo ocioso
    if ($b0 <> 0) Or ($b1 <> 0) Or ($b2 <> 0) Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $x0 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $x1 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $x2 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $y0 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $y1 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")
    if $y2 <> $JOY_CENTRO Then $TempoOcioso = DllCall("kernel32.dll", "int", "GetTickCount")

    ;testa o tempo ocioso, se alcansado fecha o emulador e sai
    $TempoAtual = DllCall("kernel32.dll", "int", "GetTickCount")
    if ($TempoAtual[0] - $TempoOcioso[0] ) > (Number($iniTempo) * 1000) then
    FECHAEMULADOR()

    ExitLoop
    ;EndIf
    EndIf
    WEnd

    ;finaliza o timer, a função callback, libera a memoria alocada pelas estruturas
    _WinAPI_KillTimer(0, $iTimer1)
    DllCallbackFree($hCallBack)
    $JOYINFO0 =0
    $JOYINFO1 =0
    $JOYINFO2 =0
    Exit 0
    ;************************************************* ****** fim ************************************************** *******************

    Func _WinAPI_SetTimer($hWnd, $iIDEvent, $iElapse, $pTimerFunc = 0)
    Local $iResult = DllCall("user32.dll", "int", "SetTimer", "hwnd", $hWnd, "int", $iIDEvent, "int", $iElapse, "ptr", $pTimerFunc)
    If @error Then Return SetError(-1, -1, 0)
    Return $iResult[0]
    EndFunc ;==>_WinAPI_SetTimer

    Func _WinAPI_KillTimer($hWnd, $iIDEvent)
    Local $iResult = DllCall("user32.dll", "int", "KillTimer", "hwnd", $hWnd, "int", $iIDEvent)
    If @error Then Return SetError(-1, -1, 0)
    Return $iResult[0] <> 0
    EndFunc ;==>_WinAPI_KillTimer

    ;função callback, testa o estado de 2 joystick
    Func _TimerCallBackFunc($hWnd, $Msg, $iIDTimer, $dwTime)
    local $Rjoy0=DllCall("winmm.dll", "int", "joyGetPos", "int", $uJoyID0, "ptr", DllStructGetPtr($JOYINFO0))
    local $Rjoy1=DllCall("winmm.dll", "int", "joyGetPos", "int", $uJoyID1, "ptr", DllStructGetPtr($JOYINFO1))
    local $Rjoy2=DllCall("winmm.dll", "int", "joyGetPos", "int", $uJoyID2, "ptr", DllStructGetPtr($JOYINFO2))
    EndFunc ;==>_TimerCallBackFunc
    http://www.arcadebr.com/threads/4108...namento+teclas
    "nós devemos amar nossos inimigos"


  13. #13
    Jogador de Sonic the Hedgehog (1991) Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Avatar de Wilson755
    Data de Ingresso
    02/2018
    Localização
    Macatuba/SP
    Posts
    160
    Posts de Blog
    2
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    35

    Cool Re: timer para sair do jogo

    Citação Postado originalmente por amaral Ver Post
    se não usa joytokey ou um teclado desmontado amigo aconselho a esquecer esse script tem outro ai que funciona com teclas de joystick vou dar uma olhad ase eu achar posto aqui o exemplo

    amigo achei a função e essa


    http://www.arcadebr.com/threads/4108...namento+teclas
    Valeu @amaral .

  14. #14
    Jogador de Sonic the Hedgehog (1991) Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Avatar de Wilson755
    Data de Ingresso
    02/2018
    Localização
    Macatuba/SP
    Posts
    160
    Posts de Blog
    2
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    35

    Cool Re: timer para sair do jogo

    @amaral .
    Eu adaptei o script para minha máquina, porém ele abre o emulador e fecha logo em seguida.

    Será que poderia me ajudar???

    Os arquivos .ini estão na pasta do advmenu.

    O timer.ini está assim
    [OCIOSO]
    TEMPO=60000

    O advmenu.ini está assim
    [FICHEIRO]
    FICHAS=128
    CONTADOR=381

    [CONFIGURACAO]
    TEMPOPORFICHA=60000
    BLOQUEADO=YES

    Segue o script.

    Spoiler!

  15. #15
    > Moderador amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio amaral Ótima reputação além de muito prestígio Avatar de amaral
    Data de Ingresso
    02/2010
    Localização
    Nova Iguaçu
    Posts
    4.226
    Mentioned
    451 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    331

    Re: timer para sair do jogo

    conferi aqui o script tem varios erros quando abrir o script aperte ctrl e f5 que vai ver os erros
    "nós devemos amar nossos inimigos"


  16. #16
    Jogador de Sonic the Hedgehog (1991) Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Avatar de Wilson755
    Data de Ingresso
    02/2018
    Localização
    Macatuba/SP
    Posts
    160
    Posts de Blog
    2
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    35

    Re: timer para sair do jogo

    Desse macete eu não sabia. Vou acertar aqui.
    Valeu @amaral

  17. #17
    Jogador de Sonic the Hedgehog (1991) Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Wilson755 Seu nome é conhecido por todos Avatar de Wilson755
    Data de Ingresso
    02/2018
    Localização
    Macatuba/SP
    Posts
    160
    Posts de Blog
    2
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Reputação
    35

    Re: timer para sair do jogo

    Citação Postado originalmente por amaral Ver Post
    conferi aqui o script tem varios erros quando abrir o script aperte ctrl e f5 que vai ver os erros
    Corrigi algumas coisa que foram muitas e tirei esses comandos

    Spoiler!


    Ai funcionou.
    Fiquei quase uma semana quebrando a cabeça.
    O bom é que aprendi mais coisas de Autoit. Valeu a pena.

+ Responder ao Tópico

Tópicos Similares

  1. Ao sair do jogo, Emulador aparece na tela.
    Por youko2043 no fórum Configurações de frontend's
    Respostas: 8
    Último Post: 01/06/2015, 21:11
  2. Sair do jogo pressionando uma determinada tecla por 3 segundos
    Por sr p no fórum Dúvidas sobre a compilação
    Respostas: 24
    Último Post: 30/04/2014, 07:14
  3. Sair do Jogo Segurando start!!!!
    Por slipcarliknot no fórum ADVMENU
    Respostas: 53
    Último Post: 23/07/2012, 00:46
  4. Comando para que o jogo nao sair exit???
    Por vargas310 no fórum Pedidos de ajuda e dúvidas com autoit (Suporte)
    Respostas: 20
    Último Post: 12/09/2010, 04:14
  5. Respostas: 5
    Último Post: 10/05/2010, 05:51

Tags para este Tópico

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  • BB Code está Ligado
  • Smilies estão Ligados
  • Código [IMG] está Ligado
  • Código HTML está Desligado