Ir para conteúdo
  • 0

Como usar Stats Change


Snowsz

Pergunta

Bem estou meio enferrujado nos scripts, estou voltando a essa área e estou querendo re-aprender oque não lembro mais, então queria saber como usar onStatsChange(cid, attacker, type, combat, value), também stats_healthloss manaloss não sei bem mais como era mais eu lembro que vi na semana passada em um script dai não lembro direito como é, eu quero saber para que serve, como usar, de todos os tipos...

 

Agradeço a quem me ajudar, e darei reputação é claro ^^

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

A função onStatsChange(), serve para mudar os Status do jogador, entre eles: Battle, Healing, Bebado, Poison!

E a função stats_healthloss, nunca vi. Tem certeza que se escreve assim?

Link para o comentário
Compartilhar em outros sites

  • 0

A função onStatsChange(), serve para mudar os Status do jogador, entre eles: Battle, Healing, Bebado, Poison!

E a função stats_healthloss, nunca vi. Tem certeza que se escreve assim?

wtf

essa é uma função callback de C pra quando uma criatura ganha ou perde hp ou mana

se n sabe n fala

@topico

vamo explica direito

onStatsChange(cid, attacker, _type, combat, value)

 

os argumentos(arg) podem ter qualquer nome que desejar,so importa a ordem dos mesmos

1ºarg = cid esse n precisa de explicação

 

2ºarg = attacker quem deu o dano(ou healo)

 

3ºarg = _type(n use o nome type,pois type é uma função que pode ser bem util)

o _type pode ser 4 tipos

STATSCHANGE_HEALTHGAIN(quando ganha hp),

STATSCHANGE_HEALTHLOSS(quando perde hp),

STATSCHANGE_MANALOSS(quando perde mana),

STATSCHANGE_MANAGAIN(quando ganha mana)

 

como usa-los?

coloque um if pra checalos

se vc quer quando perder sangue use

if _type == STATSCHANGE_HEALTHLOSS then

 

4ºarg = combat o tipo de dano physical,fire,etc. caso queira que seja quan um tipo de dano em epecifico use um "if combat == NomeDoTipoDeDano then"

os tipos de dano podem ser visto na lib 000-constant

 

5ºarg = value o quando de hp ou mana ganho/perdeu

 

exemplo de script

torna player imunea danos fire enquanto tiver o storage

function onStatsChange(cid, attacker, _type, combat, value)
 if _type == STATSCHANGE_HEALTHLOSS then --checa se foi uma perda de hp
   if getPlayerStorageValue(cid,666) == 1 then	 --checa o storage
     if combat == COMBAT_FIREDAMAGE then	 --checa se foi por dano de fogo
	 return false												   --retorna falso(encerando o script) sendo assim n muda o hp do jogador
  end
   end
 end
 return true														    --retorna verdadeiro mudando o hp de player
end

agora ela compactada e sem comentarios

function onStatsChange(cid, attacker, _type, combat, value)
 if _type == STATSCHANGE_HEALTHLOSS and getPlayerStorageValue(cid,666) == 1 and combat == COMBAT_FIREDAMAGE then
   return false
 end
 return true
end

lembrece de sempre indendar o script pra deixar organizado

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...