Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Olá caros colegas, estou com um problema em meu servidor. Quando tento entrar no teleporte da Yalahr quest, ele não teleporta.. Só funciona uma vez o teleporte da quest, digamos se um player entrar nele, clicar no globo, o tp some.. e depois quando volta, ninguem consegue mais entrar. Este é um dos problemas... Tem também quando termino de matar o monstro AZERUS, nasce um fogo ao invés de um teleport. Detalhe: o script está o ID do teleport..1387. Bom deixarei os scripts que na pasta do meu servidor para ver se tem como arrumar, pois tem muita gente reclamando e sozinho não consigo :s

 

Actions/scripts/yalahari/azerus.lua

local BlindField = {x=579, y=557, z=10, stackpos=1}

 
function mapArea(fromPos, toPos, stack)
        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)
 
local topLeft = {x=573, y=558, z=10}
local buttomRight = {x=589, y=576, z=10}
 
local monsters = getMonstersfromArea(topLeft, buttomRight)
local monsters1 = getMonstersfromArea(topLeft, buttomRight)
 
local tp = {x=581, y=575, z=10}
 
local glo = {x=581, y=566, z=10}
 
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})
 
    doSummonCreature("Azerus", {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("Azerus1", {x=glo.x,y=glo.y - 5,z=glo.z})
 
    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("Azerus2", {x= glo.x - 5,y=glo.y,z=glo.z})
 
    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() 
 
    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)
doSetItemActionId(item1.uid, 58261)
end
 
if item.actionid == 58261 then
doSetItemActionId(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

 
actions/scripts/yalahari/azeruschest.lua

       if item.actionid == 58267 then
           queststatus = getPlayerStorageValue(cid,102504)
           if queststatus == -1 then
               doPlayerSendTextMessage(cid,22,"You have found an Yalahari Mask.")
               doPlayerAddItem(cid,9778,1)
               setPlayerStorageValue(cid,102504,1)
           else
               doPlayerSendTextMessage(cid,22,"It is empty.")
           end
       elseif item.actionid == 58268 then
           queststatus = getPlayerStorageValue(cid,102504)
           if queststatus == -1 then
               doPlayerSendTextMessage(cid,22,"You have found an Yalahari Armor.")
               doPlayerAddItem(cid,9776,1)
               setPlayerStorageValue(cid,102504,1)
           else
               doPlayerSendTextMessage(cid,22,"It is empty.")
           end
       elseif item.actionid == 58269 then
           queststatus = getPlayerStorageValue(cid,102504)
           if queststatus == -1 then
               doPlayerSendTextMessage(cid,22,"You have found an Yalahari Leg Piece.")
               doPlayerAddItem(cid,9777,1)
               setPlayerStorageValue(cid,102504,1)
           else
               doPlayerSendTextMessage(cid,22,"It is empty.")
           end
    else
        return 0
       end
 
       return 1
end
 

 
actions/actions.xml

<action uniqueid="11223" event="script" value="quests/azerus_quest.lua"/> -- Kill Azerus
<action uniqueid="50003" event="script" value="quests/yalahar_set.lua"/> -- Yalahari Mask
<action uniqueid="50001" event="script" value="quests/yalahar_set.lua"/> -- Yalahari Armor
<action uniqueid="50002" event="script" value="quests/yalahar_set.lua"/> -- Yalahari Leg Piece

 
actions/scripts/quests/yalahar_set.lua

 
if item.uid == 50001 then
if getPlayerStorageValue(cid,50001) == -1 then
doPlayerSendTextMessage(cid,25,"You have found a Yalahari Mask.")
doPlayerAddItem(cid,9778,1)
setPlayerStorageValue(cid,50001,1)
else
doPlayerSendTextMessage(cid,25,"The is empty.")
end
 
elseif item.uid == 50002 then
if getPlayerStorageValue(cid,50001) == -1 then
doPlayerSendTextMessage(cid,25,"You have found a Yalahari Armor.")
doPlayerAddItem(cid,9776,1)
setPlayerStorageValue(cid,50001,1)
else
doPlayerSendTextMessage(cid,25,"The is empty.")
end
 
elseif item.uid == 50003 then
if getPlayerStorageValue(cid,50001) == -1 then
doPlayerSendTextMessage(cid,25,"You have found a Yalahari Leg Piece.")
doPlayerAddItem(cid,9777,1)
setPlayerStorageValue(cid,50001,1)
else
doPlayerSendTextMessage(cid,25,"The is empty.")
end
 
end
return TRUE
end

 
creaturescript/scripts/azerus.lua

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=581, y=577, z=9}, {x=581, y=575, z=10}},
 
 
 
            }
}
 
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
 

 
Agradeço muito a ajuda de um scripter que se disponibilizar e me ajudar a arrumar este problema com minha quest. Procurei no fórum mas não encontrei uma solução. Dou REP+ caso ajude.. obrigado.
Editado por tiagololxd (veja o histórico de edições)

1508741_4.png

         Acesse: www.7wars.com          Global 8.60 full

 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo