Ir para conteúdo
  • Cadastre-se

(Resolvido)[ juda ] Dano Da Wand Por Magic Level


Ir para solução Resolvido por Reds,

Posts Recomendados

bo noite TK 

gostaria da ajuda de vcs mais uma vez ...

agora é com esse script gostaria de colocar ele pra hitar por skill no caso MAgic LEvel

local combat_types = {
	[1] = {cond = CONDITION_FREEZING, effect = CONST_ME_ICEATTACK, anim = CONST_ANI_ICE, damage = COMBAT_ICEDAMAGE},
	[2] = {cond = CONDITION_FIRE, effect = CONST_ME_FIREATTACK, anim = CONST_ANI_FIRE, damage = COMBAT_FIREDAMAGE},
	[3] = {cond = CONDITION_POISON, effect = CONST_ME_SMALLPLANTS, anim = CONST_ANI_EARTH, damage = COMBAT_EARTHDAMAGE},
	[4] = {cond = CONDITION_ENERGY, effect = CONST_ME_ENERGYHIT, anim = CONST_ANI_ENERGY, damage = COMBAT_ENERGYDAMAGE},
	[5] = {effect = CONST_ME_HOLYDAMAGE, anim = CONST_ANI_HOLY, damage = COMBAT_HOLYDAMAGE},
	[6] = {cond = CONDITION_CURSED, effect = CONST_ME_MORTAREA, anim = CONST_ANI_SUDDENDEATH, damage = COMBAT_DEATHDAMAGE},

	default = {damage = COMBAT_PHYSICALDAMAGE},
}

local config = {
	storage = 303030,
	block_armor = true,
	condition_rounds = 0,
	condition_value = 0,
	condition_time = 2000,
}

for key, combat in pairs(combat_types) do
	combat.object = createCombatObject()

	setCombatParam(combat.object, COMBAT_PARAM_TYPE, combat.damage or COMBAT_PHYSICALDAMAGE)
	setCombatParam(combat.object, COMBAT_PARAM_EFFECT, combat.effect or CONST_ME_NONE)
	setCombatParam(combat.object, COMBAT_PARAM_DISTANCEEFFECT, combat.anim or CONST_ANI_NONE)
	setCombatParam(combat.object, COMBAT_PARAM_BLOCKARMOR, config.block_armor and 1 or 0)

	setCombatFormula(combat.object, COMBAT_FORMULA_LEVELMAGIC, 0, -28900, 0, -32900)

	if combat.cond then
		local condition = createConditionObject(combat.cond)
		setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
		addDamageCondition(condition, config.condition_rounds, config.condition_time, config.condition_value)
		setCombatCondition(combat.object, condition)
	end
end

local function find_combat(id)
	return combat_types[id] or false
end

function onUseWeapon(cid, var)
	local combat = find_combat(getCreatureStorage(cid, config.storage))

	if not combat then
		if getDistanceBetween(getThingPosition(cid), getThingPosition(var.number)) > 1 then
			return false
		end

		combat = combat_types.default
	end

	return doCombat(cid, combat.object, var)
end

sei que vao dizer que ja tem desse script no tk mas nao tem dessa que muda o elemento

 

ate tenteo add essas funçoes mas deu errado

 

function onGetFormulaValues(cid, level, maglevel)
min = -((level*0.2) + ((maglevel*20)*1.1))
max = -((level*0.2) + ((maglevel*20)*1.4))
return min, max
end

se alguem puder ajudar eu agradeço muito..  +REP

