[spells] Condition Damage

renatotbreis
em Lixeira Pública

renatotbreis

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/07/08Posts: 17Char no Tibia: Daeron Remus

seguinte: minha spell é um raio simples que, quando acerta um alvo, causa dano normal e depois cria a condição shock, que pode:

 

-se for player: tirar 8% de vida do máx (se não for possível pode ser 'level*2')

-se for monstro: tirar 25hp.

 

eu não sei como colocar essa função com essas condições. por favor, alguém pode postar em um script de 'exevo gran vis lux'?

 

obrigado,

 

braço!

Assinatura irregular, movido para o "quem sou eu"

tozinho123

Eusoboladopracaralho
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/11/07Posts: 61Char no Tibia: Paladinhozinho

putz cara ai vc me pego nao sei quase nada sobre spells, posso tentar fazer pra voce em movements, e depois tento fazer por spells, exemplo:

 

function onStepIn(cid, item, tileitem)
if isPlayer == TRUE then
addDamageCondition(energy, [color="#FF0000"]rounds[/color], [color="#FF00FF"]time[/color], [color="#00FF00"]value[/color])
elseif isMonster == TRUE then
addDamageCondition(energy, [color="#FF0000"]rounds[/color], [color="#FF00FF"]time[/color], [color="#00FF00"]value[/color])
end
return TRUE
end

 

 

e em moviments.xml adicione

<movevent event="StepIn" itemid="[color="#0000FF"]xxxx[/color]" script="[color="#FFFF00"]conditiondamage.lua[/color]"/>

 

Em Amarelo: o nome do script que fica em data/movements/scripts

Em Vermelho: a quantia de hits que quer que o player receba

Em Rosa: o tempo que ela vai durar

Em Verde: o dano, deve ser diferente para monsters e players (se voce quiser claro...)

Em Azul: o id do item que o player ou monster pisara pra ganhar a condition

 

OBS: eu fiz o script postando esse topico e obviamente nao testei ;S

Assinatura bugada, movido para "sobre mim"

lucasjockey

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 30/07/07Posts: 101

Também não sei, mas para tirar 8% da vida de alguém é só fazer isso:

 

life = getPlayerHealth(uid)

doPlayerAddHealth(cid,0 - (life * 0.08))

 

simples ;D

x[sup]2[/sup]=-1
x=i
:D

renatotbreis

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/07/08Posts: 17Char no Tibia: Daeron Remus
Também não sei, mas para tirar 8% da vida de alguém é só fazer isso:

 

life = getPlayerHealth(uid)

doPlayerAddHealth(cid,0 - (life * 0.08))

 

simples ;D

 

OPA!

 

vou tentar fazer isso com magic effects programados por tempo enquanto dura o efeito de shock!

 

só uma coisa: o getPlayerHealth pega o total de vida ou o máximo de vida do player?

 

vlw, braço!

 

---edit---

 

acabei de me lembrar... esse efeito que você botou aqui tira vida do jogador, mas não de um player da área da spell >.<

não sabe como fazer com que seja do tipo, na própria local condition?

Assinatura irregular, movido para o "quem sou eu"

tozinho123

Eusoboladopracaralho
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/11/07Posts: 61Char no Tibia: Paladinhozinho

@up, vc ta falando comigo ou com o lucas? ;S, se for comigo, getCreatureHealth(cid) pega a health que o player esta e NAO a total, pra pegar a total é getPlayerCreatureHealth(cid), e pra fazer o efeito do shock soh bota:

 

pos = getCreaturePosition(cid)

doSendMagicEffect(pos ,CONST_ME_ENERGYHIT)

 

edit:

 

agora entendi oq quis dizer, pra fazer uma area vc tem que bota tipo assim:

 

function onStepIn(cid, tileitem, toPosition, fromPosition)
local life = getCreatureMaxHealth(cid)
pos = getCreaturePosition(cid)
itempos = getThingfromPos(pos)
if isMonster(itempos) == TRUE then
doAreaCombatHealth(cid, COMBAT_PHYSICALDAMAGE, pos, 1, 25, 25, CONST_ME_ENERGYHIT)
elseif isPlayer(itempos) == TRUE then
doAreaCombatHealth(cid, COMBAT_PHYSICALDAMAGE, pos, 1, life * 0.08, life * 0.08, CONST_ME_ENERGYHIT)
end
return TRUE
end

 

ta ai achu que funciona(nao sei pq nao testei ;S) e to tentando passar para spell :smile_positivo: (mas como sou um otimo spell maker nun sei se vai sai bom;/)

 

edit2: po cara nun consigu nao velho, meu forte é script de actions/movements... nao consigo fazer uma spell assim malz..

o que eu posso fazer é tipo uma energy bomb, que quando o player pisar em cima tira 8% da vida ou player tira 25, mais que isso só um spell maker ou alguem mais experiente que eu ;S

Assinatura bugada, movido para "sobre mim"

renatotbreis

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/07/08Posts: 17Char no Tibia: Daeron Remus

@Tozao

 

putz kra! vo tenta ve aki se consigo alguma coisa com o que você me passou aí. o.O

 

tibiaa4e? colex? dokmos? alguém? :cry:

 

braço...

Assinatura irregular, movido para o "quem sou eu"