Ir para conteúdo

Featured Replies

Postado
  • Diretor
  • Este é um post popular.

 

Imagem relacionada

 

ADICIONANDO O ELEMENTO

muitas das vezes a gente precisa adicionar um novo elemento em nosso servidor, assim para criar novas magias, esse tutorial é para quem precisa disso.

 

 

 

combat.cpp 

Abaixo de:

case CONDITION_FIRE:
return COMBAT_FIREDAMAGE;

Adicione em baixo:

case CONDITION_PLANTA:
return COMBAT_PLANTADAMAGE;

 

combat.cpp 

Abaixo de:

case COMBAT_FIREDAMAGE:
return CONDITION_FIRE;

Adicone em baixo:

case COMBAT_PLANTADAMAGE:
return CONDITION_PLANTA;

 

Condition.cpp

 

Abaixo de:

case CONDITION_FIRE:

Adicione: 

case CONDITION_PLANTA:

Abaixo de:

case CONDITION_FIRE:
return ICON_BURN;

Adicione em baixo:

case CONDITION_PLANTA:
return ICON_NONE;

 

 

Condition.h 

Abaixo de: 

CONDITION_HUNTING = 1 << 23,

Adicione em Baixo:

CONDITION_PLANTA = 1 << 24

 

 

const.h 

Abaixo de:

TEXTCOLOR_WHITE = 215,

Adicione: 

TEXTCOLOR_PLANTA = 18,

 

 

enums.h 

Abaixo de:

COMBAT_DEATHDAMAGE = 1 << 11,

Adicione: 

 

COMBAT_PLANTADAMAGE = 1 << 12,

 

Em

COMBAT_LAST = COMBAT_DEATHDAMAGE

para

COMBAT_LAST = COMBAT_PLANTADAMAGE

 

game.cpp 

Abaixo de: 

case COMBAT_ENERGYDAMAGE:

Adicione:

case COMBAT_PLANTADAMAGE:

Abaixo de: 

case COMBAT_ENERGYDAMAGE:
{
textColor = TEXTCOLOR_PSYCHIC;
magicEffect = MAGIC_EFFECT_DRAW_BLOOD;
break;
}

 

Adicione: 

case COMBAT_PLANTADAMAGE:
{
textColor = TEXTCOLOR_PLANTA;
magicEffect = MAGIC_EFFECT_DRAW_BLOOD;
break;
}

 

 

monsters.cpp 

Abaixo de:

else if(tmpName == "drown")
combat->setParam(COMBATPARAM_COMBATTYPE, COMBAT_DROWNDAMAGE);

Adicione:

else if(tmpName == "planta")
combat->setParam(COMBATPARAM_COMBATTYPE, COMBAT_PLANTADAMAGE);

Abaixo de:

else if(tmpStrValue == "energy")
{
mType->damageImmunities |= COMBAT_ENERGYDAMAGE;
mType->conditionImmunities |= CONDITION_ENERGY;
}

Adicione:

else if(tmpStrValue == "planta")
{
mType->damageImmunities |= COMBAT_PLANTADAMAGE;
mType->conditionImmunities |= CONDITION_PLANTA;
}

Abaixo de:

else if(readXMLString(tmpNode, "fire", strValue) && booleanString(strValue))
{
mType->damageImmunities |= COMBAT_FIREDAMAGE;
mType->conditionImmunities |= CONDITION_FIRE;
}

Adicione:

else if(readXMLString(tmpNode, "planta", strValue) && booleanString(strValue))
{
mType->damageImmunities |= COMBAT_PLANTADAMAGE;
mType->conditionImmunities |= CONDITION_PLANTA;
}

Abaixo de:

else if(readXMLInteger(tmpNode, "energyPercent", intValue))
mType->elementMap[COMBAT_ENERGYDAMAGE] = intValue;

Adicione:

else if(readXMLInteger(tmpNode, "plantaPercent", intValue))
mType->elementMap[COMBAT_PLANTADAMAGE] = intValue;

 

 

player.cpp

Abaixo de:

case CONDITION_FIRE:
tmp = "burning";
break;

Adicione:

case CONDITION_PLANTA:
tmp = "dashing";
break;

tools.cpp

Abaixo de:

{"fire", COMBAT_FIREDAMAGE},

Adicione:

{"planta", COMBAT_PLANTADAMAGE},

Abaixo de:

case COMBAT_ENERGYDAMAGE:
return "energy";

Adicione:

case COMBAT_PLANTADAMAGE:
return "planta";

 

Pronto só recompilar, se caso não pegar apague tudo da pasta OBJ

 

 

 

ATENÇÃO: Depois de compilar você precisa registrar na LIB também.

 

000-constant

 

veja o ultimo numero 

 

GHOSTDAMAGE = 2048 

 

 

Multiplique o 2048 por 2 vezes Ficando:

COMBAT_PLANTADAMAGE = 4096

 

agora você pode adicionar na suas magias o novo elemento e nos monstro tbm se preferir:


 

monstro.xml

    <elements>
        <element plantaPercent="50"/>
    </elements>

 


 spells

COMBAT_PLANTADAMAGE
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PLANTADAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

local area = createCombatArea(AREA_SQUARE1X1)
setCombatArea(combat, area)

function onGetFormulaValues(cid, level, skill, attack, factor)
	local skillTotal, levelTotal = skill + attack, level / 5
	return -(skillTotal * 1 + levelTotal), -(skillTotal * 1.7 + levelTotal)
end

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

 

Editado por L3K0T (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

  • Respostas 14
  • Visualizações 3.9k
  • Created
  • Última resposta

Top Posters In This Topic

Postado

Parabéns, seu tópico de conteúdo foi aprovado!
Muito obrigado pela sua contribuição, nós do Tibia King agradecemos.
Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.

Mostrar conteúdo oculto

 

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Postado

@L3K0T any solutio?¿

 

hello friend a doubt about adding or editing an element? in my case try to edit the holy damage to remove the effect that comes out when used with that element, I see that that is in game.cpp

 

case COMBAT_HOLYDAMAGE:
{
textColor = TEXTCOLOR_YELLOW;
magicEffect = MAGIC_EFFECT_HOLYDAMAGE;
break;
}

 

try to remove this line: ( magicEffect = MAGIC_EFFECT_HOLYDAMAGE; ) yes it worked but you do not see the damage in yellow, and change it like that ( magicEffect = MAGIC_EFFECT_NONE; )... 

 

I would like to remove several effects of several elements but that its color damage remains

 

Postado
  • Autor
  • Diretor
  Em 10/05/2018 em 23:09, acan disse:

@L3K0T any solutio?¿

 

hello friend a doubt about adding or editing an element? in my case try to edit the holy damage to remove the effect that comes out when used with that element, I see that that is in game.cpp

 

case COMBAT_HOLYDAMAGE:
{
textColor = TEXTCOLOR_YELLOW;
magicEffect = MAGIC_EFFECT_HOLYDAMAGE;
break;
}

 

try to remove this line: ( magicEffect = MAGIC_EFFECT_HOLYDAMAGE; ) yes it worked but you do not see the damage in yellow, and change it like that ( magicEffect = MAGIC_EFFECT_NONE; )... 

 

I would like to remove several effects of several elements but that its color damage remains

 

 

then the effects are in const.h you can add an invisible effect there ^^ by the client, will no longer appear more in combat

 

Editado por L3K0T (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo