Bom dia pessoal,
tenho seguinte script para clonar pedestres
que ao chega perto do pedestre e apertar x o pedestre morre e o cj pega o corpo dele
, ate ai tudo bem eu entendi como funciona o script!
o que eu quero fazer é pegar o corpo do pedestre e o pedestre ficar la morto com o corpo do cj!
como eu faço para o pedestre clonar o cj?
obs: Tentei 09C7: change_player 0@ model_to $PLAYER_CHAR e deu bug kkkk
tenho seguinte script para clonar pedestres
- Código:
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 0
if and
not Actor.Driving($PLAYER_ACTOR)
0AB0: key_pressed 88
jf @NONAME_2
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@
if
Actor.Defined(0@)
jf @NONAME_317
0169: set_fade_color_RGB 255 0 0
0665: get_actor 0@ model_to 7@
Model.Load(7@)
04ED: load_animation "BOX"
038B: load_requested_models
jump @NONAME_123
:NONAME_123
wait 0
if
Model.Available(7@)
04EE: animation "BOX" loaded
jf @NONAME_123
0321: kill_actor 0@
Player.CanMove($PLAYER_CHAR) = False
0669: 8@ = attach_particle "BLOOD_HELI" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 flag 1
064C: make_particle 8@ visible
wait 100
09C7: change_player $PLAYER_CHAR model_to 7@
Player.ClearWantedLevel($PLAYER_CHAR)
0605: actor $PLAYER_ACTOR perform_animation_sequence "BOXSHUP" IFP_file "BOX" 4.0 loop 0 0 0 0 time -1 // versionA
0169: set_fade_color_RGB 255 0 0
fade 0 1000
wait 800
fade 1 20000
Model.Destroy(7@)
Player.CanMove($PLAYER_CHAR) = True
0650: destroy_particle 8@
wait 2000
Actor.DestroyWithFade(0@)
jump @NONAME_2
:NONAME_317
wait 0
Actor.RemoveReferences(0@)
jump @NONAME_2
que ao chega perto do pedestre e apertar x o pedestre morre e o cj pega o corpo dele

o que eu quero fazer é pegar o corpo do pedestre e o pedestre ficar la morto com o corpo do cj!
como eu faço para o pedestre clonar o cj?

