Postado Setembro 4, 2021 3 anos Ja vou me desculpando não sei se estou na area correta! Galera gostaria da ajuda de vocês o meu evento ta com um erro ex: no meu otserv tem uma pedra no chão na hora do evento ela é removida e aparece uma escada no lugar, gostaria que quando acabar o evento removia a escada e colocaria a pedra dnvo Mostrar conteúdo oculto local THRONE_POS = {x = 2561, y = 2446, z = 5} local STORAGE_EVENT = 83902 local STORAGE_PLAYER = 73289 local DUR = 2 -- in minutes local days = {"Friday", "Saturday", "Thursday"} -- coloque os dias function OpenEvent() for _, tid in ipairs(getPlayersOnline()) do setPlayerStorageValue(tid, STORAGE_PLAYER, 1) end setGlobalStorageValue(STORAGE_EVENT, 1) doBroadcastMessage("O Evento castle foi aberto e vai durar ".. DUR .." minutos.", 25) end function getWinnerCastle() CastleWalls() local player = getTopCreature(THRONE_POS).uid if getGlobalStorageValue(STORAGE_EVENT) < 0 then return true end if (isPlayer(player)) then if (getPlayerStorageValue(player, STORAGE_PLAYER) > 0) then local id, pid = 561, getPlayerGUID(player) setHouseOwner(id, pid) db.executeQuery("UPDATE `houses` SET `owner` = "..pid.." WHERE `id` = "..id) doPlayerAddPremiumDays(player, 7) for _, cid in ipairs(getPlayersOnline()) do setPlayerStorageValue(cid, STORAGE_PLAYER, 0) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end doBroadcastMessage(getCreatureName(player) .. " ganhou o evento.", 25) doTeleportThing(player, {x = 2531, y = 2460, z = 7}) doCreateItem(391, 1, {x = 2561, y = 2446, z = 5}) end else doBroadcastMessage("Ningúem ganhou o evento.", 27) for _, pid in ipairs(getPlayersOnline()) do setPlayerStorageValue(pid, STORAGE_PLAYER, 0) doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end setGlobalStorageValue(STORAGE_EVENT, 0) return db.executeQuery("DELETE FROM `player_storage` WHERE `key` = " .. STORAGE_PLAYER) end function isEventDay() for _, dia in pairs(days) do if dia == os.date("%A") then return true end end return false end function CastleWalls() local pedra = getTileItemById({ x = 2539, y = 2474, z = 7}, 1285) O ERRO E AQUI <<< local escada = getTileItemById({ x = 2539, y = 2474, z = 7}, 3687) O ERRO E AQUI <<< if pedra.uid > 0 then return doRemoveItem(pedra.uid) else return doCreateItem(1285, 1, { x = 2539, y = 2474, z = 7}) O ERRO E QUI <<<<<< end if escada.uid > 0 then return doRemoveItem(escada.uid) else return doCreateItem(3687, 1, {x = 2539, y = 2474, z = 7}) ERRO E AQUI <<<<< end end function onTimer() if isEventDay() then doCreateItem(3687, 1, {x = 2539, y = 2474, z = 7}) ERRO E AQUI <<<<<<<<<<< OpenEvent() CastleWalls() addEvent(getWinnerCastle, DUR * 60 * 1000) end return true end Mostrar conteúdo oculto Mostrar conteúdo oculto Lembrando q quando acabar o evento é pra virar pedra dnvo só quando acabar o evento
Postado Setembro 8, 2021 3 anos local THRONE_POS = {x = 2561, y = 2446, z = 5} local dk = {x = 2539, y = 2474, z = 7} -- door or rock local STORAGE_EVENT = 83902 local STORAGE_PLAYER = 73289 local DUR = 2 -- in minutes local days = {"Friday", "Saturday", "Thursday"} -- coloque os dias function OpenEvent() for _, tid in ipairs(getPlayersOnline()) do setPlayerStorageValue(tid, STORAGE_PLAYER, 1) end setGlobalStorageValue(STORAGE_EVENT, 1) doBroadcastMessage("O Evento castle foi aberto e vai durar ".. DUR .." minutos.", 25) end function doTransLaderRock(n) -- 1 vira escada e 0 pedra return doTransformItem(getTileItemById(dk, n == 1 and 3687 or 1285).uid, n == 1 and 1285 or 3687) end function getWinnerCastle() doTransLaderRock(0) -- pedra local player = getTopCreature(THRONE_POS).uid if getGlobalStorageValue(STORAGE_EVENT) < 0 then return true end if (isPlayer(player)) then if (getPlayerStorageValue(player, STORAGE_PLAYER) > 0) then local id, pid = 561, getPlayerGUID(player) setHouseOwner(id, pid) db.executeQuery("UPDATE `houses` SET `owner` = "..pid.." WHERE `id` = "..id) doPlayerAddPremiumDays(player, 7) for _, cid in ipairs(getPlayersOnline()) do setPlayerStorageValue(cid, STORAGE_PLAYER, 0) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end doBroadcastMessage(getCreatureName(player) .. " ganhou o evento.", 25) doTeleportThing(player, {x = 2531, y = 2460, z = 7}) doCreateItem(391, 1, {x = 2561, y = 2446, z = 5}) end else doBroadcastMessage("Ningúem ganhou o evento.", 27) for _, pid in ipairs(getPlayersOnline()) do setPlayerStorageValue(pid, STORAGE_PLAYER, 0) doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end setGlobalStorageValue(STORAGE_EVENT, 0) return db.executeQuery("DELETE FROM `player_storage` WHERE `key` = " .. STORAGE_PLAYER) end function isEventDay() for _, dia in pairs(days) do if dia == os.date("%A") then return true end end return false end function onTimer() if isEventDay() then doCreateItem(3687, 1, {x = 2539, y = 2474, z = 7}) ERRO E AQUI <<<<<<<<<<< OpenEvent() doTransLaderRock(1) -- escada addEvent(getWinnerCastle, DUR * 60 * 1000) end return true end [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Postado Setembro 8, 2021 3 anos Autor Em 08/09/2021 em 10:28, Vodkart disse: local THRONE_POS = {x = 2561, y = 2446, z = 5} local dk = {x = 2539, y = 2474, z = 7} -- door or rock local STORAGE_EVENT = 83902 local STORAGE_PLAYER = 73289 local DUR = 2 -- in minutes local days = {"Friday", "Saturday", "Thursday"} -- coloque os dias function OpenEvent() for _, tid in ipairs(getPlayersOnline()) do setPlayerStorageValue(tid, STORAGE_PLAYER, 1) end setGlobalStorageValue(STORAGE_EVENT, 1) doBroadcastMessage("O Evento castle foi aberto e vai durar ".. DUR .." minutos.", 25) end function doTransLaderRock(n) -- 1 vira escada e 0 pedra return doTransformItem(getTileItemById(dk, n == 1 and 3687 or 1285).uid, n == 1 and 1285 or 3687) end function getWinnerCastle() doTransLaderRock(0) -- pedra local player = getTopCreature(THRONE_POS).uid if getGlobalStorageValue(STORAGE_EVENT) < 0 then return true end if (isPlayer(player)) then if (getPlayerStorageValue(player, STORAGE_PLAYER) > 0) then local id, pid = 561, getPlayerGUID(player) setHouseOwner(id, pid) db.executeQuery("UPDATE `houses` SET `owner` = "..pid.." WHERE `id` = "..id) doPlayerAddPremiumDays(player, 7) for _, cid in ipairs(getPlayersOnline()) do setPlayerStorageValue(cid, STORAGE_PLAYER, 0) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end doBroadcastMessage(getCreatureName(player) .. " ganhou o evento.", 25) doTeleportThing(player, {x = 2531, y = 2460, z = 7}) doCreateItem(391, 1, {x = 2561, y = 2446, z = 5}) end else doBroadcastMessage("Ningúem ganhou o evento.", 27) for _, pid in ipairs(getPlayersOnline()) do setPlayerStorageValue(pid, STORAGE_PLAYER, 0) doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end setGlobalStorageValue(STORAGE_EVENT, 0) return db.executeQuery("DELETE FROM `player_storage` WHERE `key` = " .. STORAGE_PLAYER) end function isEventDay() for _, dia in pairs(days) do if dia == os.date("%A") then return true end end return false end function onTimer() if isEventDay() then doCreateItem(3687, 1, {x = 2539, y = 2474, z = 7}) ERRO E AQUI <<<<<<<<<<< OpenEvent() doTransLaderRock(1) -- escada addEvent(getWinnerCastle, DUR * 60 * 1000) end return true end agora não ta removendo a pedra só quando acaba o evento q aparece a escada obs: essa pedra ja é fixa no meu mapa editor , tem q remover ela e por escada quando inicia o evento, e quando acabar o evento remove a escada e coloca pedra dnvo acho q deu p entender rs
Postado Setembro 8, 2021 3 anos verdade, tinha uma linha que estava criando a pedra e duplicando ela, esqueci de remover... abre o mapa normalmente (que ja vem com a pedra do mapper edito) e inicia o evento com esse código: local THRONE_POS = {x = 2561, y = 2446, z = 5} local dk = {x = 2539, y = 2474, z = 7} -- door or rock local STORAGE_EVENT = 83902 local STORAGE_PLAYER = 73289 local DUR = 2 -- in minutes local days = {"Friday", "Saturday", "Thursday"} -- coloque os dias function OpenEvent() for _, tid in ipairs(getPlayersOnline()) do setPlayerStorageValue(tid, STORAGE_PLAYER, 1) end setGlobalStorageValue(STORAGE_EVENT, 1) doBroadcastMessage("O Evento castle foi aberto e vai durar ".. DUR .." minutos.", 25) end function doTransLaderRock(n) -- 1 vira escada e 0 pedra return doTransformItem(getTileItemById(dk, n == 1 and 1285 or 3687).uid, n == 1 and 3687 or 1285) end function getWinnerCastle() doTransLaderRock(0) -- pedra local player = getTopCreature(THRONE_POS).uid if getGlobalStorageValue(STORAGE_EVENT) < 0 then return true end if (isPlayer(player)) then if (getPlayerStorageValue(player, STORAGE_PLAYER) > 0) then local id, pid = 561, getPlayerGUID(player) setHouseOwner(id, pid) db.executeQuery("UPDATE `houses` SET `owner` = "..pid.." WHERE `id` = "..id) doPlayerAddPremiumDays(player, 7) for _, cid in ipairs(getPlayersOnline()) do setPlayerStorageValue(cid, STORAGE_PLAYER, 0) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) end doBroadcastMessage(getCreatureName(player) .. " ganhou o evento.", 25) doTeleportThing(player, {x = 2531, y = 2460, z = 7}) doCreateItem(391, 1, {x = 2561, y = 2446, z = 5}) end else doBroadcastMessage("Ningúem ganhou o evento.", 27) for _, pid in ipairs(getPlayersOnline()) do setPlayerStorageValue(pid, STORAGE_PLAYER, 0) doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid))) end end setGlobalStorageValue(STORAGE_EVENT, 0) return db.executeQuery("DELETE FROM `player_storage` WHERE `key` = " .. STORAGE_PLAYER) end function isEventDay() for _, dia in pairs(days) do if dia == os.date("%A") then return true end end return false end function onTimer() if isEventDay() then OpenEvent() doTransLaderRock(1) -- escada addEvent(getWinnerCastle, DUR * 60 * 1000) end return true end e não preciso remover ela, eu posso transformar ela em pedra ou escada... [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
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.