Hm legal
só falto organizar mais o tópico e chegar direto ao assunto sem previas,ou sejá somente com relação com o tópico(Função).
Por glugluguga, 07 de jun. de 2010 em Noticias - Arquivo
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

Hm legal
só falto organizar mais o tópico e chegar direto ao assunto sem previas,ou sejá somente com relação com o tópico(Função).
info
Grupo: Visconde
Registrado: 20/08/06
Posts: 250
Reputação: +146

Boa, mas vc deveria ter feito um script e postado, ja que não é bem um artigo.
Vc pode achar muito mais nas sources, "items.cpp" para ser mais específico.
La vc acha:
reflectpercentall reflectpercentelements reflectpercentmagic reflectpercentenergy reflectpercentfire ... reflectchanceall
E tudo mais.
info
Grupo: Campones
Registrado: 11/05/09
Posts: 34
Reputação: +11
Char no Tibia: Okuta Sujo

Vodkart
Realmente acredito que eu deveria organizar o topico assim, mais se você achar que esta bom assim... Vou achar que ta ótimo.
Kydrai
Exatamente, mas não tive muito tempo tive compromissos entende, mais será raro alguem querer que só reflita energy, fire ou ice, provavelmente ele vai querer colocar reflectpercentall, pra refletir os hit xD.
excelente ! era justamente isso que eu procurava !
info
Grupo: Campones
Registrado: 06/09/10
Posts: 4
Reputação: 0

Parece ser legal, dei uma olhada aqui nas sources...
else if(tmpStrValue == "reflectpercentall")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
for(int32_t i = COMBAT_FIRST; i <= COMBAT_LAST; i++)
it.abilities.reflect[REFLECT_PERCENT][i] += intValue;
}
}
else if(tmpStrValue == "reflectpercentelements")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ENERGYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_FIREDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_EARTHDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ICEDAMAGE] += intValue;
}
}
else if(tmpStrValue == "reflectpercentmagic")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ENERGYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_FIREDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_EARTHDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ICEDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_HOLYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_PERCENT][COMBAT_DEATHDAMAGE] += intValue;
}
}
else if(tmpStrValue == "reflectpercentenergy")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ENERGYDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentfire")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_FIREDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentpoison" || tmpStrValue == "reflectpercentearth")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_EARTHDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentice")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_ICEDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentholy")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_HOLYDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentdeath")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_DEATHDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentlifedrain")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_LIFEDRAIN] += intValue;
}
else if(tmpStrValue == "reflectpercentmanadrain")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_MANADRAIN] += intValue;
}
else if(tmpStrValue == "reflectpercentdrown")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_DROWNDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercentphysical")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_PHYSICALDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectpercenthealing")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_HEALING] += intValue;
}
else if(tmpStrValue == "reflectpercentundefined")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_PERCENT][COMBAT_UNDEFINEDDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchanceall")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
for(int32_t i = COMBAT_FIRST; i <= COMBAT_LAST; i++)
it.abilities.reflect[REFLECT_CHANCE][i] += intValue;
}
}
else if(tmpStrValue == "reflectchanceelements")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ENERGYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_FIREDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_EARTHDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ICEDAMAGE] += intValue;
}
}
else if(tmpStrValue == "reflectchancemagic")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
{
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ENERGYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_FIREDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_EARTHDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ICEDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_HOLYDAMAGE] += intValue;
it.abilities.reflect[REFLECT_CHANCE][COMBAT_DEATHDAMAGE] += intValue;
}
}
else if(tmpStrValue == "reflectchanceenergy")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ENERGYDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancefire")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_FIREDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancepoison" || tmpStrValue == "reflectchanceearth")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_EARTHDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchanceice")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_ICEDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchanceholy")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_HOLYDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancedeath")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_DEATHDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancelifedrain")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_LIFEDRAIN] += intValue;
}
else if(tmpStrValue == "reflectchancemanadrain")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_MANADRAIN] += intValue;
}
else if(tmpStrValue == "reflectchancedrown")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_DROWNDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancephysical")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_PHYSICALDAMAGE] += intValue;
}
else if(tmpStrValue == "reflectchancehealing")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_HEALING] += intValue;
}
else if(tmpStrValue == "reflectchanceundefined")
{
if(readXMLInteger(itemAttributesNode, "value", intValue))
it.abilities.reflect[REFLECT_CHANCE][COMBAT_UNDEFINEDDAMAGE] += intValue;
}
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino

Caramba, que legal a "descoberta" gostei, rsrs. Obrigado ae pela informaçao, mais um complemento para mim ![]()
Atensiosamente,
Roksas.
cara se isso funcionar vai ser d++ vlw =D
bem funcionaria perfeitamente se nao fosse pelo fato de que quando o player pisa em um "field" ou em uma armadilha..
o sistema não sabe a quem refletir o dano tomada e o ot cai.. =S
mas mesmo assim vale a pena tirei os danos de field do meu pra usar esse atribute =D
Editado Janeiro 13 por affcara
Parabéns, não entendi perfeitamente mas vo testart, vlws aew por trazer ao Xtibia!!
Te+
info
Grupo: Campones
Registrado: 28/06/08
Posts: 23
Reputação: +1
Char no Tibia: Fui hackeado

Bom eu nao tinha intendido muito mas baixei e vi que é muito bom e vou colocar no meu ot sem duvida!
info
Grupo: Banidos
Registrado: 06/11/07
Posts: 39
Reputação: +22
Char no Tibia: degarox strain

Que tal vc parar de procurar no google como fazer um item e começar a ler A PORRA DO MANUAL DO OPEN TIBIA
Tenho certeza que você vai descobrir mais outros novos atributos.
info
Grupo: Herói
Registrado: 28/11/10
Posts: 3.4k
Reputação: +585
Gênero: Masculino

info
Grupo: Campones
Registrado: 11/05/09
Posts: 34
Reputação: +11
Char no Tibia: Okuta Sujo
Seguinte pessoal estava olhando em um site polonês e la estava escrito que provavelmente na versão 8.54 acima chegaram novos attributes dos famosos item.xml que todo ot tem, e é o seguinte eu vou explicar mais ou menos a função dele e o que ele faz, essa descoberta é incrível.
<attribute key="reflectpercentall" value="30"/>
<attribute key="reflectchanceall" value="100"/>
seguinte, primeiro irei explicar qual a função desses dois paramêtros eles refletem o dano causado pela criatura, ainda não testei com players, e quer dizer que a parte do reflectpercentall, significa que de cada hit 30% dos hits tem chances de refletir e o reflectchanceall é a porcentagem que vai refletir, por exemplo ali esta 100 se eu colocar 65 vai refletir 65% dos danos, por exemplo o monstro me hitou 100 rapidamente ele toma devolta 65.
Essa foi uma descoberta feita obviamente por mim e descobri a função dela sozinho.
Irei tentar lembrar o link que ela estava escrita, mais não vem alguns (tolos)queridinhos dizer assim, esse cara é uma fraude, ele não sabe nada não, pode procurar, ele viu em outro site, forúm e resolveu postar aqui,Não, nada disso não eu estava procurando no :google_lt: "item refletor de danos" apareceu muitos scripts aqui do xtibia e outros sites que não posso dizer aqui...
mais intão tava quase que assim "akskdllüds, não entendo polonês mas acredito que estava escrito quae isso, bem voltando no assunto estava escrito "akskdllüds
<attribute key="reflectpercentall" value="100"/>
<attribute key="reflectchanceall" value="65"/>
......------$$!#@#!$!$!-------........, e o resto que eu nao lembro, então eu coloquei isso no items.xml pra ver o que acontecia, então fui em dragon pra ver se refletia e nada, passou uns minutos eu fui olhar a vida do dragon estava descendo sozinha, e ele não me hitava resolvi tirar itens e ele continuou levando hits, foi isso que me fez descobrir que o dano era refletido, e fui descobrindo como controla-lo.
É isso ai pessoal espero que gostem :XTibia_smile:.
Obrigado, glugluguga
Mais informações me adicione no msn g.seberino@hotmail.com