obs: Tentei 09C7: change_player 0@ model_to $PLAYER_CHAR e deu bug kkkk
- .BlokScripter CLEO - Básico
- Mensagens : 317
Reputação : 14
Desde : 01/02/2014
Idade : 19
Localização : Belém/PA
Não seria mais fácil usar o "0AB5: store_actor $PLAYER_ACTOR closest_vehicle_to 0@ closest_ped_to 1@"?@Delmar grande escreveu:
- Código:
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@
É claro... esse opcode é para trocar o modelo do player, e não de um ator, a própria descrição dele diz isso...@Delmar grande escreveu:obs: Tentei 09C7: change_player 0@ model_to $PLAYER_CHAR e deu bug kkkk
@Delmar grande escreveu:eu quero fazer é pegar o corpo do pedestre e o pedestre ficar la morto com o corpo do cj!
E o que eu faria para fazer esse ator ter o modelo do CJ, seria pegar as coordenadas do ator 0@; destruir ele; criar um ator com o modelo #NULL nas coordenadas que você pegou; matar ele.
- Código:
00A0: store_actor 1@ position_to 3@ 4@ 5@
wait 100
destroy_actor 1@
009A: 2@ = create_actor_pedtype 8 model #NULL at 3@ 4@ 5@
0321: kill_actor 2@
Basicamente ele criaria um novo ator no mesmo lugar onde estava o anterior, seria tão rápido que ninguém ia perceber que trocou de ator e colocou outro no mesmo lugar...
______________________________
|
![[AJUDA] com script de clonagem Gy3eJVe](https://i.imgur.com/gy3eJVe.png)
Assinatura e avatar by Jacobi -- PSN ID: GearHFB4
Rapaz muito obrigado, deu certinho veja como ficou o script!

- Código:
{$CLEO .cs}
//-------------MAIN---------------
0000: NOP
:NONAME_2
wait 0
if and
not Actor.Driving($PLAYER_ACTOR)
0AB0: key_pressed 88
jf @NONAME_2
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@
if
Actor.Defined(0@)
jf @NONAME_317
0169: set_fade_color_RGB 255 0 0
0665: get_actor 0@ model_to 7@
0665: get_actor $PLAYER_ACTOR model_to 2@
Model.Load(7@)
Model.Load(2@)
04ED: load_animation "BOX"
038B: load_requested_models
jump @NONAME_123
:NONAME_123
wait 0
if and
Model.Available(7@)
Model.Available(2@)
04EE: animation "BOX" loaded
jf @NONAME_123
00A0: store_actor 0@ position_to 4@ 5@ 6@
wait 100
Model.Destroy(0@)
009A: 1@ = create_actor_pedtype 8 model 2@ at 4@ 5@ 6@
0321: kill_actor 1@
Player.CanMove($PLAYER_CHAR) = False
0669: 8@ = attach_particle "BLOOD_HELI" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 flag 1
064C: make_particle 8@ visible
wait 100
09C7: change_player $PLAYER_CHAR model_to 7@
Player.ClearWantedLevel($PLAYER_CHAR)
0605: actor $PLAYER_ACTOR perform_animation_sequence "BOXSHUP" IFP_file "BOX" 4.0 loop 0 0 0 0 time -1 // versionA
0169: set_fade_color_RGB 255 0 0
fade 0 1000
wait 800
fade 1 20000
Model.Destroy(7@)
Model.Destroy(2@)
Player.CanMove($PLAYER_CHAR) = True
0650: destroy_particle 8@
wait 2000
Actor.DestroyWithFade(0@)
jump @NONAME_2
:NONAME_317
wait 0
Actor.RemoveReferences(0@)
jump @NONAME_2
esse Blok nao merece scripter nivel 1 nao 
aumentei pra 2
sei lah de onde esse script veio e quem realmente fez, mas, tae as correções...
@script (0)
e se por algum motivo o ator seja apagado nesse tempo? (bom... neste caso nao iria crashar pois vc está usando destroy actor...) mas se fosse outra coisa, por exemplo vc pega a posição do ator, espera 100 ms, e depois por exemplo bota um novo modelo nele, se ele por algum motivo foi apagado no jogo nesse tempo, o jogo irá crashar
entao soh use wait quando necessario... no caso, soh 1 "wait 0" em cada loop do script e soh uns outros wait quando se precisa realmente esperar alguma coisa
@script (1)
@script (2)

massssss dae eu lhe pergunto.... pq está carregando esses modelos? isso sao modelos novos q nao estao sendo usados no jogo? nao! eh o modelo do ator, logicamente ele jah está carregado
(cuidado, vc pode tirar esssa parte de carregar os modelos, mas nao pode esquecer q ali embaixo tem a parte onde marca como nao mais necessarios (model destroy), se usar model destroy quando vc antes nao carregou o tal modelo, possivelmente vc irá fazer descarregar modelos de outros scripts do jogo, crash na certa, entao apague o carregamento e TBM O MODELO DESTROY!)
@script (3)
piiiipiiiiipiiiii alerta
nao descarregou o .ifp
o .ifp vai ficar preso na memoria do jogo pra sempre até vc fechar e abrir de novo

aumentei pra 2
sei lah de onde esse script veio e quem realmente fez, mas, tae as correções...
@script (0)
- Código:
00A0: store_actor 1@ position_to 3@ 4@ 5@
wait 100
destroy_actor 1@
e se por algum motivo o ator seja apagado nesse tempo? (bom... neste caso nao iria crashar pois vc está usando destroy actor...) mas se fosse outra coisa, por exemplo vc pega a posição do ator, espera 100 ms, e depois por exemplo bota um novo modelo nele, se ele por algum motivo foi apagado no jogo nesse tempo, o jogo irá crashar
entao soh use wait quando necessario... no caso, soh 1 "wait 0" em cada loop do script e soh uns outros wait quando se precisa realmente esperar alguma coisa
@script (1)
- Código:
jump @NONAME_123
:NONAME_123
@script (2)
- Código:
038B: load_requested_models //carregou os modelos
(...)
Model.Available(7@) //checar se carregou
Model.Available(2@)

massssss dae eu lhe pergunto.... pq está carregando esses modelos? isso sao modelos novos q nao estao sendo usados no jogo? nao! eh o modelo do ator, logicamente ele jah está carregado
(cuidado, vc pode tirar esssa parte de carregar os modelos, mas nao pode esquecer q ali embaixo tem a parte onde marca como nao mais necessarios (model destroy), se usar model destroy quando vc antes nao carregou o tal modelo, possivelmente vc irá fazer descarregar modelos de outros scripts do jogo, crash na certa, entao apague o carregamento e TBM O MODELO DESTROY!)
@script (3)
piiiipiiiiipiiiii alerta
nao descarregou o .ifp

@script (0)
Esse código destroy_actor 1@ não pegou no meu Sanny Builder 3
esse Model.Destroy(1@) seria mesma a coisa?
@script (1) e @script (2) entendi!
@script (3)
Para descarregar o .ifp seria um
04EF: release_animation "BOX"
Obs: Também não sei quem fez o script, estou apenas estudando ele!
Esse código destroy_actor 1@ não pegou no meu Sanny Builder 3
esse Model.Destroy(1@) seria mesma a coisa?
@script (1) e @script (2) entendi!

@script (3)
Para descarregar o .ifp seria um
04EF: release_animation "BOX"
Obs: Também não sei quem fez o script, estou apenas estudando ele!
nem percebi q vc usou ele...@Delmar grande escreveu:@script (0)
Esse código destroy_actor 1@ não pegou no meu Sanny Builder 3
esse Model.Destroy(1@) seria mesma a coisa?
nao, NUNCA!
destroy_actor = apagar ator instantemente (nome real do opcode: DELETE_CHAR )
Model.Destroy = marcar modelo como nao mais necessario (nome real do opcode: MARK_MODEL_AS_NO_LONGER_NEEDED )
nao tem NADÍSSIMA a ver um com o outro, nao pegou ai pq o Blok mandou soh o nome do opcode, ele nao mandou o opcode, o opcode eh "009B: destroy_actor", era pra vc ter procurado no opcode search

gzuz amado, nao faça isso, estude scripts q vc sabe q sao bons, e melhor ainda high level, low level (como este) até eu tenho dificuldade pra lerObs: Também não sei quem fez o script, estou apenas estudando ele!
(estou melhorando esse script ai, logo mando aqui, dae vc "estuda" por ele)
achei mais erros no script:
matou o ator, e depois removeu as referencias dele... pq remover as referencias? ele era um pedestre da rua, ele nao tem referencias de criação, ele eh da ruaeh um vira lata
ainda mais pq, antes apagou ele, e depois removeu as referencias... wtff remover as referencias de um ator q nao tem referencias, e q jah foi apagado, q?
e... trocou a cor do fade pra vermelho.. MAS NAO VOLTOU PRA PRETO MEO DEOS, bugou tudo o jogo, o fade do jogo tem q ser preto, se vc quer usar vermelho, use, mas volte pro estado original (preto), nao pode deixar vermelho pra sempre @__@ vc vai entrar num interior e fica aquela tela vermelha

matou o ator, e depois removeu as referencias dele... pq remover as referencias? ele era um pedestre da rua, ele nao tem referencias de criação, ele eh da rua
ainda mais pq, antes apagou ele, e depois removeu as referencias... wtff remover as referencias de um ator q nao tem referencias, e q jah foi apagado, q?
e... trocou a cor do fade pra vermelho.. MAS NAO VOLTOU PRA PRETO MEO DEOS, bugou tudo o jogo, o fade do jogo tem q ser preto, se vc quer usar vermelho, use, mas volte pro estado original (preto), nao pode deixar vermelho pra sempre @__@ vc vai entrar num interior e fica aquela tela vermelha
- Código:
{$cleo}
0000:
while true
wait 0
if and
not Actor.Driving($PLAYER_ACTOR)
0AB0: key_pressed 88
then
Actor.StorePos($PLAYER_ACTOR, 4@, 5@, 6@)
0A3E: unknown_get_actor_in_sphere 4@ 5@ 6@ radius 1.5 1.5 1.5 handle_as 0@
if Actor.Defined(0@)
then
0169: set_fade_color_RGB 255 0 0 //fade na cor vermelha
0665: get_actor 0@ model_to 7@
0665: get_actor $PLAYER_ACTOR model_to 2@
04ED: load_animation "BOX"
038B: load_requested_models //estranho, "models", mas carrega animações tbm sim
00A0: store_actor 0@ position_to 4@ 5@ 6@
009B: destroy_actor 0@
009A: 1@ = create_actor_pedtype 8 model 2@ at 4@ 5@ 6@
0321: kill_actor 1@
Player.CanMove($PLAYER_CHAR) = False
0669: 8@ = attach_particle "BLOOD_HELI" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 flag 1
064C: make_particle 8@ visible
09C7: change_player $PLAYER_CHAR model_to 7@
Player.ClearWantedLevel($PLAYER_CHAR)
0605: actor $PLAYER_ACTOR perform_animation_sequence "BOXSHUP" IFP_file "BOX" 4.0 loop 0 0 0 0 time -1 // versionA
0169: set_fade_color_RGB 255 0 0
//fazer o fade (está fazendo na cor vermelha)
fade 0 1000
wait 800
fade 1 20000 //20 segundos? nao eh muito?
Player.CanMove($PLAYER_CHAR) = True
0650: destroy_particle 8@
while 016B: fading //enquanto está "fadeando" (fazendo o fade), fica repetindo o "wait 0", no caso, o script fica parado esperando terminar o fade
wait 0
end
04EF: release_animation "BOX" //eu nao lembro se isso descarrega o .ifp ou soh marca ele como nao mais necessário, bom, vou deixar o opcode aqui, nao deve dar problema algum
0169: set_fade_color_RGB 0 0 0 //quando terminar o fade, voltar o fade na cor preta (se voltar na cor preta antes de terminar, ele vai "fadear" em preto, mas vc quer vermelho neh
//como pode se ver, soh depois do fade acabar q o script continua, volta o fade na cor certa e pode ativar o mod de novo, realmente recomendo diminuir o tempo do fade para assim ele voltar mais rapidamente na cor preta e o mod poder ser ativado de novo
//ou daria pra nao fazer o script esperar terminar o fade pra deixar preto de novo, mas seria um pouquinh mais avançado, sei lah se vc entenderia
//fim do script...
end
end
end

Junior_Djjr testei ele e esta funcionando bem ate agora, vou testar mais para ver se está 100%!
qualquer coisa eu aviso ai valeu vou estudar esse código melhor!
Obs: não tinha que ter um 04EF: release_animation "BOX" no final do script?
qualquer coisa eu aviso ai valeu vou estudar esse código melhor!

Obs: não tinha que ter um 04EF: release_animation "BOX" no final do script?
eh, sim, precisava, avisei no post e esqueci de colocar no script 
se nao me engano, usar
mas nao tenho ctz, eu nem lembro de alguma vez ter usado isso, e possivelmente no caso desse script eh melhor apagar manualmente pois senao a particula fica muito tempo, sei lah, vc q sabe:FTS:

se nao me engano, usar
- Código:
064F: remove_references_to_particle 8@
- Código:
064C: make_particle 8@ visible
- Código:
0650: destroy_particle 8@
mas nao tenho ctz, eu nem lembro de alguma vez ter usado isso, e possivelmente no caso desse script eh melhor apagar manualmente pois senao a particula fica muito tempo, sei lah, vc q sabe:FTS:
watt
nao vejo sentido acontecer isso @__@
nao vejo sentido acontecer isso @__@
try this
- Código:
0687: clear_actor 0@ task
lembro q jah sofri com esse tipo de coisa, mas de algum modo parece q eu consegui 
e eu tinha quase ctz q era este

e eu tinha quase ctz q era este
- Código:
{$cleo}
0000:
while true
wait 0
if 0ADC: test_cheat "cu"
then
0A8D: 29@ = read_memory 0xB74490 size 4 virtual_protect 0
29@ += 0x4
0A8D: 29@ = read_memory 29@ size 4 virtual_protect 0
for 30@ = 0 to 35584 step 0x100
0A8D: 0@ = read_memory 29@ size 1 virtual_protect 0
29@ += 0x1
if and
0@ >= 0x00
0x80 > 0@
then
005A: 0@ += 30@
0687: clear_actor 0@ task
end
end
end
end
e.... realmente nao fez o cara parar de me bater .-. q porra vei
era pra ter parado http://gtag.gtagaming.com/opcode-database/opcode/0687/
Junior_Djjr parece que o código é esse 0687: clear_actor 0@ task mesmo, mais por algum motivo não ta funfando!
Mais quanto o lance se bater no pedestre o player trava consegui uma solução
assim veja adicionei mais uns códigos abaixo do change_player
Mais quanto o lance se bater no pedestre o player trava consegui uma solução
assim veja adicionei mais uns códigos abaixo do change_player
- Código:
09C7: change_player $PLAYER_CHAR model_to 7@
wait 500
Actor.PutAt($PLAYER_ACTOR, 4@, 5@, 6@)

eh, acho q ele tava ficando enfiado no chao depois da troca de modelo @_@
mas nem dando pra perceber
mas nem dando pra perceber
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum