Sobre CLEO

    Compartilhe
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 23 Out 2015, 21:51

    @israel escreveu:Pronto, fiz do jeito que o Djjr disse, eu acho.
    Mas eu NÃO disse pra usar o delta time pokerface
    Eh sem sentido (e ineficaz, jah q o delta time do GTA SA é ruim), faz muito mais sentido fazer como eu falei, vc fazer esperar está "apostando" q dará certo, mas se vc fazer como eu falei o script soh irá continuar quando dar certo


    ____________________
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sex 23 Out 2015, 21:55

    if not 5@ >= 4.0
    jf break
    until 003B:
    4@ == 3@

    Ele ta verificando os dois, ele da um tempo maximo e da um break e se por acaso o ator se tornar motorista do carro da o break tbm... Ele usou as duas



    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sex 23 Out 2015, 22:01

    Então eu não entendi direito o que você quis dizer.

    Código:
    repeat
        wait 0
        0079: 5@ += frame_delta_time * 0.1 // (float) // (num limite de tempo, pra caso alguma coisa ocorra e ele não consiga mudar o banco assim o script não ficaria loopando pra sempre)
        if not 5@ >= 4.0
        jf break
    until 003B:   4@ == 3@ // fazer o script loopar esperando até o ator ir até o outro banco
    Eu achei que era isso. pokerface
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 23 Out 2015, 22:30

    Há erro de lógica ai, de onde vem esse 3@?

    Se por exemplo a 4@ é 10 e 3@ é 5, quando entrar no loop, ambas as vars sempre serão isso, afinal, pq elas mudariam de valor? wat elas ficam loopando ali, não há nada q faça elas mudarem de valor

    Vc precisa pegar o ator dentro desse mini-loop ai, pra soh assim conseguir comparar e saber se realmente mudou de banco
    Lah dentro do loop ficar pegando quem está no motorista, e se for o msm, tudo ok (sim, eh uma coisa extremamente simples, soh falta isso...)

    Dae tbm ficar checando se o carro está definido neh, pois vc irá pegar o motorista do carro, se ele sumiu irá crashar (o ator não precisa checar se tah definido, pois vc soh estará usando o "valor" dele, vc não estará mexendo com ele, então não há problema de crash aqui)


    ____________________
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sex 23 Out 2015, 22:49

    Assim ?
    Código:
    {$Cleo}
    0000: Israel
    while true  
        wait 0
        0A8D: 1@ = read_memory 0xB74494 size 4 vp 0
        1@ += 4
        0A8D: 1@ = read_memory 1@ size 4 vp 0
        for 2@ = 0 to 27904 step 256
            0A8D: 0@ = read_memory 1@ size 1 vp 0
            1@ += 1
            if and
                0@ >= 0
                0@ < 128
            then                                                        
                005A: 0@ += 2@
                046C: 3@ = car 0@ driver
                01E9: 4@ = car 0@ num_passengers
                if and
                    856D:   not actor 3@ defined
                    4@ > 0
                    8431:   not car 0@ passenger_seat_free 0        
                jf continue        
                0432: 4@ = get_actor_handle_from_car 0@ passenger_seat 0
                0676: AS_actor 4@ in_car 0@ move_from_passengerseat_to_driverseat
                5@ = 0      
                repeat
                    wait 0
                    056E:   car 0@ defined
                    jf break                
                    046C: 3@ = car 0@ driver
                                    
                    0079: 5@ += frame_delta_time * 0.1 // (float)                
                    if not 5@ >= 4.0
                    jf break                
                until 003B:   4@ == 3@
            end
        end    
    end


    Última edição por israel em Qua 25 Nov 2015, 14:33, editado 1 vez(es)


    ____________________
    " Everyone gonna remember my name ! "
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sab 24 Out 2015, 02:48

    sim, parece estar tudo ok agr :v:


    ____________________
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sab 24 Out 2015, 06:28

    Ta lindo *u* e agr q eu tenho o "+" tome um


    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sab 24 Out 2015, 12:48

    @RenanMSV escreveu:Ta lindo *u* e agr q eu tenho o "+" tome um
    Vlw. :)


    Eu tentei fazer um script pra corrigir essa loucura, mas não consegui :
    Quando você mata alguém que está dirigindo, ele (morto) abre a porta do carro e cai no chão. pokerface


    Última edição por israel em Sab 24 Out 2015, 15:59, editado 1 vez(es)
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sab 24 Out 2015, 13:51

    Eu ja vi um que faz isso, ele faz eles ficarem como se tivessem sido explodidos. Inclusive vi aqui no forum mas n lembro onde


    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sab 24 Out 2015, 15:58

    Era exatamente assim que eu queria fazer, mas depois vi que já existe.
    MixMods
    @Edit
    Eu não sabia como fazer. Abri esse ai no SB e vi o opcode '0982:  set_actor 3@ stay_in_car_when_dead 1'. Como não achei isto @_@.

    Mas o script pega todos os atores usando o mesmo método pesado que eu tava usando pra pegar todos os carros.
    Código:
    0AE1: 3@ = random_actor_near_point 0@ 1@ 2@ in_radius 300.0 find_next 0 pass_deads 0 //IF and SET
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Dom 25 Out 2015, 02:51

    O que precisaria corrigir:

    Tipo, não eh realista de maneira alguma, alguém por acaso jah viu alguém pulando desse jeito caso um carro passar perto? Ainda mais as velhinhas pulando pqp, e ainda pulando errado, e ainda pulando quando vc soh passa devagar perto da pessoa
    Deveria ser feito um script q remove totalmente essa animação e coloca algum desvio  com o ped correndo em direção aposta da direção em q o carro está indo, como o Cars Divert, mas os msms cálculos não se encaixarão de maneira alguma

    O difícil, pra mim, eh fazer o ped saber pra qual caminho ele deve ir pra desviar do carro, e caso o carro mudar de direção, ele ir pro lado oposto pra tentar desviar pro outro lado (se não fazer isso o mod seria inútil, afinal, essa eh a pior coisa desse pulo, as pessoas pulando pra um lado, dae vc vai praquele lado q ela pulou e acaba atropelando ela sem querer..... fazendo desviar de maneira inteligente irá ficar foda)

    Deve precisar de uma boa matemática, ou uma simples mas ótima lógica (na qual eu ainda não consegui pensar em uma, todas as q pensei ou são complicadas ou ineficientes (tendências a falhar))
    Ah, e claro, pra início:
    Código:
    if 0611:   actor 2@ performing_animation "EV_dive"

    Pra ter noção, passei dias formulando métodos para checar aquela correção dos carros enfiados no chão no Real Traffic Fix. Vários métodos podiam ser usados, como checar quais pneus estão em contato com o chão e se o carro está sofrendo colisão no "centro" dele, ou checando se há colisão embaixo da roda de trás ou da frente e talz... mas o melhor método q achei foi de checar se a coordenada Z da frente ou atrás era 0.0, no caso, o submundo, oq funcionou muitíssimo bem, mas isso não funciona caso o carro esteja em cima de uma ponte... foda


    ____________________
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Qua 28 Out 2015, 23:19

    Template pra mod bilíngue q usa endereços de memória e .ini, ripado do Tuning Mod:

    Código:
    {$cleo}
    gosub @CheckAndRead


    while true
        wait 0
        if 0AB1: call_scm_func @IsLanguageEnglish 0
        then 0ACD: show_text_highpriority "~y~Working" time 2000
        else 0ACD: show_text_highpriority "~y~Funcionando" time 2000
        end
    end




    // ---------- Labels ---------- //

    :CheckAndRead 
    while not player.Defined(0)
        wait 0
    end

    if 8AAB:  not file_exists "cleo\ARQUIVO.ini"
    then 
        32@ = 0
        while 32@ < 10000
            wait 0   
            0ACD: show_text_highpriority "~r~(EN)Error: Fail to load.~n~(PT)Erro: Falha ao carregar.~n~'CLEO\ARQUIVO.ini'" time 1000
        end   
        0A93: end_custom_thread
    end

    0AC6: 32@ = label @Language offset
    if 0AF0: 33@ = get_int_from_ini_file "cleo\ARQUIVO.ini" section "CONFG" key "Language"
    then 0A8C: write_memory 32@ size 1 value 33@ vp 0
    else
        32@ = 0
        while 32@ < 10000
            wait 0
            0ACD: show_text_highpriority "~r~(EN)Error: Fail to read 'Language' in 'ARQUIVO.ini'~n~(PT)Erro: Falha ao ler 'Language' no 'ARQUIVO.ini'" time 1000
        end 
        0A93: end_custom_thread
    end
       
    0AB1: call_scm_func @Get_EXE_version_ID 0 get_version_number_to 0@

    if 0@ == -1 //unknown
    then
        32@ = 0
        while 32@ < 10000
            wait 0           
            if 0AB1: call_scm_func @IsLanguageEnglish 0
            then 0ACD: show_text_highpriority "~r~Error: Unknown .exe.~n~Use Crack 1.0 US and never leave your GTA SA folder inside Program Files." time 1000
            else 0ACD: show_text_highpriority "~r~Erro: .exe desconhecido.~n~Use o Crack 1.0 US e nunca deixe a pasta do seu GTA SA na Program Files." time 1000
            end
        end   
        0A93: end_custom_thread
    else
        if 0@ > 1 //not Crack 1.0 US
        then     
            32@ = 0
            while 32@ < 10000
                wait 0           
                if 0AB1: call_scm_func @IsLanguageEnglish 0
                then 0ACD: show_text_highpriority "~r~Error: .exe incompatible.~n~Download and use Crack 1.0 US" time 1000
                else 0ACD: show_text_highpriority "~r~Erro: .exe incompativel.~n~Baixe e use o Crack 1.0 US" time 1000
                end
            end
            0A93: end_custom_thread
        end
    end
    return



    // ---------- Funcs ---------- //

    // -- Function: Check Crack
    const
    VERSION_UNKNOWN = -1
    VERSION_1_0_US_CRACKED = 1
    VERSION_1_0_EURO_CRACKED = 2
    VERSION_1_0_EURO_ORIGINAL = 3
    VERSION_1_01_EURO_CRACKED = 4
    end
    :Get_EXE_version_ID
    0A8D: 33@ = read_memory 0x400088 size 1 vp 1
    0871: init_jump_table 33@ total_jumps 4 default_jump 0 @Get_EXE_version_ID_unknown jumps 0x8A @Get_EXE_version_ID_GTA_San_Andreas_v1_0_EURO_No_CD_Fixed_EXE 0xCA @Get_EXE_version_ID_GTA_San_Andreas_v1_0_US_HOODLUM_No_CD_Fixed_EXE 0xD0 @Get_EXE_version_ID_GTA_San_Andreas_v1_01_EURO_No_CD_Fixed_EXE 0xF9 @Get_EXE_version_ID_GTA_San_Andreas_v1_0_EURO_Original -1 @Get_EXE_version_ID_unknown -1 @Get_EXE_version_ID_unknown -1 @Get_EXE_version_ID_unknown

    :Get_EXE_version_ID_GTA_San_Andreas_v1_0_US_HOODLUM_No_CD_Fixed_EXE
    0AB2: ret 1 VERSION_1_0_US_CRACKED
    :Get_EXE_version_ID_GTA_San_Andreas_v1_0_EURO_No_CD_Fixed_EXE
    0AB2: ret 1 VERSION_1_0_EURO_CRACKED
    :Get_EXE_version_ID_GTA_San_Andreas_v1_0_EURO_Original
    0AB2: ret 1 VERSION_1_0_EURO_ORIGINAL
    :Get_EXE_version_ID_GTA_San_Andreas_v1_01_EURO_No_CD_Fixed_EXE
    0AB2: ret 1 VERSION_1_01_EURO_CRACKED                       
    :Get_EXE_version_ID_unknown
    0AB2: ret 1 VERSION_UNKNOWN


    // -- Function: Is English?
    :IsLanguageEnglish
    0AC6: 33@ = label @Language offset
    0A8D: 33@ = read_memory 33@ size 1 vp 0
    if 33@ == 2 //English
    0AB2: ret 0


    // ----- Thread Memory
    :Language
    hex
    00
    end


    Perceba q não ocupa nenhuma variável, checagens de arquivo e crack com boa mensagem na tela (assim evitando pessoas pedindo ajuda com coisas simples), e com a função "@IsLanguageEnglish" fica super simples adicionar 2 idiomas no mod :v:

    Perceba tbm q usei o texto em highpriority dentro de um while, um loop mostrando o texto sem parar, forçar o texto a aparecer na tela seja oq for, pois eh super importante, principalmente para quem inicia o jogo em new game e mais principalmente ainda quem usa legenda, esse tipo de mensagem em new game eh sempre falha, pois muita coisa não deixa o jogador ler ela, principalmente pelo fato das legendas, aparece a legenda em cima e remove a mensagem de erro...
    Então a melhor coisa a se fazer, eh um loop

    Usem esse template o quanto quiser, não precisa dar créditos pra mim


    ____________________
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Qui 29 Out 2015, 21:17

    Um cara na GTA Forums está criando novos opcodes

    http://gtaforums.com/topic/821402-reqdocsa-request-custom-opcodes

    Exemplo:
    Código:
    00BF: 0@ = current_time_hours, 1@ = current_time_minutes
    0AD3: 2@v = format "%d hours %d minutes" 0@ 1@
    0BA0: TTS_say "<pitch middle="2">The time is"
    0BA0: TTS_say 2@v
    0BA0: TTS_say "<rate speed="-2"> Have a nice day!"
    Uma voz sintética falará a hora atual do jogo


    ____________________
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Qui 29 Out 2015, 23:45

    E aquele Anttweakbar ? :o
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 30 Out 2015, 00:09

    ↑ Acho q ownou a interface da Thayná

    Aquela interface foi inclusive usada na ENB Series, parece ser algum tipo de interface open source


    ____________________
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sex 30 Out 2015, 00:22

    Eu vejo muito falar dessa Thayná, mas nunca vi ela aqui no forum, mesmo em tópicos antigos. Você até ironizou perguntando se eu era parente dela. serious?
    @Junior_Djjr escreveu:Um cara na GTA Forums está criando novos opcodes

    http://gtaforums.com/topic/821402-reqdocsa-request-custom-opcodes

    Exemplo:
    Código:
    00BF: 0@ = current_time_hours, 1@ = current_time_minutes
    0AD3: 2@v = format "%d hours %d minutes" 0@ 1@
    0BA0: TTS_say "<pitch middle="2">The time is"
    0BA0: TTS_say 2@v
    0BA0: TTS_say "<rate speed="-2"> Have a nice day!"
    Uma voz sintética falará a hora atual do jogo
    Bem loko isso aí, apesar de continuar falando quando pausa. :)
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 30 Out 2015, 04:01

    @israel escreveu:Eu vejo muito falar dessa Thayná, mas nunca vi ela aqui no forum, mesmo em tópicos antigos. Você até ironizou perguntando se eu era parente dela. serious?
    Ela usou muito pouco o fórum
    Era uma ótima scripter cleo, me superou em soh 2/3 meses de estudo
    Código:
           
    /*
       Filename: GUI.txt
     Created: 03/12/2014
     Author: BLUE
    */

    const
        GTA_SCREEN_X = 640.0
        GTA_SCREEN_Y = 448.0
    end

    const

        //Font align type  
        DT_LEFT   =  0x00000000
        DT_CENTER =  0x00000001
        DT_RIGHT  =  0x00000002
                    
        //Font shadow type
        LEFT_TOP = 0x00000000
     RIGHT_BOTTOM = 0x00000001
     
     //Cursor type
     CURSOR_SET     = 0x00000000
     CURSOR_AERO_MOVE = 0x00000001
     CURSOR_HAND = 0x00000002
          
        //Element state
        Element_Deactivated = 0x00000000
        Element_Activated   = 0x00000001
        
        //NumericUpdown type
        Numeric_INT   = 0x00000000
        Numeric_FLOAT = 0x00000001
        
        //Element direction
        Element_Vertical   = 0x00000000
        Element_Horizontal = 0x00000001                                                          
    end  

    const
        // Date info
        GET_YEAR          = 0x0
        GET_MONTH         = 0x1
        GET_DAY_OF_WEEK   = 0x2
        GET_DAY           = 0x3
        GET_HOUR          = 0x4
        GET_MINUTE        = 0x5
        GET_SECOND        = 0x6
        GET_MILLI_SECONDS = 0x7
    end

    //0AB1: call_scm_func @DATEINFO 1 date GET_SECOND store_to 31@

    :DATEINFO
    if 0AA2: 30@ = load_library "kernel32.dll" // IF and SET
    then
        if 0AA4: 29@ = get_proc_address "GetLocalTime" library 30@ // IF and SET
        then  
            0AC6: 28@ = label @SYSTEMTIME offset
            0AA5: call 29@ num_params 1 pop 0 28@
            0@ *= 0x2
            005A: 28@ += 0@  // (int)
            0A8D: 28@ = read_memory 28@ size 2 virtual_protect 0
        end
        0AA3: free_library 30@
    end
    0AB2: ret 1 28@

    :SYSTEMTIME
    hex
        00 00
        00 00
        00 00
        00 00    
        00 00
        00 00  
        00 00
        00 00
    end

    {$INCLUDE Include\String.txt}
    {$INCLUDE Include\Stack.txt}

    {$INCLUDE Elements\Element.txt}
    {$INCLUDE Elements\Button.txt}
    {$INCLUDE Elements\Checkbox.txt}
    {$INCLUDE Elements\Dropdown.txt}
    {$INCLUDE Elements\Editbox.txt}
    {$INCLUDE Elements\Menu.txt}
    {$INCLUDE Elements\Numericupdown.txt}
    {$INCLUDE Elements\Progressbar.txt}
    {$INCLUDE Elements\Radiobutton.txt}
    {$INCLUDE Elements\Scrollbar.txt}
    {$INCLUDE Elements\Tabpanel.txt}
    {$INCLUDE Elements\Textbox.txt}
    {$INCLUDE Elements\Trackbar.txt}
    {$INCLUDE Elements\Window.txt}

    :CONVERT_GTA_SCREEN_TO_WINDOW_SCREEN
    4@ = true                              
                                  
    :CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN
    0A8D: 2@ = read_memory 0x00C17044 size 4 virtual_protect 0
    0A8D: 3@ = read_memory 0x00C17048 size 4 virtual_protect 0
    for 31@ = 0 to 1
        0093: 2@(31@,1i) = integer 2@(31@,1i) to_float
        if 31@ == 0
        then
            2@(31@,1i) /= GTA_SCREEN_X
        else
            2@(31@,1i) /= GTA_SCREEN_Y
        end                        
        if 4@ <> true
        then
            006B: 0@(31@,1i) *= 2@(31@,1i)  // (float)
        else
            0073: 0@(31@,1i) /= 2@(31@,1i) // (float)
        end
    end      
    0AB2: ret 2 0@ 1@

    :STRING_BUF
    hex
        000000000000000000000000000000000000000000000000000000000000000
        000000000000000000000000000000000000000000000000000000000000000
        000000000000000000000000000000000000000000000000000000000000000
        000000000000000000000000000000000000000000000000000000000000000
    end

    /********************************************************** DirectX API and GUI API ******************************************************************
    **
    **D3DX Font                    
    **      0AB1: call_scm_func @FONT__create 3 fontName 1@ bold true italic true store_to 28@
    **                  
    **      0AB1: call_scm_func @FONT__setOutline 5 size 3.0 color 255 0 0 255    
    **
    **      0AB1: call_scm_func @FONT__setShadow 6 size 1.0 shadowType 1 color 0 0 0 255
    **
    **      0AB1: call_scm_func @FONT__getStringWidth 2 hFont 28@ text 0@ store_to 23@
    **                      
    **      0AB1: call_scm_func @FONT__draw 11 hFont 28@ text 0@ posXY 320.0 214.0 sizeXY 0.3 0.5 align DT_LEFT color 255 255 255 255
    **
    **      0AB1: call_scm_func @FONT__release 1 hFont 28@
    **
    **D3DX Texture
    **      0AB1: call_scm_func @TEXTURE__create 1 texturePath 0@ hTexture_to 24@
    **
    **      0AB1: call_scm_func @TEXTURE__draw 10 hTexture 24@ posXY 320.0 144.0 sizeXY 100.0 100.0 rotation 0.0 color 255 255 255 255
    **
    **      0AB1: call_scm_func @TEXTURE__release 1 hTexture 28@
    **
    **D3DX Line
    **      0AB1: call_scm_func @DRAW__line 9 startXY 120.0 144.0 endXY 300.0 300.0 width 1.0 color 255 255 0 255                        
    **            
    **      0AB1: call_scm_func @DRAW__box 8 posXY 320.0 224.0 sizeXY 100.0 100.0 color 255 255 255 255
    **
    **      0AB1: call_scm_func @DRAW__outlinedBox 12 posXY 320.0 224.0 sizeXY 100.0 100.0 color 255 255 255 255 borderColor 0 0 0 255
    **
    **Cursor
    **      0AB1: call_scm_func @CURSOR__setPos 2 posXY 320.0 224.0
    **    
    **      0AB1: call_scm_func @CURSOR__getPos 0 store_to 1@ 2@
    **    
    **      0AB1: call_scm_func @CURSOR__setState 1 state Element_Activated
    **    
    **      0AB1: call_scm_func @CURSOR__getState 0 store_to 31@
    **    
    **      0AB1: call_scm_func @CURSOR__setType 1 type CURSOR_SET
    **    
    **      0AB1: call_scm_func @CURSOR__getType 0 store_to 31@
    **
    **Menu
    **      0AB1: call_scm_func @MENU__create 0 store_to 25@
    **    
    **      0AB1: call_scm_func @MENU__addItem 2 hMenu 25@ text 0@
    **    
    **      0AB1: call_scm_func @MENU__design 17 hMenu 25@ menuColor 255 255 255 255 textColor 0 0 0 255 textMouseOverColor 255 255 255 255 lineColor 100 0 0 255
    **    
    **      0AB1: call_scm_func @MENU__setState 2 hMenu 25@ state Element_Activated
    **    
    **      0AB1: call_scm_func @MENU__draw 5 hMenu 25@ posXY 320.0 14.0 width 100.0 MaxlinesOnScreen 23
    **    
    **      0AB1: call_scm_func @MENU__getRowSelected 1 hMenu 25@ store_to 31@
    **    
    **      0AB1: call_scm_func @MENU__getHeight 1 hMenu 25@ store_to 21@
    **    
    **      0AB1: call_scm_func @MENU__onClick 2 hMenu 25@ row 21@
    **  
    **      0AB1: call_scm_func @MENU__clearItems 1 hMenu 25@
    **    
    **      0AB1: call_scm_func @MENU__invalidate 1 hMenu 25@
    **
    **Button
    **      0AB1: call_scm_func @BUTTON__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @BUTTON__setState 2 hButton 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @BUTTON__onClick 1 hButton 22@
    **    
    **      0AB1: call_scm_func @BUTTON__draw 5 hButton 22@ posXY 320.0 14.0 width 0.0 text 0@
    **
    **      0AB1: call_scm_func @BUTTON__enable 2 hButton 22@ enable true
    **    
    **      0AB1: call_scm_func @BUTTON__invalidate 1 hButton 22@
    **
    **Textbox
    **      0AB1: call_scm_func @TEXTBOX__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @TEXTBOX__draw 9 hTextbox 25@ posXY 20.0 224.0 sizeXY 200.0 120.0 color 0 0 0 220
    **    
    **      0AB1: call_scm_func @TEXTBOX__addText 3 hTextbox 25@ text 0@ writeDate true
    **    
    **      0AB1: call_scm_func @TEXTBOX__setTitle 2 hTextbox 22@ title 1@
    **    
    **      0AB1: call_scm_func @TEXTBOX__clearTItems 1 hTextbox 22@
    **    
    **      0AB1: call_scm_func @TEXTBOX__setState 2 hTextbox 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @TEXTBOX__removeText 2 hTextbox 22@ text 1@
    **    
    **      0AB1: call_scm_func @TEXTBOX__invalidate 1 hTextbox 22@
    **
    **Scrollbar
    **      0AB1: call_scm_func @SCROLLBAR__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @SCROLLBAR__draw 4 hScrollbar 22@ posXY 320.0 224.0 scale 100.0
    **    
    **      0AB1: call_scm_func @SCROLLBAR__SetDirection 2 hScrollbar 22@ direction Element_Horizontal
    **    
    **      0AB1: call_scm_func @SCROLLBAR__SetValue 2 hScrollbar 22@ value 10.0
    **    
    **      0AB1: call_scm_func @SCROLLBAR__SetMaxValue 2 hScrollbar 22@ maxValue 100.0
    **    
    **      0AB1: call_scm_func @SCROLLBAR__getValue 1 hScrollbar 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @SCROLLBAR__setState 2 hScrollbar 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @SCROLLBAR__setScrollerWithMouseWheel 2 hScrollbar 22@ scroller true
    **    
    **      0AB1: call_scm_func @SCROLLBAR__clicked 1 hScrollbar 22@
    **  
    **      0AB1: call_scm_func @SCROLLBAR__invalidate 1 hScrollbar 22@
    **
    **EditBox
    **      0AB1: call_scm_func @EDITBOX__create 0 store_to 23@
    **    
    **      0AB1: call_scm_func @EDITBOX__draw 4 hEditBox 23@ posXY 320.0 224.0 maxChars 50
    **    
    **      0AB1: call_scm_func @EDITBOX__setState 2 hEditBox 23@ state true
    **    
    **      0AB1: call_scm_func @EDITBOX__getText 1 hEditBox 23@ store_to 11@
    **    
    **      0AB1: call_scm_func @EDITBOX__setText 2 hEditBox 23@ text 1@
    **    
    **      0AB1: call_scm_func @EDITBOX__setJustNum 2 hEditBox 23@ justNum true
    **    
    **      0AB1: call_scm_func @EDITBOX__isWritting 1 hEditBox 23@ // Condition
    **    
    **      0AB1: call_scm_func @EDITBOX__invalidate 1 hEditBox 23@
    **    
    **Trackbar
    **      0AB1: call_scm_func @TRACKBAR__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @TRACKBAR__draw 4 hTrackbar 22@ posXY 320.0 224.0 scale 100.0
    **    
    **      0AB1: call_scm_func @TRACKBAR__setValue 2 hTrackbar 22@ value 10
    **    
    **      0AB1: call_scm_func @TRACKBAR__setMaxValue 2 hTrackbar 22@ maxValue 100
    **    
    **      0AB1: call_scm_func @TRACKBAR__setDirection 2 hTrackbar 22@ direction HORIZONTAL
    **    
    **      0AB1: call_scm_func @TRACKBAR__getValue 1 hTrackbar 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @TRACKBAR__setState 2 hTrackbar 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @RACKBAR__invalidate 1 hTrackbar 22@
    **
    **NumericUpDown
    **      0AB1: call_scm_func @NUMERICUPDOWN__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__draw 4 hNumericUpDown 22@ posXY 320.0 224.0 text 1@
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setValue 2 hNumericUpDown 22@ value 10.0
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__getValue 1 hNumericUpDown 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setMinValue 2 hNumericUpDown 22@ minValue 0.0
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setMaxValue 2 hNumericUpDown 22@ maxValue 100.0
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setStep 2 hNumericUpDown 22@ step 3.0
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setConfig 4 hNumericUpDown 22@ type 1 timerAfterPressedKey 10 accuracy 4
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__setState 2 hNumericUpDown 22@ state Element_Activated
    **
    **      0AB1: call_scm_func @NUMERICUPDOWN__setTextColor 5 hNumericUpDown 22@ color 0 0 0 255  
    **    
    **      0AB1: call_scm_func @NUMERICUPDOWN__invalidate 1 hNumericUpDown 22@    
    **
    **RadioButton
    **      0AB1: call_scm_func @RADIOBUTTON__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @RADIOBUTTON__draw 4 hRadioButton 22@ posXY 320.0 224.0 text 1@
    **    
    **      0AB1: call_scm_func @RADIOBUTTON__getChecked 1 hRadioButton 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @RADIOBUTTON__setChecked 2 hRadioButton 22@ radioNum 2
    **    
    **      0AB1: call_scm_func @RADIOBUTTON__setState 2 hRadioButton 22@ state Element_Activated
    **
    **      0AB1: call_scm_func @RADIOBUTTON__setTextColor 5 hRadioButton 22@ color 0 0 0 255  
    **    
    **      0AB1: call_scm_func @RADIOBUTTON__invalidate 1 hRadioButton 22@
    **
    **Checkbox
    **      0AB1: call_scm_func @CHECKBOX__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @CHECKBOX__draw 5 hCheckbox 22@ checkboxID 0 posXY 320.0 224.0 text 1@
    **    
    **      0AB1: call_scm_func @CHECKBOX__getChecked 1 hCheckbox 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @CHECKBOX__setChecked 3 hCheckbox 22@ checkboxID 0 checked true
    **    
    **      0AB1: call_scm_func @CHECKBOX__setState 2 hCheckbox 22@ state Element_Activated
    **
    **      0AB1: call_scm_func @CHECKBOX__setTextColor 5 hCheckbox 22@ color 0 0 0 255  
    **    
    **      0AB1: call_scm_func @CHECKBOX__invalidate 1 hCheckbox 22@
    **
    **DropDown
    **      0AB1: call_scm_func @DROPDOWN__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @DROPDOWN__addItem 2 hDropDown 22@ text 1@
    **    
    **      0AB1: call_scm_func @DROPDOWN__draw 5 hDropDown 22@ posXY 320.0 224.0 width 100.0 defaultText 1@
    **    
    **      0AB1: call_scm_func @DROPDOWN__open 1 hDropDown 22@
    **    
    **      0AB1: call_scm_func @DROPDOWN__close 1 hDropDown 22@
    **    
    **      0AB1: call_scm_func @DROPDOWN__isOpened 1 hDropDown 22@
    **    
    **      0AB1: call_scm_func @DROPDOWN__onClick 2 hDropDown 22@ row 3
    **    
    **      0AB1: call_scm_func @DROPDOWN__getRowSelected 1 hDropDown 22@ store_to 31@
    **    
    **      0AB1: call_scm_func @DROPDOWN__setState 2 hDropDown 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @DROPDOWN__invalidate 1 hDropDown 22@
    **
    **TabPanel
    **      0AB1: call_scm_func @TABPANEL__create 0 store_to 22@
    **    
    **      0AB1: call_scm_func @TABPANEL__addTab 2 hTabPanel 22@ text 1@
    **    
    **      0AB1: call_scm_func @TABPANEL__draw 9 hTabPanel 22@ posXY 10@ 11@ viewPortSizeXY 190.0 130.0 viewPortColor 255 255 255 255
    **    
    **      0AB1: call_scm_func @TABPANEL__getSelectedTab 1 hTabPanel 22@ store_to 31@
    **  
    **      0AB1: call_scm_func @TABPANEL__setSelectedTab 2 hTabPanel 22@ tabNum 1
    **    
    **      0AB1: call_scm_func @TABPANEL__setState 2 hTabPanel 22@ state Element_Activated
    **    
    **      0AB1: call_scm_func @TABPANEL__design 17 hTabPanel 22@ tabColor 40 40 40 255 tabMouseOverColor 180 180 180 255 TabClickedColor 100 100 100 255 textColor 255 255 255 255
    **    
    **      0AB1: call_scm_func @TABPANEL__removeTab 2 hTabPanel 22@ tabNum 1
    **    
    **      0AB1: call_scm_func @TABPANEL__invalidate 1 hTabPanel 22@
    **
    **Progressbar
    **      0AB1: call_scm_func @PROGRESSBAR 24 PosXY 320.5 224.0 SizeXY 105.0 5.0 Value 12.0 MaxValue 100.0 ColorProgressBar 178 34 34 255 ActiveBackGround true BackGroundColor 178 34 34 125 ActiveOutline true OutlineColor 0 0 0 255 OutlineSizeXY 4.0 4.0 align 1 direction 0
    **
    **Window
    **      0AB1: call_scm_func @WINDOW__create 0 store_to 24@
    **              
    **      0AB1: call_scm_func @WINDOW__design 13 hWindow 24@ color 60 60 60 200 titleColor 40 40 40 255 textColor 255 255 255 255  
    **
    **      0AB1: call_scm_func @WINDOW__SetCloseButton 2 hWindow 24@ closeButton Element_Activated
    **
    **      0AB1: call_scm_func @WINDOW__closeButtonClicked 1 hWindow 24@
    **
    **      0AB1: call_scm_func @WINDOW__draw 7 hWindow 24@ posXY 320.0 244.0 sizeXY 200.0 200.0 title true name 10@      
    **
    **      0AB1: call_scm_func @WINDOW__invalidate 1 hWindow 24@
    **********************************************************************************************************************************************
    **********************************************************************************************************************************************/

    const
        // Proc id
        CREATE_TEXTURE    = 0x0
        DRAW_TEXTURE      = 0x1
        CREATE_FONT       = 0x2
        SET_FONT_OUTLINE  = 0x3
        SET_FONT_SHADOW   = 0x4
        GET_STRING_WIDTH  = 0x5
        DRAW_FONT         = 0x6
        DRAW_LINE         = 0x7
        DRAW_BOX          = 0x8  
        CURSOR_SET_POS    = 0x9
        CURSOR_GET_POS    = 0xA
        CURSOR_STATE      = 0xB
        CURSOR_GET_STATE  = 0xC
        CURSOR_TYPE       = 0xD
        CURSOR_GET_TYPE   = 0xE
        RELEASE_FONT      = 0xF
        RELEASE_TEXTURE   = 0x10
        DRAW_OUTLINED_BOX = 0x11
    end

    :GET_PROC
    if 0AA2: 30@ = load_library "D3DXAPI.asi" // if and SET
    then    
        0AC6: 2@ = label @PROC offset
        0@ *= 0xF
        005A: 2@ += 0@  // (int)
        0AC6: 22@ = label @PROC_DATA offset  
        0AB1: call_scm_func @memcpy 3 dest 22@ src 2@ size 0xF      
        for 31@ = 0 to 3
            0A8D: 3@(31@,1i) = read_memory 22@ size 4 virtual_protect 0
            22@ += 0x4
        end      
        if 0AA4: 29@ = get_proc_address 3@v library 30@
        then  
            0AA3: free_library 30@
            0485:  return_true
            0AB2: ret 1 29@
        else
            0AD1: show_formatted_text_highpriority "Failed to get ~r~'%s' ~w~address" time 2000 2@
            0AA3: free_library 30@
            059A:  return_false
        end            
    else
        0AD1: show_formatted_text_highpriority "Failed to load ~r~'D3DXAPI.asi'" time 2000
        0AA3: free_library 30@
        059A:  return_false
    end
    0AB2: ret 1 0x0

    :PROC_DATA
    hex
        FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
    end

    :PROC
    hex
        43 72 65 61 74 65 54 65 78 74 75 72 65 00 00
        44 72 61 77 54 65 78 74 75 72 65 00 00 00 00
        43 72 65 61 74 65 66 6F 6E 74 00 00 00 00 00
        53 65 74 46 6F 6E 74 4F 75 74 6C 69 6E 65 00
        53 65 74 46 6F 6E 74 53 68 61 64 6F 77 00 00
        47 65 74 53 74 72 69 6E 67 57 69 64 74 68 00
        44 72 61 77 53 74 72 69 6E 67 00 00 00 00 00
        44 72 61 77 4C 69 6E 65 00 00 00 00 00 00 00
        44 72 61 77 42 6F 78 00 00 00 00 00 00 00 00
        43 75 72 73 6F 72 53 65 74 50 6F 73 00 00 00
        43 75 72 73 6F 72 47 65 74 50 6F 73 00 00 00
        43 75 72 73 6F 72 53 65 74 53 74 61 74 65 00  
        43 75 72 73 6F 72 47 65 74 53 74 61 74 65 00
        43 75 72 73 6F 72 53 65 74 54 79 70 65 00 00
        43 75 72 73 6F 72 47 65 74 54 79 70 65 00 00  
        52 65 6C 65 61 73 65 46 6F 6E 74 00 00 00 00    
        52 65 6C 65 61 73 65 54 65 78 74 75 72 65 00
        44 72 61 77 4F 75 74 6C 69 6E 65 64 00 00 00
    end

    :TEXTURE__create
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CREATE_TEXTURE store_proc_to 29@
    then
        0AA7: call_function_return 29@ num_params 1 pop 1 0@ -> 28@    
    end
    0AB2: ret 1 28@

    :TEXTURE__draw
    if 0AB1: call_scm_func @GET_PROC 1 proc_id DRAW_TEXTURE store_proc_to 29@
    then        
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 1@ 2@ store_to 1@ 2@        
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 3@ 4@ store_to 3@ 4@
        0087: 16@ = 3@ // (float)
        0087: 17@ = 4@ // (float)
        16@ /= 2.0
        17@ /= 2.0
        0063: 1@ -= 16@  // (float)
        0063: 2@ -= 17@  // (float)
        0AA5: call 29@ num_params 10 pop 10 9@ 8@ 7@ 6@ 5@ 4@ 3@ 2@ 1@ 0@        
    end
    0AB2: ret 0

    :TEXTURE__release
    if 0AB1: call_scm_func @GET_PROC 1 proc_id RELEASE_TEXTURE store_proc_to 29@
    then  
        0AA5: call 29@ num_params 1 pop 1 0@        
    end
    0AB2: ret 0

    :DRAW__line
    if 0AB1: call_scm_func @GET_PROC 1 proc_id DRAW_LINE store_proc_to 29@
    then          
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 0@ 1@ store_to 0@ 1@        
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 2@ 3@ store_to 2@ 3@            
        0AA5: call 29@ num_params 9 pop 9 8@ 7@ 6@ 5@ 4@ 3@ 2@ 1@ 0@        
    end
    0AB2: ret 0

    :DRAW__box
    if 0AB1: call_scm_func @GET_PROC 1 proc_id DRAW_BOX store_proc_to 29@
    then                      
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 0@ 1@ store_to 0@ 1@  
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 2@ 3@ store_to 2@ 3@  
        0087: 16@ = 2@ // (float)
        0087: 17@ = 3@ // (float)
        16@ /= 2.0
        17@ /= 2.0
        0063: 0@ -= 16@  // (float)
        0063: 1@ -= 17@  // (float)
        0AA5: call 29@ num_params 8 pop 8 7@ 6@ 5@ 4@ 3@ 2@ 1@ 0@    
    end
    0AB2: ret 0

    :DRAW__outlinedBox
    if 0AB1: call_scm_func @GET_PROC 1 proc_id DRAW_OUTLINED_BOX store_proc_to 29@
    then                      
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 0@ 1@ store_to 0@ 1@  
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 2@ 3@ store_to 2@ 3@  
        0087: 16@ = 2@ // (float)
        0087: 17@ = 3@ // (float)
        16@ /= 2.0
        17@ /= 2.0
        0063: 0@ -= 16@  // (float)
        0063: 1@ -= 17@  // (float)
        0AA5: call 29@ num_params 12 pop 12 11@ 10@ 9@ 8@ 7@ 6@ 5@ 4@ 3@ 2@ 1@ 0@    
    end
    0AB2: ret 0

    :FONT__create
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CREATE_FONT store_proc_to 29@
    then                            
        0AA7: call_function_return 29@ num_params 3 pop 3 2@ 1@ 0@ -> 28@  
    end
    0AB2: ret 1 28@

    :FONT__setOutline
    if 0AB1: call_scm_func @GET_PROC 1 proc_id SET_FONT_OUTLINE store_proc_to 29@
    then                                                
        0AA5: call 29@ num_params 5 pop 5 4@ 3@ 2@ 1@ 0@        
    end
    0AB2: ret 0

    :FONT__setShadow
    if 0AB1: call_scm_func @GET_PROC 1 proc_id SET_FONT_SHADOW store_proc_to 29@
    then                                                    
        0AA5: call 29@ num_params 6 pop 6 5@ 4@ 3@ 2@ 1@ 0@    
    end
    0AB2: ret 0

    :FONT__getStringWidth
    if 0AB1: call_scm_func @GET_PROC 1 proc_id GET_STRING_WIDTH store_proc_to 29@
    then                                                            
        0AA7: call_function_return 29@ num_params 2 pop 2 1@ 0@ -> 28@  
        0093: 28@ = integer 28@ to_float
        28@ /= 20.0
    end
    0AB2: ret 1 28@

    :FONT__draw
    if 0AB1: call_scm_func @GET_PROC 1 proc_id DRAW_FONT store_proc_to 29@  
    then                                                              
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 2@ 3@ store_to 2@ 3@
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 4@ 5@ store_to 4@ 5@
        0AA5: call 29@ num_params 11 pop 11 10@ 9@ 8@ 7@ 6@ 5@ 4@ 3@ 2@ 1@ 0@        
    end
    0AB2: ret 0

    :FONT__release
    if 0AB1: call_scm_func @GET_PROC 1 proc_id RELEASE_FONT store_proc_to 29@  
    then                                                              
        0AA5: call 29@ num_params 1 pop 1 0@        
    end  
    0AB2: ret 0

    :CURSOR__setPos
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_SET_POS store_proc_to 29@  
    then  
        0AB1: call_scm_func @CONVERT_WINDOW_SCREEN_TO_GTA_SCREEN 2 coords_XY 0@ 1@ store_to 0@ 1@
        0AA5: call 29@ num_params 2 pop 2 1@ 0@
    end
    0AB2: ret 0

    :CURSOR__getPos
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_GET_POS store_proc_to 29@  
    then  
        0AA7: call_function_return 29@ num_params 0 pop 0 10@
        0A8D: 0@ = read_memory 10@ size 4 virtual_protect 0
        10@ += 0x4
        0A8D: 1@ = read_memory 10@ size 4 virtual_protect 0
        0AB1: call_scm_func @CONVERT_GTA_SCREEN_TO_WINDOW_SCREEN 2 coords_XY 0@ 1@ store_to 0@ 1@
    end
    0AB2: ret 2 0@ 1@

    :CURSOR__setState
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_STATE store_proc_to 29@  
    then
        0AA5: call 29@ num_params 1 pop 1 0@
    end
    0AB2: ret 0

    :CURSOR__getState
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_GET_STATE store_proc_to 29@  
    then
        0AA7: call_function_return 29@ num_params 0 pop 0 0@
    end
    0AB2: ret 1 0@

    :CURSOR__setType
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_TYPE store_proc_to 29@  
    then
         0AA5: call 29@ num_params 1 pop 1 0@
    end
    0AB2: ret 0

    :CURSOR__getType
    if 0AB1: call_scm_func @GET_PROC 1 proc_id CURSOR_GET_TYPE store_proc_to 29@  
    then
        0AA7: call_function_return 29@ num_params 0 pop 0 0@
    end
    0AB2: ret 1 0@
    (o source inteiro acima, compilado dah um total de 40 mil linhas. 10x maior q o in-game timecyc editor inteiro)

    E também já estava fazendo C++ e Assembly, foi quem criou o D3DXAPI.asi do Tuning Mod, aquela interface com mouse

    Ela criou o hud de armas do GTA V antes msm do DK22Pac
    Enquanto o DK estava demonstrando o dele o dela jah era muito melhor
    E isso q eh mais de 1 ano atrás, recentemente ela estava muito mais habilidosa
    Ela soh parou de criar o Hud do GTA V dela pois foi roubado, assim perdeu a vontade de continuar. Não acho q ela conseguiria coisas como o sistema de GPS e o radar panorâmico, mas acredito que chegaria perto do hud do DK

    Ela tbm tava com a ideia de um tipo de Tuning Mod pra armas, podendo "tunar" elas, colocando coisas para melhorar a força e tudo mais utilizando uma interface, mas por fim soh criou a interface e lançou open source


    edit:
    Interessante q o cara lah aceitou em criar o plugin para a bass.dll, a coisa q Fabio na época não conseguiu e assim foi cancelado o MDPMv5
    http://gtaforums.com/topic/821402-reqdocsa-request-custom-opcodes
    MDPMv5 irá se ressuscitar? Raisins Face
    Vamos ver oq esse cara eh capaz de fazer, eu pouco conheço ele, vi ele em poucos posts quando ele nem sabia programações além de cleo\scm


    ____________________
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Mensagens : 657
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: Sobre CLEO

    Mensagem por israel em Sex 30 Out 2015, 11:29

    Essa Thayná não é/era normal. Raisins Face


    ____________________
    " Everyone gonna remember my name ! "
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sex 30 Out 2015, 12:43

    Qualquer pessoa que com uma boa fonte de estudo, tempo e dedicacao faz coisas incriveis rapidao. O importante eh a fonte, se ela for rica a pessoa aprende facil, se for pobre fica dificil. Mas se tbm n tiver vontade adianta nada.


    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 30 Out 2015, 20:45

    Não concordo tanto nessa coisa de rico e pobre q vc citou
    Edit: apagado

    Sobre Thayná, mano, ela saia do PC
    Ela ficava uns 2 ou 3 dias fora do PC e voltava com uma coisa nova, ela se desligava do mundo, e eu sei q isso realmente eh útil, eu criei o script da BMS Sound em uns 4 dias mais ou menos (msm eu sendo muito noob na época), e todo o menu do Tuning Mod eu criei em 2 dias (msm eu sendo meio noob na época). Isso pq eu estava sem internet



    Shmoopy escreveu:Bass plugin 90% ready, just remembered to add some sound fx opcodes (Reverb,Echo etc ... ) :colgate:
    I've added what you wanted, I mean the float value of the sound spectrum. It works perfectly and I think that it will suit the speakers vibration :happy:
    Teremos uma coisinha incrível aqui


    Última edição por Junior_Djjr em Sex 30 Out 2015, 21:18, editado 1 vez(es)


    ____________________
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sex 30 Out 2015, 21:02

    Nao... Eu quis dizer a FONTE DE CONTEUDO. Se a fonte é rica (tem conteudo, é bem explicada, tem exemplos etc) vc aprende. Se a fonte for só "escreve void OnGui() pra fazer uma gui. Fim." Vc n aprende nada. Um exemplo é a dificuldade que eu acho em encontrar conteudo em PTBR sobre C#,Cleo e Unity script e mts outros q eu n procuro pq ja sei q n vo achar.


    Eu nao tenho internet no pc '-'

    Djjr escreveu:
    Shmoopy escreveu:Bass plugin 90% ready, just remembered to add some sound fx opcodes (Reverb,Echo etc ... ) :colgate:
    I've added what you wanted, I mean the float value of the sound spectrum. It works perfectly and I think that it will suit the speakers vibration :happy:
    Teremos uma coisinha incrível aqui



    por isso amo esses caras


    Última edição por RenanMSV em Sex 30 Out 2015, 21:13, editado 3 vez(es)


    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    SideWinder
    Mensagens Nível 6
    Mensagens Nível 6

    Título : Humilde
    Mensagens : 1343
    Reputação : 37
    Desde : 06/09/2014
    Idade : 18
    Link : gtaouterside.blogspot.com

    Re: Sobre CLEO

    Mensagem por SideWinder em Sex 30 Out 2015, 21:05

    O(a) Junior tá mal na interpretação. k


    ____________________
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 30 Out 2015, 21:13

    @RenanMSV escreveu:se ela for rica
    Eu tava com certeza absoluta deq "ela = Thayná", por isso discordei

    Eu nao tenho internet no pc '-'
    Mas oq eu falei se refere a qualquer tipo de internet pokerface Se a pessoa tem internet, não muda onde ela tem, o importante eh ter a internet


    ____________________
    avatar
    RenanMSV
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 263
    Reputação : 38
    Desde : 27/09/2015
    Localização : Cps - SP
    Link : goo.gl/BgNT9p

    Re: Sobre CLEO

    Mensagem por RenanMSV em Sex 30 Out 2015, 22:31

    @Junior_Djjr escreveu:
    @RenanMSV escreveu:se ela for rica
    Eu tava com certeza absoluta deq "ela = Thayná", por isso discordei

    Eu nao tenho internet no pc '-'
    Mas oq eu falei se refere a qualquer tipo de internet pokerface Se a pessoa tem internet, não muda onde ela tem, o importante eh ter a internet


    :c pra mim nem tem a opcao de dar crtl+c ctrl+v nos codigos ai da vida... Tem q copiar letra por letra (chato pa crl)


    ____________________
    Não importa o quão pequeno você
    comece, apenas comece algo que
    importa.


    Mods cleo de minha autoria: https://db.tt/91oW1EWC
    Jogos de minha autoria: nenhum por enquanto
    ModLoader VIsual Editor WIP
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21616
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Sobre CLEO

    Mensagem por Junior_Djjr em Sex 30 Out 2015, 23:45

    Compra um modem, nem q for daqueles pequenos usados em notebook, assim vc coloca o chip do cel nele
    Soh antes tem q saber q tipo de conexão vc recebe, se ela eh aceita tbm pelo modem etc


    ____________________

    Conteúdo patrocinado

    Re: Sobre CLEO

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Ter 27 Jun 2017, 12:50