Editado por mullino (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Respostas 21
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

que erro deu? qual tfs é isso?

coloca no lugar de: setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") isso: setCombatCallback(combat.object, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

min = -(100 * maglevel) max = -(240 * maglevel) return min, max end o ataque varia entre 100 * ml e 240 * ml se o ml for 10 o ataque vai variar entre 1000 e 2400 se você trocar o 100 por 150, vai variar entre 1500 e 2400..  para criar isso, você precisa utilizar um weapons.xml e customizar para cada arma que você quiser, o bom é que você tem controle 100% do dano, efeitos e etc.. quando você define no weapons.xml o ataque definido em items.xml não é utilizado..

  • Solução
local combat_types = {
	[1] = {cond = CONDITION_FREEZING, effect = CONST_ME_ICEATTACK, anim = CONST_ANI_ICE, damage = COMBAT_ICEDAMAGE},
	[2] = {cond = CONDITION_FIRE, effect = CONST_ME_FIREATTACK, anim = CONST_ANI_FIRE, damage = COMBAT_FIREDAMAGE},
	[3] = {cond = CONDITION_POISON, effect = CONST_ME_SMALLPLANTS, anim = CONST_ANI_EARTH, damage = COMBAT_EARTHDAMAGE},
	[4] = {cond = CONDITION_ENERGY, effect = CONST_ME_ENERGYHIT, anim = CONST_ANI_ENERGY, damage = COMBAT_ENERGYDAMAGE},
	[5] = {effect = CONST_ME_HOLYDAMAGE, anim = CONST_ANI_HOLY, damage = COMBAT_HOLYDAMAGE},
	[6] = {cond = CONDITION_CURSED, effect = CONST_ME_MORTAREA, anim = CONST_ANI_SUDDENDEATH, damage = COMBAT_DEATHDAMAGE},

	default = {damage = COMBAT_PHYSICALDAMAGE},
}

local config = {
	storage = 303030,
	block_armor = true,
	condition_rounds = 0,
	condition_value = 0,
	condition_time = 2000,
}

for key, combat in pairs(combat_types) do
	combat.object = createCombatObject()

	setCombatParam(combat.object, COMBAT_PARAM_TYPE, combat.damage or COMBAT_PHYSICALDAMAGE)
	setCombatParam(combat.object, COMBAT_PARAM_EFFECT, combat.effect or CONST_ME_NONE)
	setCombatParam(combat.object, COMBAT_PARAM_DISTANCEEFFECT, combat.anim or CONST_ANI_NONE)
	setCombatParam(combat.object, COMBAT_PARAM_BLOCKARMOR, config.block_armor and 1 or 0)                    

	function onGetFormulaValues(cid, level, maglevel)
        min = -(100 * maglevel)
        max = -(240 * maglevel)
        return min, max
        end

       setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

	if combat.cond then
		local condition = createConditionObject(combat.cond)
		setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
		addDamageCondition(condition, config.condition_rounds, config.condition_time, config.condition_value)
		setCombatCondition(combat.object, condition)
	end
end

local function find_combat(id)
	return combat_types[id] or false
end

function onUseWeapon(cid, var)
	local combat = find_combat(getCreatureStorage(cid, config.storage))

	if not combat then
		if getDistanceBetween(getThingPosition(cid), getThingPosition(var.number)) > 1 then
			return false
		end

		combat = combat_types.default
	end

	return doCombat(cid, combat.object, var)
end

Toda terça-feira um tópico novo:

Descanso para curar mana (Spell): https://tibiaking.com/forums/topic/94615-spell-descanso-para-curar-mana/

Peça sua spell (Suporte):                https://tibiaking.com/forums/topic/84162-peça-sua-spell/                        

Chuva de flechas (Spell):                https://tibiaking.com/forums/topic/72232-chuva-de-flechas-spell/

Doom (Spell):                                https://tibiaking.com/forums/topic/51622-doom-spell/

Utilização do VS Code (Infra)       https://tibiaking.com/forums/topic/94463-utilizando-o-visual-studio-code-notepad-nunca-mais/

SD com Combo (Spell):                 https://tibiaking.com/forums/topic/94520-sd-modificada/

Alteração attack speed (C++):        https://tibiaking.com/forums/topic/94714-c-attack-speed-spells-itens-e-onde-você-quiser/  

Bônus de Speed (NPC)                  https://tibiaking.com/forums/topic/94809-npc-concede-bônus-aos-players/
 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96841
    Tópicos
    519585
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo