Página 1 de 2

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 19 Jun 2018, 15:41
por xXBrunoXx
Com esse mod, quando vc ficar parado por alguns segundos em cima de uma moto, o CJ colocara um capacete (estilo os GTAs do Universo HD) e logo após vc sair de uma moto e ficar parado o CJ removerá o mesmo... descrição ficou meio confusa, assistam o vídeo que vcs vão entender... 




Imagem

Imagem
source (refeito):
 

Código: Selecionar tudo

SCRIPT_START
{
    
LVAR_TEXT_LABEL16 helmet_1 helmet_2 texture_h1 texture_h2   
LVAR_INT scplayer moto bike_id wear type_h1 type_h2
GET_PLAYER_CHAR 0 scplayer
REQUEST_ANIMATION GOGGLES
LOAD_ALL_MODELS_NOW 

READ_STRING_FROM_INI_FILE "cleo\settings.ini" "settings" "model_1" helmet_1
READ_STRING_FROM_INI_FILE "cleo\settings.ini" "settings" "model_2" helmet_2
READ_STRING_FROM_INI_FILE "cleo\settings.ini" "settings" "texture_m1" texture_h1
READ_STRING_FROM_INI_FILE "cleo\settings.ini" "settings" "texture_m2" texture_h2
READ_INT_FROM_INI_FILE "cleo\settings.ini" "settings" "type_m1" type_h1
READ_INT_FROM_INI_FILE "cleo\settings.ini" "settings" "type_m1" type_h2

WHILE TRUE
WAIT 0

IF wear = 0
AND IS_CHAR_ON_ANY_BIKE scplayer
    GET_CAR_CHAR_IS_USING scplayer moto
    GET_CAR_MODEL moto bike_id 
    IF GOSUB verify
        IF IS_CAR_STOPPED moto
            WAIT 2000
            IF IS_CHAR_ON_ANY_BIKE scplayer
            AND IS_CHAR_STOPPED scplayer
                STORE_CLOTHES_STATE 
                GOSUB moto_m
                TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
                WAIT 250
                BUILD_PLAYER_MODEL 0
                wear = 1
            ENDIF
        ENDIF
    ENDIF
ENDIF

IF wear = 1
AND IS_CHAR_ON_FOOT scplayer
    WAIT 2000
    IF IS_CHAR_STOPPED scplayer
    AND NOT IS_CHAR_ON_ANY_BIKE scplayer
        RESTORE_CLOTHES_STATE 
        TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
        WAIT 250
        BUILD_PLAYER_MODEL 0
        wear = 0
    ENDIF
ENDIF
ENDWHILE

verify:
IF bike_id = 481 
OR bike_id = 509  
OR bike_id = 510 
OR IS_PLAYER_WEARING 0 type_h1 $helmet_1
OR IS_PLAYER_WEARING 0 type_h2 $helmet_2
    IS_AUSTRALIAN_GAME
ELSE
    IS_PC_VERSION 
ENDIF
RETURN

moto_m:
SWITCH bike_id
    CASE 468 
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 $texture_h2 $helmet_2 type_h2
        BREAK
    DEFAULT 
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 $texture_h1 $helmet_1 type_h1
        BREAK
ENDSWITCH
RETURN

}
SCRIPT_END
-------------->DOWNLOAD<--------------
(atualizado)  
~~> adicionado a possibilidade de "escolher" o tempo de colocar/remover o capacete e corrigido alguns bugs <~~
~~>adicionado a função de escolher o modelo do capacete por arquivo ini<~~ 04/07/2018

WearHelmet-Mod

Enviado: 20 Jun 2018, 02:52
por Xamugel
Ideia interessante, curti o fato de não ter que apertar alguma tecla de ação para colocar o capacete. Porém, se me permite, eu gostaria de dar duas sugestões que eu acho que deixariam o mod e a gameplay muito mais agradáveis.

Primeiro: Adicionar no script a função de quando subir numa Sanchez, colocar o capacete de motocross ao invés do vermelho, pois ele se encaixa melhor com o modelo da moto.

Imagem

Segundo: Diminuir uns 0.5 segundos do tempo de ficar parado em cima da moto e fora dela, para dar um dinamismo maior. Eu senti um ligeiro desconforto esperando mais de dois segundos para o mod ativar em todas as vezes que testei ele.

Tirando esses dois pontos que citei, curti pakas a ideia.

WearHelmet-Mod

Enviado: 20 Jun 2018, 03:35
por Junior_Djjr

