T
Tibia Demon
Guest
i want to toggle magicshield to all party members and leader too
I made this one but only work for leader and 1 party member but not all if 2 members or 3 or 4 only work for 1
I made this one but only work for leader and 1 party member but not all if 2 members or 3 or 4 only work for 1
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
combat:setArea(createCombatArea(AREA_CIRCLE3X3))
local condition = Condition(CONDITION_MANASHIELD)
condition:setParameter(CONDITION_PARAM_TICKS, -1)
combat:addCondition(condition)
function onCastSpell(creature, variant)
local player = Player(creature)
local party = player:getParty()
if not party then
player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You are not in a party.")
return false
end
local leader = party:getLeader()
local members = party:getMembers()
for i = 1, #members do
if not creature:getCondition(CONDITION_MANASHIELD) then
leader:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
leader:say("Magic Shield [ON]", TALKTYPE_MONSTER_SAY)
members[i]:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
members[i]:say("Magic Shield [ON]", TALKTYPE_MONSTER_SAY)
return creature:addPartyCondition(combat, variant, condition, 120)
end
end
local player = Player(creature)
local party = player:getParty()
if not party then
player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You are not in a party.")
return false
end
local leader = party:getLeader()
local members = party:getMembers()
for i = 1, #members do
leader:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED)
leader:say("Magic Shield [OFF]", TALKTYPE_MONSTER_SAY)
leader:removeCondition(CONDITION_MANASHIELD)
members[i]:getPosition():sendMagicEffect(CONST_ME_MAGIC_RED)
members[i]:say("Magic Shield [OFF]", TALKTYPE_MONSTER_SAY)
return members[i]:removeCondition(CONDITION_MANASHIELD)
end
end