((hot)) | Arania Tfs
Below is a : a custom boss monster "Arania" with unique mechanics, plus a summoning system. 1. Monster Definition ( data/monster/arania.xml ) <?xml version="1.0" encoding="UTF-8"?> <monster name="Arania" nameDescription="Arania" race="venom" experience="8500" speed="230" manacost="0"> <health now="18500" max="18500"/> <look type="57" head="114" body="114" legs="114" feet="114" corpse="5984"/> <targetchange interval="5000" chance="8"/> <strategy attack="100" defensive="0"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="2"/> <flag staticattack="70"/> <flag runonhealth="0"/> </flags> <attacks> <!-- Physical attack --> <attack name="melee" interval="2000" skill="95" attack="120" poison="40"/> <!-- Poison wave --> <attack name="poisonwave" interval="4000" chance="20" range="7" min="-250" max="-420" poison="65" target="0"/> <!-- Heavy poison ball --> <attack name="poisonfield" interval="3000" chance="15" range="7" radius="3" target="1" min="-180" max="-350" poison="80"> <attribute key="area" value="3x3"/> </attack> <!-- Web throw (paralyze) --> <attack name="paralyze" interval="5000" chance="25" range="7" duration="8000" target="1"> <attribute key="speedchange" value="-600"/> </attack>
local pos = player:getPosition() local monster = Game.createMonster("Arania", pos, true, false) if monster then pos:sendMagicEffect(CONST_ME_TELEPORT) player:sendTextMessage(MESSAGE_INFO_DESCR, "Arania appears from the shadows!") player:removeItem(sacrificeItem, 1) else player:sendTextMessage(MESSAGE_STATUS_SMALL, "The altar is too crowded to summon Arania.") end return true end arania tfs
if msgcontains(msg, "sacrifice") then local idol = player:getItemById(12345, true) -- custom item ID if idol then summonArania(cid, 12345) else npcHandler:say("You don't have the Spider Queen's Idol.", cid) end end end Below is a : a custom boss monster
function onCreatureSay(cid, type, msg) local player = Player(cid) if not player then return end Use at the altar to summon Arania
npcHandler:addModule(EVENT_CREATURE_SAY) <item id="12345" article="a" name="Spider Queen's Idol"> <attribute key="weight" value="1200"/> <attribute key="worth" value="5000"/> <attribute key="description" value="It pulses with arachnid energy. Use at the altar to summon Arania."/> </item> Add loot to some rare creature or as quest reward. 4. Optional: Arania’s Web Trap Global Event ( data/globalevents/arania_invasion.lua ) local invasion = GlobalEvent("AraniaInvasion") function invasion.onStartup(interval) local config = fromPos = x = 1000, y = 1000, z = 7, toPos = x = 1020, y = 1020, z = 7, amount = 5, monster = "Poison Spider"
local function summonArania(cid, sacrificeItem) local player = Player(cid) if not player then return false end