Compartilhe
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 378
Reputação : 92
Desde : 07/03/2017
Localização : BH - MG
Link : http://emcodigo.blogspot.com.br/
Ver perfil do usuáriohttp://asvezesanime.blogspot.com.br/

Duvida: Como saber se um script externo já esta rodando?

em Dom 21 Maio 2017, 00:09
Ao usa o comando STREAM_CUSTOM_SCRIPT, é possível saber de o tal script ja esta sendo executado? A questão é que eu queria que só pudesse o executar novamente caso o anterior tenha sido terminado (ONO)

fragmento de codigo:
Código:

...
                IF IS_KEY_PRESSED VK_KEY_1
                AND DOES_CHAR_EXIST poke_char
                    READ_MEMORY pFORCE 1 0 temp_i
                    READ_MEMORY pTYPE 1 0 temp_ii
                    READ_MEMORY pATTACK1 1 0 temp_iii
                    GET_LABEL_POINTER buffer_string_temp pTemp
                    STRING_FORMAT pTemp "Pokemon SA/Attacks/attack_%d.cs" temp_iii
                    READ_MEMORY pLEVEL 1 0 temp_iii
                    IF DOES_FILE_EXIST $pTemp
                        STREAM_CUSTOM_SCRIPT $pTemp poke_char (temp_i temp_ii temp_iii) //-- external
                    ENDIF
                    WHILE IS_KEY_PRESSED VK_KEY_1
                        WAIT 0
                    ENDWHILE
                ENDIF
...
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 272
Reputação : 6
Desde : 20/12/2016
Localização : Unidade Federal do Leste
Link : 127.0.0.1:80
Ver perfil do usuário

Re: Duvida: Como saber se um script externo já esta rodando?

em Dom 21 Maio 2017, 01:43
0A92 também é condicional. Você pode chamá-lo condicionalmente. É possível saber se esse foi iniciado com sucesso. Você pode usar 0AAA, com nome truncado à 7 caracteres, para verificar. Bem, visivelmente, não há garantias disto funcionar fino.
Há outros métodos que eu uso, mas estes são menos amistosos, tais como verificar algo no bytecode do script. Caso não haja qualquer outro thread compartilhando do mesmo bytecode, é um dos mais seguros métodos.

______________________________
Especificações de hardware:
PC AMD FX Octa Core de 4.0GHz (OC), com GPU AMD Radeon de VRAM de 2GB, RAM de 8GB, HDD de 1TB, e fonte de alimentação ATX de 750W. Sequestrado por tempo indeterminado pelo TRIBUNAL DE JUSTIÇA DO ESTADO DO ESPÍRITO SANTO. É para tomar meus bens que pago impostos nessa aldeia chamada Brasil. YUNO

avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 378
Reputação : 92
Desde : 07/03/2017
Localização : BH - MG
Link : http://emcodigo.blogspot.com.br/
Ver perfil do usuáriohttp://asvezesanime.blogspot.com.br/

Re: Duvida: Como saber se um script externo já esta rodando?

em Dom 21 Maio 2017, 13:17
Eu j usava o TERMINATE_THIS_CUSTOM_SCRIPT, mesmo assim empilhava scripts antes de serem terminados.

Eu dei um jeitinho aqui assim...

pressiono a tecla e o script externo é executado, enquanto eu segurar a tecla o script atual se manterá parado e o externo estará ativo. Não poderei iniciar novos scripts externos enquanto a tecla estiver pressionada.

Fragmento - Script principal:

Código:

...
STREAM_CUSTOM_SCRIPT {src}
WHILE IS_KEY_PRESSED VK_KEY_1
 OR IS_KEY_PRESSED VK_KEY_2
 WAIT 0
ENDWHILE
...

Se eu soltar a tecla o script externo sera encerrado e o script principal continuara de onde tinha parado
Fragmento - Script externo:

Código:

...
WHILE IS_KEY_PRESSED VK_KEY_1
OR IS_KEY_PRESSED VK_KEY_2
 WAIT 0
ENDWHILE
TERMINATE_THIS_CUSTOM_SCRIPT
...

Bem simples.

Ainda estou avaliando, mas tem funcionado bem até agora (BG)
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21852
Reputação : 666
Desde : 03/05/2012
Idade : 21
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: Duvida: Como saber se um script externo já esta rodando?

em Dom 21 Maio 2017, 13:52
Como o Arthropod disse, o 0AAA serve, eu uso várias vezes no MixSets. 100%

Daí é só botar SCRIPT_NAME pra dar um nome pro seu outro script (máximo 7 carácteres), assim fica mais seguro também, daí você simplesmente pega o ponteiro desse script com o 0AAA e checa se o ponteiro é diferente de 0.

______________________________

Mestre3224 voltou, ainda há esperanças no Youtube.
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 378
Reputação : 92
Desde : 07/03/2017
Localização : BH - MG
Link : http://emcodigo.blogspot.com.br/
Ver perfil do usuáriohttp://asvezesanime.blogspot.com.br/
  • Reputação da mensagem: 100% (1 votos)

Re: Duvida: Como saber se um script externo já esta rodando?

em Dom 21 Maio 2017, 18:55
Valeu!

Com isto já da para deixar mais seguro o que estou tentando fazer. (BG)

Nome do comando
0AAA = GET_SCRIPT_STRUCT_NAMED
Conteúdo patrocinado

Re: Duvida: Como saber se um script externo já esta rodando?

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum