Ir para conteúdo

Featured Replies

Postado

Como faço para meu pet (demon) me dar 10 de sword em quanto estiver ao meu lado (evocado), removendo esse bonus quando ele não estiver ativo/morto?

 

action/pet.lua

Spoiler

function onUse(cid, item, frompos, item2, topos)

local dolls = {
[5896] = {pet = "Demon"}
}
local go = dolls[item.itemid]
local summon = getCreatureSummons(cid)

---------------------------------------------------

if #summon >= 1 then
for _, pid in ipairs(summon) do
doRemoveCreature(pid)
end
return true
end

doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid)))
return true
end

 

 

  • Respostas 5
  • Visualizações 513
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

Postado

@Thayguroficial 

 

Spoiler

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1 )
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 10)

function onUse(cid, item, frompos, item2, topos)

	local dolls = {
					[5896] = {pet = "Demon"}
	}
	local go = dolls[item.itemid]
	local summon = getCreatureSummons(cid)


	if #summon >= 1 then
		for _, pid in ipairs(summon) do
			doRemoveCreature(pid)
		end
		return true
	end
	doAddCondition(cid, condition)
	doSummonMonster(cid,go.pet)
	ver_pet(cid)
	return true
end

function ver_pet(cid)
	if #getCreatureSummons(cid) == 0 then
		print(43)
		doRemoveCondition(cid, CONDITION_ATTRIBUTES)
		return true
	end
	addEvent(ver_pet,1000,cid)
end

 

 

Postado
  • Autor
17 minutos atrás, antharaz disse:

@Thayguroficial 

 

  Ocultar conteúdo


local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1 )
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 10)

function onUse(cid, item, frompos, item2, topos)

	local dolls = {
					[5896] = {pet = "Demon"}
	}
	local go = dolls[item.itemid]
	local summon = getCreatureSummons(cid)


	if #summon >= 1 then
		for _, pid in ipairs(summon) do
			doRemoveCreature(pid)
		end
		return true
	end
	doAddCondition(cid, condition)
	doSummonMonster(cid,go.pet)
	ver_pet(cid)
	return true
end

function ver_pet(cid)
	if #getCreatureSummons(cid) == 0 then
		print(43)
		doRemoveCondition(cid, CONDITION_ATTRIBUTES)
		return true
	end
	addEvent(ver_pet,1000,cid)
end

 

 

Está funcionando perfeitamente, porem quando eu utilizo uma magia que "buffa" meus skills ela é anulada quando o pet está ativo. Pode fazer com que não dê conflito entre o pet e as magias de buff?

Postado

@Thayguroficial 

 

tenta com essa:

 

Spoiler

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 2)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1 )
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 10)

function onUse(cid, item, frompos, item2, topos)

	local dolls = {
					[5896] = {pet = "Demon"}
	}
	local go = dolls[item.itemid]
	local summon = getCreatureSummons(cid)


	if #summon >= 1 then
		for _, pid in ipairs(summon) do
			doRemoveCreature(pid)
		end
		return true
	end
	doAddCondition(cid, condition)
	doSummonMonster(cid,go.pet)
	ver_pet(cid)
	return true
end

function ver_pet(cid)
	if #getCreatureSummons(cid) == 0 then
		print(43)
		doRemoveCondition(cid, CONDITION_ATTRIBUTES, 2)
		return true
	end
	addEvent(ver_pet,1000,cid)
end

 

 

Postado
  • Autor
3 minutos atrás, antharaz disse:

@Thayguroficial 

 

tenta com essa:

 

  Ocultar conteúdo


local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 2)
setConditionParam(condition, CONDITION_PARAM_TICKS, -1 )
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 10)

function onUse(cid, item, frompos, item2, topos)

	local dolls = {
					[5896] = {pet = "Demon"}
	}
	local go = dolls[item.itemid]
	local summon = getCreatureSummons(cid)


	if #summon >= 1 then
		for _, pid in ipairs(summon) do
			doRemoveCreature(pid)
		end
		return true
	end
	doAddCondition(cid, condition)
	doSummonMonster(cid,go.pet)
	ver_pet(cid)
	return true
end

function ver_pet(cid)
	if #getCreatureSummons(cid) == 0 then
		print(43)
		doRemoveCondition(cid, CONDITION_ATTRIBUTES, 2)
		return true
	end
	addEvent(ver_pet,1000,cid)
end

 

 

Muito obrigado por me ajudar mais uma vez!

O que diferenciou os buffs foi a condition subid? no caso se eu quiser criar outros pets com atributo de buffs diferentes é só eu por subid 3,4,5..?

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