Compartilhe
avatar
Mensagens Nível 2
Mensagens Nível 2
Mensagens : 97
Reputação : 12
Desde : 18/10/2015
Idade : 23
Localização : São Paulo - SP
Ver perfil do usuário

Script de armas para evitar mesma munição

em Dom 01 Nov 2015, 01:11
Olá,
gostaria de uma ajuda em um script super simples. Esse é o primeiro script feito do zero por mim, e por isso ainda não conheço muito a respeito da linguagem do cleo.
O objetivo final do mod é criar um sistema de slots de poucas armas, incluindo armas primárias e secundárias. Quero deixar os slots das armas primárias no slot 4, das metralhadoras, porém, suas munições acabam sendo consideradas iguais.
Nisso, estou fazendo esse script para desfazer esse problema, com excessão das armas 9mm e 9mm silenciada, que quero manter o mesmo slot. Inclusive, queria criar um separado para somar as munições de 9mm e 9mm silenciada no slot 2, o padrão delas.
O script que tentei fazer foi esse:

Código:
{$CLEO .cs}
0000: NOP

:Slot4NoSameAmmo01
wait 0
   Player.Defined($PLAYER_CHAR)
jf @Slot4NoSameAmmo01
04B8: get_weapon_data_from_actor $PLAYER_ACTOR slot 4 weapon 0@ ammo 1@ model 2@
if
0039:   0@ == 22
jf @Slot4NoSameAmmo02
wait 50
04B8: get_weapon_data_from_actor $PLAYER_ACTOR slot 4 weapon 3@ ammo 4@ model 5@
if  
0039:   3@ == 23
jf @Slot4NoSameAmmo03
0114: set_actor $PLAYER_ACTOR weapon 23 add_ammo 1@

jump @Slot4NoSameAmmo01

:Slot4NoSameAmmo02
if
0039:   0@ == 23
jf @Slot4NoSameAmmo03
wait 50
04B8: get_weapon_data_from_actor $PLAYER_ACTOR slot 4 weapon 3@ ammo 4@ model 5@
if
0039:   3@ == 22
jf @Slot4NoSameAmmo03
0114: set_actor $PLAYER_ACTOR weapon 22 add_ammo 1@
jump @Slot4NoSameAmmo01

:Slot4NoSameAmmo03
wait 50
04B8: get_weapon_data_from_actor $PLAYER_ACTOR slot 4 weapon 3@ ammo 4@ model 5@
if
003B:   3@ == 0@  // (int)
jf @Slot4NoSameAmmo05
jump @Slot4NoSameAmmo01

:Slot4NoSameAmmo05
0A8F: 6@ = 1@ - 4@ // int
0114: set_actor $PLAYER_ACTOR weapon 22 add_ammo 6@
jump @Slot4NoSameAmmo01

Agradeço a ajuda de vocês.
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21852
Reputação : 666
Desde : 03/05/2012
Idade : 21
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: Script de armas para evitar mesma munição

em Dom 01 Nov 2015, 04:20
Difícil entender, tipo, parece q o modo q vc está tentando não ajudaria muito nisso (não encontrei a lógica) ao msm tempo q eu não consigo imaginar um modo simples de se criar isso
Soh consigo imaginar um re-controle geral da munição, guardando o valor de todas as armas no script e checando se vc atirou com alguma arma, se sim, remove 1 e rebota o valor na arma
Eh como se a contagem do jogo fosse totalmente ignorada e o cleo recriaria a contagem por si soh

______________________________

Mestre3224 voltou, ainda há esperanças no Youtube.
avatar
Mensagens Nível 2
Mensagens Nível 2
Mensagens : 97
Reputação : 12
Desde : 18/10/2015
Idade : 23
Localização : São Paulo - SP
Ver perfil do usuário

Re: Script de armas para evitar mesma munição

em Dom 01 Nov 2015, 12:17
Seguinte,

- Quero fazer slots com armas primárias e secundárias.

- As armas secundárias do jogo seriam: as pistolas em geral, a sawoff, a tec9 e a micro-uzi.

- Poderia deixá-las no slot 2, das pistolas, porém, não atiraria com nenhuma arma dentro do carro. Para isso, tenho que deixá-las no slot 4, das sub-metralhadoras. Isso tudo eu faria pelo weapon.dat mesmo.

- Porém, nesse slot, as munições são consideradas as mesmas. Por exemplo: estou com uma sawoff shotgun, estou com 15 balas, se vou trocá-la por uma 9mm, ao invés de de substituir as 15 munições de shotgun pela pistola, elas são somadas como se fossem do mesmo tipo, entendeu?

- O objetivo do script é diferenciar os tipos de munições de cada arma secundária, com excessão das 9mm e 9mm silenciada, que quero mantê-las do mesmo tipo.

Vou tentar explicar o que tentei fazer no script:

- Na primeira label: defini se o player estava disponível; pelo opcode 04B8, defini qual é a arma e a quantidade de munição que tenho no slot 4 no primeiro momento; depois verifica se a arma é a 9mm (ID 22 no sanny builder), caso contrário, iria pra label 2; se fosse a 9mm, verificaria num instante 2, pelo opcode 04B8, se a arma foi trocada pela silenciada, se sim, manteria a munição, caso contrário, iria pra label 3.

- Na segunda label: depois verifica se a arma é a 9mm silenciada (ID 23 no sanny builder), caso contrário, iria pra label 3; se fosse ela, verificaria num instante 2 se a arma foi trocada pela 9mm comum, se sim, manteria a munição, caso contrário, iria pra label 3.

- Na label 3, faria semelhante na segunda e na primeira, mas verificaria se simplesmente a arma trocou por qualquer outra, caso contrário voltaria para a label 1; se confirmasse, iria para a label 5;

- Na label 5 (pulei a 4): com a confirmação de troca de arma na label 3, ela garantiria que as munições não fossem somadas, e assim, apenas substituiria uma munição pela outra.

Espero ter deixado bem mais claro.
Conteúdo patrocinado

Re: Script de armas para evitar mesma munição

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