• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Yalahar Quest - the bug ;o?

sobek07

Chce być fajny
Joined
Nov 16, 2009
Messages
231
Reaction score
0
Location
Poland / Poznań
Umm, sprawa nie wygląda fajnie ponieważ gdy nacisnę na globus pojawia się azerus i po jego zabiciu nie pokazuje sie tp :o(moge nacisnąć 100x na globus i pojawi sie 100 azerusów.) Help?

Creaturescripts azerus.lua

Code:
local config = { 
message = "Azerus ran into teleporter! It will disappear in 2 minutes. Enter It!", 
teleportId = 1387, 
bosses = { -- Monster Name, Teleport To Position, Teleport Position 
["Azerus"] = { { x = 21325, y = 21073, z = 10 }, { x = 21325, y = 21075, z = 9 }}, 



} 
} 


function onDeath(cid, corpse, killer) 
local position = getCreaturePosition(cid) 
for name, pos in pairs(config.bosses) do 
if name == getCreatureName(cid) then 

doCreateTeleport(config.teleportId, pos[1], pos[2]) 
doCreatureSay(cid, config.message, TALKTYPE_ORANGE_1) 
end 
end 
return TRUE 
end

Actions > Azerus.lua

Code:
-- Yalahar 10th mission By QuaS~~ 

-- Config #1 --  
local BlindField = {x=21323, y=21055, z=10, stackpos=1} 
-- end --  

function mapArea(fromPos, toPos, stack) 
        -- Area iterator by Colandus. 
        local pos = {x=fromPos.x, y=fromPos.y-1, z=fromPos.z} 
        return function() 
                if (pos.y < toPos.y) then 
                        pos.y = pos.y+1 
                elseif (pos.x <= toPos.x) then 
                        pos.y = fromPos.y 
                        pos.x = pos.x+1 
                else 
                        pos.x = fromPos.x 
                        pos.y = fromPos.y 
                        pos.z = pos.z+1 
                end 
                if (pos.x <= toPos.x and pos.y <= toPos.y or pos.z < toPos.z) then 
                        if (stack == nil) then 
                                return pos 
                        else 
                                pos.stackpos = stack 
                                --return pos, getTileThingByPos(pos) 
                                return pos, getThingfromPos(pos) 
                        end 
                end 
        end 
end 


function getMonstersfromArea(fromPos, toPos) 
        local monsters = {}     
        for _, thing in mapArea(fromPos, toPos, 253) do 
                if isMonster(thing.uid) == TRUE then 
                        table.insert(monsters, thing.uid) 
            end 

        end 
          local bfm = getThingfromPos(BlindField) 
            if isMonster(bfm.uid) == TRUE then 
            table.insert(monsters, bfm.uid) 
            end 
        return monsters 
end 


function onUse(cid, item, fromPosition, itemEx, toPosition) 

-- CONFIG #2!!!! -- 


-- Map checking -- 

local topLeft = {x=21318, y=31057, z=10} 
local buttomRight = {x=21333, y=21074, z=10} 

-- Immortality of Azerus 
local monsters = getMonstersfromArea(topLeft, buttomRight) 
local monsters1 = getMonstersfromArea(topLeft, buttomRight) 

-- Position Of TP -- 
local tp = {x=21325, y=21073, z=10} 

-- Position of Gllobus 
local glo = {x=21325, y=21064, z=10} 

-- END OF CONFIG! -- 



function FirstWave() 
    doSummonCreature("Rift Worm", {x= glo.x - 4,y=glo.y,z=glo.z}) 

    doSummonCreature("Rift Worm", {x= glo.x + 4,y=glo.y,z=glo.z}) 

    doSummonCreature("Rift Worm", {x=glo.x,y=glo.y + 4,z=glo.z}) 

    doSummonCreature("Rift Worm", {x=glo.x,y=glo.y - 4,z=glo.z}) 

    doSummonCreature("Rift Worm", {x=glo.x,y=glo.y + 5,z=glo.z}) 
    
end 

function SecondWave() 
local monsters1 = getMonstersfromArea(topLeft, buttomRight) 

    for _, monster in pairs(monsters1) do 
    if getCreatureName(monster) == "Azerus" then 
    doRemoveCreature(monster) 
    end 
    end 
    doSummonCreature("Rift Brood", {x= glo.x - 4,y=glo.y,z=glo.z}) 

    doSummonCreature("Rift Brood", {x= glo.x + 4,y=glo.y,z=glo.z}) 

    doSummonCreature("Rift Brood", {x=glo.x,y=glo.y + 4,z=glo.z}) 

    doSummonCreature("Rift Brood", {x=glo.x,y=glo.y - 4,z=glo.z}) 

    doSummonCreature("Rift Brood", {x=glo.x,y=glo.y + 5,z=glo.z}) 
end 
function ThirdWave() 
local monsters1 = getMonstersfromArea(topLeft, buttomRight) 

    for _, monster in pairs(monsters1) do 
    if getCreatureName(monster) == "Azerus" then 
    doRemoveCreature(monster) 
    end 
    end 
    doSummonCreature("Rift Scythe", {x= glo.x - 4,y=glo.y,z=glo.z}) 

    doSummonCreature("Rift Scythe", {x= glo.x + 4,y=glo.y,z=glo.z}) 
end 

function ThirdWave1() --  with 2s delay 

    doSummonCreature("Rift Scythe", {x=glo.x,y=glo.y + 4,z=glo.z}) 

    doSummonCreature("Rift Scythe", {x=glo.x,y=glo.y - 4,z=glo.z}) 

    doSummonCreature("Rift Scythe", {x=glo.x,y=glo.y + 5,z=glo.z}) 
end 

function FourthWave() 
local monsters1 = getMonstersfromArea(topLeft, buttomRight) 

    for _, monster in pairs(monsters1) do 
    if getCreatureName(monster) == "Azerus" then 
    doRemoveCreature(monster) 
    end 
    end 
    doSummonCreature("Azerus3", {x= glo.x - 5,y=glo.y,z=glo.z}) 

    doSummonCreature("War Golem", {x= glo.x - 4,y=glo.y,z=glo.z}) 

    doSummonCreature("War Golem", {x= glo.x + 4,y=glo.y,z=glo.z}) 

    doSummonCreature("War Golem", {x=glo.x,y=glo.y - 4,z=glo.z}) 

    doSummonCreature("War Golem", {x=glo.x,y=glo.y + 4,z=glo.z}) 

end 

function Glllobe() 
item1 = getTileItemById(glo,9767) 
doItemSetAttribute(item1.uid, 58261) 
end 



if item.actionid == 58261 then 
doItemSetAttribute(item.uid, 58263) 
local monsters = getMonstersfromArea(topLeft, buttomRight) 
local monsters1 = getMonstersfromArea(topLeft, buttomRight) 

if getTileItemById(tp,1387).itemid == 1387 then 
doRemoveItem(getTileItemById(tp,1387).uid) 
end 

addEvent(FirstWave, 0) 
addEvent(SecondWave, 10000) 
addEvent(ThirdWave, 20000) 
addEvent(ThirdWave1, 24000) 
addEvent(FourthWave, 38000) 
addEvent(Glllobe, 900000) 


elseif item.actionid == 58263 then 
doCreatureSay(cid, "You have to wait some time before this globe will charge.", TALKTYPE_ORANGE_1) 
end 


return TRUE 
end
 
Back
Top