Ir para conteúdo

Featured Replies

  • Respostas 11
  • Visualizações 1.1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @elielder   local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(comba

Postado
4 minutos atrás, elielder disse:

nenhuma mensagem de erro, estou tentando com 1 personagem de cada classe, todos curando o mesmo.


Me mostra o que aparece na distro:

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local voc_bonus = { -- valor da cura adicional, ex: 0%, 10%, 50%, 100%, 200% 
["Tanque"]  = 50,
["Suporte"] = 25,
["Dano"]    = 0,
}

local table_vocs = { -- last_id é o último id da vocação, a tabela precisa estar em ordem crescente.
[1] = {last_id = 10, voc = "Naruto",    classe = "Dano"},
[2] = {last_id = 20, voc = "Sasuke",    classe = "Dano"},
[3] = {last_id = 30, voc = "Chouji",    classe = "Tanque"},
[4] = {last_id = 40, voc = "Hidan",     classe = "Tanque"},
[5] = {last_id = 50, voc = "Hashirama", classe = "Suporte"},
[6] = {last_id = 60, voc = "Obito",     classe = "Suporte"},
}

local function getBonus(cid, base)
	local pvoc = getPlayerVocation(cid)
	for k, _ in ipairs(table_vocs) do 
		if pvoc <= table_vocs[k].last_id then print("lastid: "..table_vocs[k].last_id) print("voc: "..table_vocs[k].voc)
			bonus = voc_bonus[table_vocs[k].classe]/100
			if bonus < 1 then bonus = bonus + 1 end
			total = base * bonus print("total: "..total.."| base: "..base.." | bonus: "..bonus)
			print("")
			return total
		end
	end
end

function onGetPlayerMinMaxValues(cid, level, magLevel)
	local min = ((level*0)+(magLevel*0)+200)
    local max = ((level*0)+(magLevel*0)+250)
	return getBonus(cid, min), getBonus(cid, max)
end
setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetPlayerMinMaxValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

 

Postado
  • Autor
2 minutos atrás, 139 disse:


Me mostra o que aparece na distro:

 



local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local voc_bonus = { -- valor da cura adicional, ex: 0%, 10%, 50%, 100%, 200% 
["Tanque"]  = 50,
["Suporte"] = 25,
["Dano"]    = 0,
}

local table_vocs = { -- last_id é o último id da vocação, a tabela precisa estar em ordem crescente.
[1] = {last_id = 10, voc = "Naruto",    classe = "Dano"},
[2] = {last_id = 20, voc = "Sasuke",    classe = "Dano"},
[3] = {last_id = 30, voc = "Chouji",    classe = "Tanque"},
[4] = {last_id = 40, voc = "Hidan",     classe = "Tanque"},
[5] = {last_id = 50, voc = "Hashirama", classe = "Suporte"},
[6] = {last_id = 60, voc = "Obito",     classe = "Suporte"},
}

local function getBonus(cid, base)
	local pvoc = getPlayerVocation(cid)
	for k, _ in ipairs(table_vocs) do 
		if pvoc <= table_vocs[k].last_id then print("lastid: "..table_vocs[k].last_id) print("voc: "..table_vocs[k].voc)
			bonus = voc_bonus[table_vocs[k].classe]/100
			if bonus < 1 then bonus = bonus + 1 end
			total = base * bonus print("total: "..total.."| base: "..base.." | bonus: "..bonus)
			print("")
			return total
		end
	end
end

function onGetPlayerMinMaxValues(cid, level, magLevel)
	local min = ((level*0)+(magLevel*0)+200)
    local max = ((level*0)+(magLevel*0)+250)
	return getBonus(cid, min), getBonus(cid, max)
end
setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetPlayerMinMaxValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

 

lastid: 10
voc: Naruto
total: 200| base: 200 | bonus: 1

lastid: 10
voc: Naruto
total: 250| base: 250 | bonus: 1

 

lastid: 30
voc: Chouji
total: 300| base: 200 | bonus: 1.5

lastid: 30
voc: Chouji
total: 375| base: 250 | bonus: 1.5

Esse ai que vc mandou printar deu diferença na cura.

Editado por elielder
outra classe (veja o histórico de edições)

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