Compartilhe
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 9
Reputação : 0
Desde : 18/12/2016
Idade : 15
Localização : Várzea Paulista - São Paulo
Ver perfil do usuário

Otimizações em um código

em Sex 12 Maio 2017, 13:49
Gostaria de que vocês pudessem avaliar esse simples mod que eu acabei fazendo para uso pessoal. A função dele é basicamente armazenar em 5 slots 5 coordenadas diferentes. Seja elas pegas de maneira única ou coletiva.

Spoiler:

Código:
SCRIPT_START
{
NOP

LVAR_INT scplayer
LVAR_FLOAT coord[24]

main_loop:
WAIT 0

GET_PLAYER_CHAR 0 scplayer
GET_CHAR_COORDINATES scplayer coord[0] coord[1] coord[2]
GET_CHAR_COORDINATES scplayer coord[3] coord[4] coord[5]
GET_CHAR_COORDINATES scplayer coord[6] coord[7] coord[8]
GET_CHAR_COORDINATES scplayer coord[9] coord[10] coord[11]
GET_CHAR_COORDINATES scplayer coord[12] coord[13] coord[14]

//--SLOT 1--
    IF TEST_CHEAT "1coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[0]
        WRITE_FLOAT_TO_INI_FILE coord[0] "cleo/coordinates.ini" "Coordinates" "X"
        
    ENDIF

    IF TEST_CHEAT "1coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[1]
        WRITE_FLOAT_TO_INI_FILE coord[1] "cleo/coordinates.ini" "Coordinates" "Y"
        
    ENDIF

    IF TEST_CHEAT "1coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[2]
        WRITE_FLOAT_TO_INI_FILE coord[2] "cleo/coordinates.ini" "Coordinates" "Z"
        
    ENDIF

    IF TEST_CHEAT "1allcoord"
        PRINT_FORMATTED_NOW "X=%d Y=%d X=%d" 850 coord[0] coord[1] coord[2]
        WRITE_FLOAT_TO_INI_FILE coord[0] "cleo/coordinates.ini" "Coordinates" "X"
        WRITE_FLOAT_TO_INI_FILE coord[1] "cleo/coordinates.ini" "Coordinates" "Y"
        WRITE_FLOAT_TO_INI_FILE coord[2] "cleo/coordinates.ini" "Coordinates" "Z"
        
    ENDIF
//--SLOT 1--

//--SLOT 2--
    IF TEST_CHEAT "2coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[3]
        WRITE_FLOAT_TO_INI_FILE coord[3] "cleo/coordinates.ini" "Coordinates2" "X"
        
    ENDIF

    IF TEST_CHEAT "2coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[4]
        WRITE_FLOAT_TO_INI_FILE coord[4] "cleo/coordinates.ini" "Coordinates2" "Y"
        
    ENDIF

    IF TEST_CHEAT "2coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[5]
        WRITE_FLOAT_TO_INI_FILE coord[5] "cleo/coordinates.ini" "Coordinates2" "Z"
        
    ENDIF

    IF TEST_CHEAT "2allcoord"
        PRINT_FORMATTED_NOW "X=%d Y=%d X=%d" 850 coord[3] coord[4] coord[5]
        WRITE_FLOAT_TO_INI_FILE coord[3] "cleo/coordinates.ini" "Coordinates2" "X"
        WRITE_FLOAT_TO_INI_FILE coord[4] "cleo/coordinates.ini" "Coordinates2" "Y"
        WRITE_FLOAT_TO_INI_FILE coord[5] "cleo/coordinates.ini" "Coordinates2" "Z"
        
    ENDIF
//--SLOT 2--

//--SLOT 3--
    IF TEST_CHEAT "3coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[6]
        WRITE_FLOAT_TO_INI_FILE coord[6] "cleo/coordinates.ini" "Coordinates3" "X"
        
    ENDIF

    IF TEST_CHEAT "3coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[7]
        WRITE_FLOAT_TO_INI_FILE coord[7] "cleo/coordinates.ini" "Coordinates3" "Y"
        
    ENDIF

    IF TEST_CHEAT "3coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[8]
        WRITE_FLOAT_TO_INI_FILE coord[8] "cleo/coordinates.ini" "Coordinates3" "Z"
        
    ENDIF

    IF TEST_CHEAT "3allcoord"
        PRINT_FORMATTED_NOW "X=%d Y=%d X=%d" 850 coord[6] coord[7] coord[8]
        WRITE_FLOAT_TO_INI_FILE coord[6] "cleo/coordinates.ini" "Coordinates3" "X"
        WRITE_FLOAT_TO_INI_FILE coord[7] "cleo/coordinates.ini" "Coordinates3" "Y"
        WRITE_FLOAT_TO_INI_FILE coord[8] "cleo/coordinates.ini" "Coordinates3" "Z"
        
    ENDIF
//--SLOT 3--

//--SLOT 4--
    IF TEST_CHEAT "4coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[9]
        WRITE_FLOAT_TO_INI_FILE coord[9] "cleo/coordinates.ini" "Coordinates4" "X"
        
    ENDIF

    IF TEST_CHEAT "4coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[10]
        WRITE_FLOAT_TO_INI_FILE coord[10] "cleo/coordinates.ini" "Coordinates4" "Y"
        
    ENDIF

    IF TEST_CHEAT "4coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[11]
        WRITE_FLOAT_TO_INI_FILE coord[11] "cleo/coordinates.ini" "Coordinates4" "Z"
        
    ENDIF

    IF TEST_CHEAT "4allcoord"
        PRINT_FORMATTED_NOW "X=%d Y=%d X=%d" 850 coord[9] coord[10] coord[11]
        WRITE_FLOAT_TO_INI_FILE coord[9] "cleo/coordinates.ini" "Coordinates4" "X"
        WRITE_FLOAT_TO_INI_FILE coord[10] "cleo/coordinates.ini" "Coordinates4" "Y"
        WRITE_FLOAT_TO_INI_FILE coord[11] "cleo/coordinates.ini" "Coordinates4" "Z"
        
    ENDIF
//--SLOT 4--

//--SLOT 5--
    IF TEST_CHEAT "5coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[12]
        WRITE_FLOAT_TO_INI_FILE coord[12] "cleo/coordinates.ini" "Coordinates5" "X"
        
    ENDIF

    IF TEST_CHEAT "5coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[13]
        WRITE_FLOAT_TO_INI_FILE coord[13] "cleo/coordinates.ini" "Coordinates5" "Y"
        
    ENDIF

    IF TEST_CHEAT "5coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[14]
        WRITE_FLOAT_TO_INI_FILE coord[14] "cleo/coordinates.ini" "Coordinates5" "Z"
        
    ENDIF

    IF TEST_CHEAT "5allcoord"
        PRINT_FORMATTED_NOW "X=%d Y=%d X=%d" 850 coord[12] coord[13] coord[14]
        WRITE_FLOAT_TO_INI_FILE coord[12] "cleo/coordinates.ini" "Coordinates5" "X"
        WRITE_FLOAT_TO_INI_FILE coord[13] "cleo/coordinates.ini" "Coordinates5" "Y"
        WRITE_FLOAT_TO_INI_FILE coord[14] "cleo/coordinates.ini" "Coordinates5" "Z"
        
    ENDIF
//--SLOT 5--

GOTO main_loop
}
SCRIPT_END

Digam-me os defeitos, ou se há como otimizar algo. Estou fazendo do jeito certo? Grato.
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 914
Reputação : 28
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: Otimizações em um código

em Sex 12 Maio 2017, 13:52
Você criou 24 variáveis, só utilizou 14, você pegou as coordenadas do CJ 5 vezes, apenas 1 é necessária.

De resto tá bom.

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21864
Reputação : 676
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: Otimizações em um código

em Sex 12 Maio 2017, 18:29
É o que o mathnoobsxx disse, não fez sentido esse negócio de pegar a mesma coordenada várias vezes em um monte de variáveis diferentes, é só pegar uma.

E você está mostrando na tela em "%d", o que é decimal usado pra números inteiros. Você tem que usar "%f"

______________________________

avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 499
Reputação : 102
Desde : 07/03/2017
Localização : BH - MG
Ver perfil do usuário

Re: Otimizações em um código

em Sex 12 Maio 2017, 19:41
↓:
Código:

    IF TEST_CHEAT "1coordx"
        PRINT_FORMATTED_NOW "X = %d" 850 coord[0]
        WRITE_FLOAT_TO_INI_FILE coord[0] "cleo/coordinates.ini" "Coordinates" "X"
       
    ENDIF
 
    IF TEST_CHEAT "1coordy"
        PRINT_FORMATTED_NOW "Y = %d" 850 coord[1]
        WRITE_FLOAT_TO_INI_FILE coord[1] "cleo/coordinates.ini" "Coordinates" "Y"
       
    ENDIF
 
    IF TEST_CHEAT "1coordz"
        PRINT_FORMATTED_NOW "Z = %d" 850 coord[2]
        WRITE_FLOAT_TO_INI_FILE coord[2] "cleo/coordinates.ini" "Coordinates" "Z"
       
    ENDIF

Posso esta errado, mas acho que pegar coordenadas assim seja errado, uma vez que só pode considerar coordenadas se tiver no minimo dois pontos de referencia (HMM)

______________________________

.::
Os mods que crio serão colocados no meu workshop link
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21864
Reputação : 676
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: Otimizações em um código

em Sex 12 Maio 2017, 19:48
↑ é que ele não sabe como guardar X Y Z tudo ao mesmo tempo (o que é meio saco mesmo).

______________________________

avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : ;-;
Mensagens : 676
Reputação : 111
Desde : 22/09/2015
Idade : 19
Localização : Salvador - BA
Ver perfil do usuário

Re: Otimizações em um código

em Sex 12 Maio 2017, 23:36
Haviam formas MUITO mais simples e práticas de fazer o mesmo, mas fora os erros que já mencionaram, ficou bom. :)

______________________________
" Everyone gonna remember my name ! "
Conteúdo patrocinado

Re: Otimizações em um código

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