Brazilian Modding Studio
Olá, seja bem vindo à Comunidade BMS!

Para se registrar no fórum, siga os passos:

1 - Clique em "Registrar-se" aqui em baixo;
2 - Aceite os termos de serviço;
3 - Escolha um nome de usuário e senha;
4 - Realize o login no fórum clicando em "Conectar-se".

Compartilhe
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 09:23
REVISADO E MOVIDO:
https://forum.mixmods.com.br/f141-secao-tutorial-gta3script/t487-13-gosub-e-cleo_call


Última edição por Junior_Djjr em Dom 15 Jul 2018, 13:44, editado 5 vez(es) (Razão : Adicionado +1 exemplo de mod usando GOSUB)

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1239
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Sex 03 Fev 2017, 10:06
Ontem fiz uma função só porque não gosto de ficar colocando:
Código:
WHILE IS_KEY_PRESSED
 WAIT 0
ENDWHILE
Sempre que vou fazer uma checagem de tecla, então ficou assim:
Código:
{
    KeyPressed:
    LVAR_INT key

    IF IS_KEY_PRESSED key
        WHILE IS_KEY_PRESSED key
            WAIT 0
        ENDWHILE
        IS_PC_VERSION // makes flag be true
    ENDIF

    CLEO_RETURN 0
}
A checagem na parte principal do script então passaria a ser uma única linha para sempre que eu precisasse:
Código:
IF CLEO_CALL KeyPressed 0 (0x4C) // VK_KEY_L
 value += 0.1
ENDIF

Mas acho que a questão aqui nesse tutorial é "A custo do que?"
Óbvio que quando eu faço isso o código fica bem mais legível, só que diminui o desempenho dele já que foi necessário a adição de mais um IF na hora da chamada (IF CLEO_CALL), do CLEO_CALL em si que precisa fazer um jump para uma parte remota do código e do opcode que precisei utilizar a mais para mudar a flag (IS_PC_VERSION).

O que eu fiz aqui seria errado?

Na minha opinião, se você tiver que checar muitas teclas no script e ele for muito grande, vale a pena por questões de legibilidade.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 10:10
Ohh, adição de +1 IF então fica pesado? Fica nada, uma checagenzinha é nada. Se cria mods de loops de 1000 linhas rodando a cada frame e mesmo assim não há perda de FPS Fuch That Guy

Eu prefiro não usar por causa de outro motivo: Só ativará após SOLTAR a tecla, o que não gosto, dá uma sensação de baixo desempenho (não responde no mesmo instante).

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1239
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Sex 03 Fev 2017, 10:21
@Junior_Djjr escreveu:Ohh, adição de +1 IF então fica pesado? Fica nada, uma checagenzinha é nada. Se cria mods de loops de 1000 linhas rodando a cada frame e mesmo assim não há perda de FPS Fuch That Guy
Com bastantes IF de resultados aleatórios tiraria bastante desempenho sim.
Concordo que não é bem o caso de um IS_KEY_PRESSED já que tem um padrão, na maioria das vezes o jogador não vai apertar as teclas.
Se tiver interesse nisso, leia aqui
(Link me ensinou isso ontem  :))

@Junior_Djjr escreveu:Eu prefiro não usar por causa de outro motivo: Só ativará após SOLTAR a tecla, o que não gosto, dá uma sensação de baixo desempenho (não responde no mesmo instante).
Isso é bem chato mesmo argh
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 10:21
No tutorial só faltou o exemplo "o que se faz em Las Vegas, fica em Las Vegas", nunca vou esquecer isso Fuch That Guy, foi assim que aprendi scm_func.
Logo quando comecei a usar, colocava o nome das labels "Las_Vegas".
denilson gostoso

______________________________
Everyone gonna remember my name !
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 10:24
@israel escreveu:No tutorial só faltou o exemplo "o que se faz em Las Vegas, fica em Las Vegas", nunca vou esquecer isso Fuch That Guy, foi assim que aprendi scm_func.
Logo quando comecei a usar, colocava o nome das labels "Las_Vegas".
denilson gostoso
Nossa, eu tinha colocado uma frase com essa referência, mas apaguei metade do tutorial pra reescrever e esqueci de re-colocar Fuch That Guy

edit: Acho que essa frase daria a entender que: As variáveis ficam armazenadas dentro do CLEO_CALL para sempre, e se você chamar ele de novo, elas estarão lá philosoraptor o que não é verdade.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 10:32
Raisins Face
O que se faz em Las Vegas, fica em Las Vegas até você sair de lá. serious?
Sei lá, no tutorial de scm_func deu pra entender.

______________________________
Everyone gonna remember my name !
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 10:42
Ah, outra coisa ruim do método do Nex':
Não há como usar IF AND/OR junto com essa função, pois tem um IF interno, daí aquele IF irá "atrapalhar" o AND/OR. É mais outra coisa que quero abordar num segundo tutorial de condições.

E:
Nex' escreveu:Na minha opinião, se você tiver que checar muitas teclas no script e ele for muito grande, vale a pena por questões de legibilidade.
O melhor seria usar uma variável para dizer "Apertou a tecla! Não ative novamente até que solte!". Eu uso isso no MDPMv5 e Tuning Mod.

Na qual também fica mais dinâmico, pois não existe espera :v: enquanto você está segurando, todo o script continuará andando como se nada tivesse acontecido, a única mudança será que não ativará de novo até que você solte.
"mas gasta uma variável" eu poderia ter usado bits.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1239
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Sex 03 Fev 2017, 10:46
@Junior_Djjr escreveu:E:
Nex' escreveu:Na minha opinião, se você tiver que checar muitas teclas no script e ele for muito grande, vale a pena por questões de legibilidade.
O melhor seria usar uma variável para dizer "Apertou a tecla! Não ative novamente até que solte!".
Esse modo deve ser o melhor mesmo, eu fazia muito isso quando tava aprendendo philosoraptor

Edit: entendi agora a parada do AND/OR, mals
avatar
Veterano
Veterano
Mensagens : 2904
Reputação : 81
Desde : 31/07/2013
Ver perfil do usuário
em Sex 03 Fev 2017, 11:08
Código:
SCRIPT_START
{
NOP

LVAR_INT var1 var2 var3 var4 var5
WAIT 0

loop:
GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

WAIT 0

IF IS_KEY_PRESSED VK_KEY_B
    CLEO_CALL continha var1 var1
    CLEO_CALL continha var2 var2
    CLEO_CALL continha var3 var3
    CLEO_CALL continha var4 var4
    CLEO_CALL continha var5 var5
    WHILE IS_KEY_PRESSED VK_KEY_B
        WAIT 0
    ENDWHILE
    PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5
ENDIF

GOTO loop

}

{
    LVAR_INT var
    LVAR_INT cnc
    
    continha:
    var = cnc
        cnc -= var
            var += 12
    CLEO_RETURN 0 var
}
SCRIPT_END
Esse realmente não está compilando. philosoraptor

______________________________
I̜mpe͢r͚at̲ivoͯ, ͘no̅ mụnd̶o͋ ̺sl͟o͗w
́Co͔m͢ó ̼a ̒p̎eçͦa̲ ̖MC͝s ̚só͊ ͡faz̀em̈́ ̛s̸p͆ee͌df̡l̡owͭ
̟Pͭra ̌que̲ ä́ p̐r͜es̋s͉aͤ?
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 11:10
@Elyzandro escreveu:
Código:
CLEO_CALL continha var1 var1
CLEO_CALL continha var2 var2
CLEO_CALL continha var3 var3
CLEO_CALL continha var4 var4
CLEO_CALL continha var5 var5
Esse realmente não está compilando. philosoraptor
Faltou o 0 em cada CLEO_CALL :

Código:
CLEO_CALL continha 0 var1 var1
CLEO_CALL continha 0 var2 var2
CLEO_CALL continha 0 var3 var3
CLEO_CALL continha 0 var4 var4
CLEO_CALL continha 0 var5 var5

______________________________
Everyone gonna remember my name !
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 11:31
Quando eu faço para esquecer os "0" as pessoas levam ao pé da letra kkkkkkkkkkk

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 846
Reputação : 134
Desde : 22/09/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 11:48
:v:

______________________________
Everyone gonna remember my name !
avatar
Veterano
Veterano
Mensagens : 2904
Reputação : 81
Desde : 31/07/2013
Ver perfil do usuário
em Sex 03 Fev 2017, 12:10
@Junior_Djjr escreveu:Quando eu faço para esquecer os "0" as pessoas levam ao pé da letra kkkkkkkkkkk
KKKKKKKKK pior que acho que foi isso que aconteceu mesmo.

______________________________
I̜mpe͢r͚at̲ivoͯ, ͘no̅ mụnd̶o͋ ̺sl͟o͗w
́Co͔m͢ó ̼a ̒p̎eçͦa̲ ̖MC͝s ̚só͊ ͡faz̀em̈́ ̛s̸p͆ee͌df̡l̡owͭ
̟Pͭra ̌que̲ ä́ p̐r͜es̋s͉aͤ?
avatar
Mensagens Nível 2
Mensagens Nível 2
Mensagens : 50
Reputação : 2
Desde : 14/03/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 12:35
Nex' escreveu:
Código:
IF CLEO_CALL KeyPressed 0 (0x4C) // VK_KEY_L
 value += 0.1
ENDIF
Hmm sério que esse if só vai retornar true se a tecla tiver apertada? pq?
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18228
Reputação : 384
Desde : 04/05/2012
Idade : 21
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com
em Sex 03 Fev 2017, 12:41
Nex' escreveu:
@Junior_Djjr escreveu:Ohh, adição de +1 IF então fica pesado? Fica nada, uma checagenzinha é nada. Se cria mods de loops de 1000 linhas rodando a cada frame e mesmo assim não há perda de FPS Fuch That Guy
Com bastantes IF de resultados aleatórios tiraria bastante desempenho sim.
Concordo que não é bem o caso de um IS_KEY_PRESSED já que tem um padrão, na maioria das vezes o jogador não vai apertar as teclas.
Se tiver interesse nisso, leia aqui
(Link me ensinou isso ontem  :))

Mas se for ver, tem outros IFs internos do jogo gerando resultados aleatórios. philosoraptor

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 1239
Reputação : 99
Desde : 04/03/2013
Idade : 18
Ver perfil do usuário
em Sex 03 Fev 2017, 12:51
@Fabio escreveu:
Nex' escreveu:
@Junior_Djjr escreveu:Ohh, adição de +1 IF então fica pesado? Fica nada, uma checagenzinha é nada. Se cria mods de loops de 1000 linhas rodando a cada frame e mesmo assim não há perda de FPS Fuch That Guy
Com bastantes IF de resultados aleatórios tiraria bastante desempenho sim.
Concordo que não é bem o caso de um IS_KEY_PRESSED já que tem um padrão, na maioria das vezes o jogador não vai apertar as teclas.
Se tiver interesse nisso, leia aqui
(Link me ensinou isso ontem  :))

Mas se for ver, tem outros IFs internos do jogo gerando resultados aleatórios. philosoraptor
Eu sei, não estou dizendo para não usar ifs ;-;
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18228
Reputação : 384
Desde : 04/05/2012
Idade : 21
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com
em Sex 03 Fev 2017, 13:00
Nex' escreveu:
@Fabio escreveu:
Nex' escreveu:
@Junior_Djjr escreveu:Ohh, adição de +1 IF então fica pesado? Fica nada, uma checagenzinha é nada. Se cria mods de loops de 1000 linhas rodando a cada frame e mesmo assim não há perda de FPS Fuch That Guy
Com bastantes IF de resultados aleatórios tiraria bastante desempenho sim.
Concordo que não é bem o caso de um IS_KEY_PRESSED já que tem um padrão, na maioria das vezes o jogador não vai apertar as teclas.
Se tiver interesse nisso, leia aqui
(Link me ensinou isso ontem  :))

Mas se for ver, tem outros IFs internos do jogo gerando resultados aleatórios. philosoraptor
Eu sei, não estou dizendo para não usar ifs ;-;

Não disse que você disse isso philosoraptor

Eu disse que provavelmente essa otimização do CPU não vai adiantar muito por causa da interferência do código do próprio jogo ;-:

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Sex 03 Fev 2017, 13:20
@Rodrigo294 escreveu:
Nex' escreveu:
Código:
IF CLEO_CALL KeyPressed 0 (0x4C) // VK_KEY_L
 value += 0.1
ENDIF
Hmm sério que esse if só vai retornar true se a tecla tiver apertada?  pq?
Por este motivo vou ter que fazer mais outro tutorial sobre condições, explicando mais a fundo o funcionamento de condições :v:
Lá dentro da função há um "IS_PC_VERSION" e em seguida retornou. Seria o mesmo de ter feito:
Código:
IF IS_PC_VERSION
 value += 0.1
ENDIF
Mas só passa pelo "IS_PC_VERSION" caso tenha pressionado a tecla. Portanto, se não tivesse pressionado, não seria assim. Retornaria falso.

Sei lá se esta explicação foi boa...

Você pode fazer esse tipo de coisa com CLEO_CALL e GOSUB.

Código:
IF GOSUB carro_existe
    //o carro existe
ENDIF

carro_existe:
DOES_VEHICLE_EXIST car
RETURN
É o mesmo de eu digitar:
Código:
IF DOES_VEHICLE_EXIST car
    //o carro existe
ENDIF

(possivelmente você não entendeu o motivo disso acontecer, mas entendeu como fazer pelo menos)

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Mensagens Nível 2
Mensagens Nível 2
Mensagens : 50
Reputação : 2
Desde : 14/03/2015
Ver perfil do usuário
em Sex 03 Fev 2017, 13:40
@Junior_Djjr vlw pela explicação  :)

@Junior_Djjr escreveu:(possivelmente você não entendeu o motivo disso acontecer, mas entendeu como fazer pelo menos)
Exatamente :v:
avatar
Mensagens Nível 4
Mensagens Nível 4
Mensagens : 473
Reputação : 12
Desde : 12/01/2016
Localização : 127.0.0.1:1338
Link : to the Past
Ver perfil do usuário
em Sex 03 Fev 2017, 13:45
É só lembrar que CLEO_CALL é o buraco negro do GTA.
avatar
Mensagens Nível 2
Mensagens Nível 2
Mensagens : 56
Reputação : 0
Desde : 19/01/2017
Ver perfil do usuário
em Sex 03 Fev 2017, 14:49
otimo tuto
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 529
Reputação : 42
Desde : 08/02/2016
Localização : São Paulo
Ver perfil do usuário
em Sab 25 Fev 2017, 18:25
Por que o programa não aceita um char como parâmetro?

avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Censurando since 2011
Mensagens : 22701
Reputação : 727
Desde : 03/05/2012
Idade : 23
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br
em Dom 26 Fev 2017, 01:37
O certo devia você ter mostrado o função lá para ver se lá está em ordens, o que você fez com a var e tal.

______________________________
BMS agora em nova plataforma:
Forum.MixMods.com.br
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Mensagens : 529
Reputação : 42
Desde : 08/02/2016
Localização : São Paulo
Ver perfil do usuário
em Dom 26 Fev 2017, 12:02
Pega todo o script logo kkkk. Estava refazendo aquele mod que postaram de 15 animações de morte aleatórias:

Script:
Código:
SCRIPT_START
{
    SCRIPT_NAME peddiea

    LVAR_INT scplayer
    LVAR_INT lv_char_targeted
    LVAR_INT lv_random
   
    GOSUB sub_load_anims
   
    GET_PLAYER_CHAR 0 scplayer

    label_1:
        WAIT 0

        IF NOT IS_PLAYER_PLAYING 0
            GOTO label_1
        ENDIF

        //NPC
        GET_CHAR_PLAYER_IS_TARGETING 0 lv_char_targeted
        IF DOES_CHAR_EXIST lv_char_targeted
            IF HAS_CHAR_BEEN_DAMAGED_BY_CHAR scplayer lv_char_targeted
            AND NOT IS_CHAR_IN_ANY_CAR lv_char_targeted
            AND NOT IS_CHAR_HEALTH_GREATER lv_char_targeted 10
                GENERATE_RANDOM_INT_IN_RANGE 0 8 lv_random
                IF NOT lv_random > 2
                    CLEO_CALL function_set_die_anim 0 (lv_char_targeted) ()
                ENDIF
            ENDIF
        ENDIF

        //Player
        IF NOT IS_CHAR_HEALTH_GREATER scplayer 10
        AND NOT IS_CHAR_IN_ANY_CAR scplayer
            GENERATE_RANDOM_INT_IN_RANGE 0 6 lv_random
            IF NOT lv_random > 1
                CLEO_CALL function_set_die_anim 0 (scplayer) ()
            ENDIF
        ENDIF

    GOTO label_1
}


    sub_load_anims:
        REQUEST_ANIMATION "KNIFE"
        REQUEST_ANIMATION "CRACK" 
        REQUEST_ANIMATION "WUZI"
        REQUEST_ANIMATION "FINALE"
        REQUEST_ANIMATION "MD_CHASE"
        REQUEST_ANIMATION "PARACHUTE"
        REQUEST_ANIMATION "RYDER"
        REQUEST_ANIMATION "SWEET"
    RETURN
}