Código: Selecionar tudo

        RESTORE_CLOTHES_STATE
        WAIT 250
        GIVE_PLAYER_CLOTHES 0 0 0 16
        BUILD_PLAYER_MODEL 0
Ué, você retornou a roupa antes guardada, o que é correto, mas em seguida você removeu o que tinha na cabeça.
Na teoria, se retornou por exemplo o boné, você removeu o boné retornado.

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 20 Jun 2018, 12:14
por xXBrunoXx
Junior_Djjr escreveu:

Código: Selecionar tudo

RESTORE_CLOTHES_STATE
WAIT 250
GIVE_PLAYER_CLOTHES 0 0 0 16
BUILD_PLAYER_MODEL 0
Ué, você retornou a roupa antes guardada, o que é correto, mas em seguida você removeu o que tinha na cabeça.
Na teoria, se retornou por exemplo o boné, você removeu o boné retornado.  
Vish é mesmo... passei mó tempão tentando entender o porque desse RESTORE_CLOTHES não funcionar e eu nem prestei atenção nesse GIVE_PLAYER_CLOTHES, to moscando demais... Já arrumei... 
 
Xamugel escreveu: ...Primeiro: Adicionar no script a função de quando subir numa Sanchez, colocar o capacete de motocross ao invés do vermelho, pois ele se encaixa melhor com o modelo da moto...
Vou ver seu eu coloco essa função no Mod...

edit: 
acabei de adicionar adicionar essa função...
 
Xamugel escreveu: Segundo: Diminuir uns 0.5 segundos do tempo de ficar parado em cima da moto e fora dela, para dar um dinamismo maior. Eu senti um ligeiro desconforto esperando mais de dois segundos para o mod ativar em todas as vezes que testei ele.
Em relação a esse negóço do tempo, acabei de corrigir...  :daora:
 

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 27 Jun 2018, 03:16
por Pequeno
Crash ao subir em uma bicicleta :/

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 27 Jun 2018, 08:37
por Junior_Djjr
Para melhorar por exemplo o código do GOSUB verify, aprenda isto:
f141-gta3script-cleo/t528-15-mais-sobre-condicoes

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 27 Jun 2018, 14:28
por Grinch_

Código: Selecionar tudo

verify:
IF bike_model = 481
OR bike_model = 509
OR bike_model = 510
    GOTO loop_end
    ELSE 
ENDIF
RETURN
A unnecessary Else statement here.

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 28 Jun 2018, 20:29
por xXBrunoXx
Pequeno escreveu: Crash ao subir em uma bicicleta :/
Refiz o mod, acho que dessa vez n vai crashar...
 
Junior_Djjr escreveu: Para melhorar por exemplo o código do GOSUB verify...
refiz o script, será melhorou?

Código: Selecionar tudo

SCRIPT_START
{

LVAR_INT scplayer moto bike_id wear
GET_PLAYER_CHAR 0 scplayer
REQUEST_ANIMATION GOGGLES
LOAD_ALL_MODELS_NOW

WHILE TRUE
WAIT 0

IF wear = 0
AND IS_CHAR_ON_ANY_BIKE scplayer
    GET_CAR_CHAR_IS_USING scplayer moto
    GET_CAR_MODEL moto bike_id
    IF GOSUB verify
        IF IS_CAR_STOPPED moto
            WAIT 1500
            IF IS_CHAR_ON_ANY_BIKE scplayer
            AND IS_CHAR_STOPPED scplayer
                STORE_CLOTHES_STATE
                GOSUB moto_m
                TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
                WAIT 250
                BUILD_PLAYER_MODEL 0
                wear = 1
            ENDIF
        ENDIF
    ENDIF
ENDIF

IF wear = 1
AND IS_CHAR_ON_FOOT scplayer
    WAIT 1500
    IF IS_CHAR_STOPPED scplayer
    AND NOT IS_CHAR_ON_ANY_BIKE scplayer
        RESTORE_CLOTHES_STATE
        TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
        WAIT 250
        BUILD_PLAYER_MODEL 0
        wear = 0
    ENDIF
ENDIF
ENDWHILE

verify:
IF bike_id = 481
OR bike_id = 509
OR bike_id = 510
OR IS_PLAYER_WEARING 0 16 HELMET
OR IS_PLAYER_WEARING 0 16 MOTO
    IS_AUSTRALIAN_GAME
ELSE
    IS_PC_VERSION
ENDIF
RETURN

moto_m:
SWITCH bike_id
    CASE 468
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 MOTO MOTO 16
        BREAK
    DEFAULT
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 HELMET HELMET 16
        BREAK
ENDSWITCH
RETURN


}
SCRIPT_END
source antigo: 

Código: Selecionar tudo

SCRIPT_START
{
NOP

LVAR_INT scplayer helmet motorcycle motorcycle_m
GET_PLAYER_CHAR 0 scplayer

REQUEST_ANIMATION GOGGLES
LOAD_ALL_MODELS_NOW

//////////////////////////////WearHelmetMod/////////////////////////////////////////////
////////////////////////////////LOOOP///////////////////////////////////////////////////
WHILE TRUE
WAIT 0

IF helmet = 0
AND IS_CHAR_ON_ANY_BIKE scplayer
    GET_CAR_CHAR_IS_USING scplayer motorcycle
    GET_CAR_MODEL motorcycle motorcycle_m
    GOSUB verify_m
    GOSUB wearing_helmet
    IF IS_CAR_STOPPED motorcycle
    AND IS_CHAR_ON_ANY_BIKE scplayer
        STORE_CLOTHES_STATE
        GOSUB tasks
        helmet = 1
    ENDIF
ENDIF

IF helmet = 1
AND IS_CHAR_ON_FOOT scplayer
    WAIT 1500
    IF IS_CHAR_STOPPED scplayer
    AND IS_CHAR_ON_FOOT scplayer
        GOSUB helmet_verify
        TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
        RESTORE_CLOTHES_STATE
        WAIT 250
        BUILD_PLAYER_MODEL 0
        helmet = 0
    ENDIF
ENDIF

end:
ENDWHILE

verify_m:
IF motorcycle_m = 481
OR motorcycle_m = 509
OR motorcycle_m = 510
    GOTO end
    ELSE
ENDIF
RETURN

tasks:
SWITCH motorcycle_m
    CASE 468
        TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
        WAIT 250
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 MOTO MOTO 16
        BUILD_PLAYER_MODEL 0
        BREAK
    DEFAULT
        TASK_PLAY_ANIM scplayer goggles_put_on GOGGLES 4.0 0 0 0 0 -1
        WAIT 250
        GIVE_PLAYER_CLOTHES_OUTSIDE_SHOP 0 HELMET HELMET 16
        BUILD_PLAYER_MODEL 0
        BREAK
ENDSWITCH
RETURN

helmet_verify:
IF IS_PLAYER_WEARING 0 16 MOTO
OR IS_PLAYER_WEARING 0 16 MOTO
ENDIF
RETURN

wearing_helmet:
IF NOT IS_PLAYER_WEARING 0 16 MOTO
OR NOT IS_PLAYER_WEARING 0 16 HELMET
ENDIF
WAIT 2500
RETURN

}
SCRIPT_END

Adicionado após 2 minutos 56 segundos:
Inan-Ahammad escreveu: A unnecessary Else statement here.
really was not needed. Thanks!

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 28 Jun 2018, 23:54
por Junior_Djjr
Agora ficou ótemo

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 29 Jun 2018, 08:06
por Xamugel
Boa cara, agora tá show de bola.

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 29 Jun 2018, 09:36
por DelHaven
Show de bola esse mod
precisa comprar o capacete ou so de subir ja aparece?

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 29 Jun 2018, 13:00
por Snowflakes
DelHaven escreveu: precisa comprar o capacete?

Não



Poderia deixar os jogadores escolherem o modelo do capacete em arquivo .ini

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 29 Jun 2018, 13:07
por xXBrunoXx
Snowflakes escreveu: Poderia deixar os jogadores escolherem o modelo do capacete em arquivo .ini
N acho acho tão necessário já que só existe dois modelos de capacete no jogo, mas vou ver se coloco isso no mod...

edit: 
já coloquei isso no mod...

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 29 Jun 2018, 18:04
por Junior_Djjr
xXBrunoXx escreveu:
Snowflakes escreveu: Poderia deixar os jogadores escolherem o modelo do capacete em arquivo .ini
N acho acho tão necessário já que só existe dois modelos de capacete no jogo, mas vou ver se coloco isso no mod... 
Por isso que geralmente não adicionam mais modelos, pois os mods não deixam escolher outros :wesmart:

WearHelmet Mod (Usar capacete ao subir em uma moto)

Enviado: 01 Jul 2018, 13:36
por xXBrunoXx
Junior_Djjr escreveu: Por isso que geralmente não adicionam mais modelos, pois os mods não deixam escolher outros :wesmart:
Olhando por esse lado é verdade mesmo...