Pesquisa resultou em 3 ocorrências

por Junior_Djjr
20 Mai 2018, 18:07
Fórum: Utilidades
Tópico: [GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"
Respostas: 13
Exibições: 1749
Gênero:

[GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"

SHIFAAH9 escreveu: but in GTA3sc tutorial its different?
Yes, but also cited as an option.
por Junior_Djjr
26 Abr 2018, 02:24
Fórum: Utilidades
Tópico: [GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"
Respostas: 13
Exibições: 1749
Gênero:

"WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE" para GTA3script

Stealth760 escreveu: Estranho ninguém ter falado nada, eu gostei mais desse método, vou começar a usar :wesmart:
Também parece que poucos usam. Eu acho que todos deviam usar, ser um padrão.
por Junior_Djjr
21 Abr 2018, 02:33
Fórum: Utilidades
Tópico: [GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"
Respostas: 13
Exibições: 1749
Gênero:

[GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"

Se você não conhece GTA3script, aprenda.

Mude a maneira como seus scripts do GTA3script são criados.

Código: Selecionar tudo

SCRIPT_START
{
NOP

WHILE TRUE
    WAIT 0
    PRINT_STRING_NOW A 2000
    IF GOSUB CheckKey
        BREAK
    ENDIF
ENDWHILE
PRINT_STRING_NOW B 2000
TERMINATE_THIS_CUSTOM_SCRIPT

CheckKey:
IF IS_KEY_PRESSED VK_KEY_Y
    RETURN_TRUE
ELSE
    RETURN_FALSE
ENDIF
RETURN
}
SCRIPT_END

Em vez de

Código: Selecionar tudo

main_loop:
GOTO main_loop
Você pode usar como outras programações (inclusive Sanny Builder):

Código: Selecionar tudo

WHILE TRUE
ENDWHILE
Assim como os comandos RETURN_TRUE (originalmente IS_PC_VERSION) e RETURN_FALSE (originalmente IS_AUSTRALIAN_GAME).
Os originais continuam funcionando, portanto você continua podendo compilar scripts antigos.

Lembrando também que você pode usar BREAK (para quebrar o loop) e CONTINUE (para retornar ao início do loop) colocando a configuração -fbreak-continue no seu arquivo de configurações.

Como instalar:
Vá até a pasta do compilador do gta3sc que você baixou (onde tem o gta3sc.exe);
Abra o arquivo config\gtasa\commands.xml (pode ser outro .xml, caso preferir).
No fim, antes de <‎/‎Commands‎>, adicione as seguintes linhas:

Código: Selecionar tudo

<Command ID="0x485" Name="TRUE"/>
<Command ID="0x485" Name="RETURN_TRUE"/>
<Command ID="0x59a" Name="RETURN_FALSE"/>
Ficando assim:
Imagem
E já está pronto, pode tentar compilar o script acima.

Isso funciona simulando isto:

Código: Selecionar tudo

WHILE IS_PC_VERSION
Portanto sempre retorna verdadeiro e o loop nunca se quebra, até encontrar um BREAK.
Eu simplesmente mudei o nome dos comandos, nada mais. RETURN_TRUE e RETURN_FALSE eram presentes no GTA Vice City e GTA III, mas não mais no GTA SA, então vamos re-colocá-los.
WHILE TRUE não é presente, o script do jogo foi feito utilizando labels.

Voltar para “[GTA3script] "WHILE TRUE", "RETURN_TRUE" e "RETURN_FALSE"”