{
    function_set_die_anim:
        LVAR_INT lv_char_anim
        LVAR_INT lv_random1
        LVAR_FLOAT lv_random2
       
        lv_char_anim = 0
        IF lv_char_anim = 1
            CREATE_CHAR 0 10 0.0 0.0 0.0 lv_char_anim
        ENDIF

        //Check anims
        IF HAS_ANIMATION_LOADED "KNIFE"
        AND HAS_ANIMATION_LOADED "CRACK"
        AND HAS_ANIMATION_LOADED "WUZI"
        AND HAS_ANIMATION_LOADED "FINALE"
        AND HAS_ANIMATION_LOADED "MD_CHASE"
        AND HAS_ANIMATION_LOADED "PARACHUTE"
        AND HAS_ANIMATION_LOADED "RYDER"
        AND HAS_ANIMATION_LOADED "SWEET"
            //Choice randim animation   
            GENERATE_RANDOM_INT_IN_RANGE 0 16 lv_random1
            GENERATE_RANDOM_FLOAT_IN_RANGE 1.5 4.0 lv_random2
            SWITCH lv_random1
                CASE 0
                    TASK_DIE_NAMED_ANIM lv_char_anim "KILL_KNIFE_PED_DIE" "KNIFE" lv_random2 1
                    BREAK
                CASE 1
                    TASK_DIE_NAMED_ANIM lv_char_anim "KNIFE_HIT_3" "KNIFE" lv_random2 1
                    BREAK
                CASE 2
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKDETH1" "CRACK" lv_random2 1
                    BREAK                                                               
                CASE 3
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKDETH2" "CRACK" lv_random2 1
                    BREAK
                CASE 4
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKDETH3" "CRACK" lv_random2 1
                    BREAK
                CASE 5
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKDETH4" "CRACK" lv_random2 1
                    BREAK
                CASE 6
                    TASK_DIE_NAMED_ANIM lv_char_anim "CS_Dead_Guy" "WUZI" lv_random2 1
                    BREAK                                                               
                CASE 7
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKIDLE2" "CRACK" lv_random2 1
                    BREAK
                CASE 8
                    TASK_DIE_NAMED_ANIM lv_char_anim "FIN_Land_Die" "FINALE" lv_random2 1
                    BREAK
                CASE 9
                    TASK_DIE_NAMED_ANIM lv_char_anim "CRCKIDLE4" "CRACK" lv_random2 1
                    BREAK
                CASE 10
                    TASK_DIE_NAMED_ANIM lv_char_anim "MD_BIKE_Lnd_Roll" "MD_CHASE" lv_random2 1
                    BREAK
                CASE 11
                    TASK_DIE_NAMED_ANIM lv_char_anim "MD_HANG_Lnd_Roll" "MD_CHASE" lv_random2 1
                    BREAK
                CASE 12
                    TASK_DIE_NAMED_ANIM lv_char_anim "MD_BIKE_Lnd_Roll_F" "MD_CHASE" lv_random2 1
                    BREAK                                                               
                CASE 13
                    TASK_DIE_NAMED_ANIM lv_char_anim "FALL_skyDive_DIE" "PARACHUTE" lv_random2 1
                    BREAK
                CASE 14
                    TASK_DIE_NAMED_ANIM lv_char_anim "Carhit_Tumble" "MD_CHASE" lv_random2 1
                    BREAK
                CASE 15
                    TASK_DIE_NAMED_ANIM lv_char_anim "Sweet_injuredloop" "SWEET" lv_random2 1
                    BREAK
                DEFAULT
                    BREAK                                                                                                                                                                                           
            ENDSWITCH
        ELSE
            GOSUB sub_load_anims
        ENDIF
    CLEO_RETURN 0 0
}
SCRIPT_END
Conteúdo patrocinado
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum