Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

@Emooooo ? a alavanca e a pedra estão voltando no mesmo tempo amigo!

function onUse(cid, item, fromPos, itemEx, toPos)

local rock1pos = {x=195, y=118, z=9, stackpos=1} -- Posição da Pedra
local getrock1 = getThingfromPos(rock1pos)
local UniID = 3331 -- UniqueID que vai ser adicionado na alavanca
local rockID = 8740 -- ID da pedra

local sec = 30 -- qnt em segundos para a pedra aparecer e a alavanca voltar

if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, 1946)
doSendMagicEffect(rock1pos, 2)
addEvent(
function()
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid, 1945)
doSendMagicEffect(rock1pos, 13)
end,
sec * 1000)
return true
end

return true
end

 

  • Respostas 27
  • Visualizações 1.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Thalles Vitor
    Thalles Vitor

    Vish man sei não.. Seu pedido foi adicionar o Exhaustion.. Se quer ajuda tera que criar um novo tópico pedindo ajuda. Recomendo que use esse script em talkactions,usar em actions fica ma

  • @Emooooo veja se funciona ai bro  function onUse(cid, item, toPosition) local rock1pos = {x=195, y=118, z=9, stackpos=1} -- Posição da Pedra local getrock1 = getThingfromPos(rock1pos) local UniID

  • Thalles Vitor
    Thalles Vitor

    Oloco dono do otp xy aq? Faz oque eu te falei,move pra talkactions e tenta

Postado
  • Autor
7 minutos atrás, gabrielzika disse:

@Emooooo ? a alavanca e a pedra estão voltando no mesmo tempo amigo!


function onUse(cid, item, fromPos, itemEx, toPos)

local rock1pos = {x=195, y=118, z=9, stackpos=1} -- Posição da Pedra
local getrock1 = getThingfromPos(rock1pos)
local UniID = 3331 -- UniqueID que vai ser adicionado na alavanca
local rockID = 8740 -- ID da pedra

local sec = 30 -- qnt em segundos para a pedra aparecer e a alavanca voltar

if item.uid == UniID and item.itemid == 1945 and getrock1.itemid == rockID then
doRemoveItem(getrock1.uid, 1)
doTransformItem(item.uid, 1946)
doSendMagicEffect(rock1pos, 2)
addEvent(
function()
doCreateItem(rockID, 1, rock1pos)
doTransformItem(item.uid, 1945)
doSendMagicEffect(rock1pos, 13)
end,
sec * 1000)
return true
end

return true
end

 

funcionou aqui , e que ela era para proteger a alavanca da anihi quest .

sera que da pra colocar tempo nessa alavanca aqui , ela trava pro lado e depois de um tempo voltar .

 

 

 

function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
 if item.itemid == 1946 then

 player1pos = {x=33222, y=31671, z=13, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=33223, y=31671, z=13, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=33224, y=31671, z=13, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=33225, y=31671, z=13, stackpos=253}
 player4 = getThingfromPos(player4pos)


     if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then

  player1level = getPlayerLevel(player1.uid)
  player2level = getPlayerLevel(player2.uid)
  player3level = getPlayerLevel(player3.uid)
  player4level = getPlayerLevel(player4.uid)

  questlevel = 100

  if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then

      queststatus1 = getPlayerStorageValue(player1.uid,5000)
      queststatus2 = getPlayerStorageValue(player2.uid,5000)
      queststatus3 = getPlayerStorageValue(player3.uid,5000)
      queststatus4 = getPlayerStorageValue(player4.uid,5000)

      if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then

    --if 1==1 then
    demon1pos = {x=32224, y=31659, z=13}
    demon2pos = {x=32223, y=31659, z=13}
    demon3pos = {x=32221, y=31657, z=13}
    demon4pos = {x=33219, y=31657, z=13}
    demon5pos = {x=32222, y=31661, z=13}
    demon6pos = {x=32320, y=31661, z=13}
    
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)
  

    nplayer1pos = {x=33219, y=31659, z=13}
    nplayer2pos = {x=33220, y=31659, z=13}
    nplayer3pos = {x=33221, y=31659, z=13}
    nplayer4pos = {x=33222, y=31659, z=13}

   doSendMagicEffect(player1pos,2)
   doSendMagicEffect(player2pos,2)
   doSendMagicEffect(player3pos,2)
   doSendMagicEffect(player4pos,2)

   doTeleportThing(player1.uid,nplayer1pos)
   doTeleportThing(player2.uid,nplayer2pos)
   doTeleportThing(player3.uid,nplayer3pos)
   doTeleportThing(player4.uid,nplayer4pos)

     doSendMagicEffect(nplayer1pos,10)
     doSendMagicEffect(nplayer2pos,10)
     doSendMagicEffect(nplayer3pos,10)
     doSendMagicEffect(nplayer4pos,10)

     doTransformItem(item.uid,1945)

    else
     doPlayerSendCancel(cid,"Sorry, not possible.")
    end
   else
    doPlayerSendCancel(cid,"Sorry, not possible.")
   end
  else
  doPlayerSendCancel(cid,"Sorry, not possible.")
  end
  end
 if item.itemid == 1945 then
-- Here is the code start:
starting={x=33217, y=31655, z=13, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=33224, y=31663, z=13, stackpos=253}
players=0
totalmonsters=0
monster = {}
repeat
creature= getThingfromPos(checking)
 if creature.itemid > 0 then
 if getPlayerAccess(creature.uid) == 0 then
 players=players+1
 end
  if getPlayerAccess(creature.uid) ~= 0 and getPlayerAccess(creature.uid) ~= 3 then
 totalmonsters=totalmonsters+1
  monster[totalmonsters]=creature.uid
   end
 end
checking.x=checking.x+1
  if checking.x>ending.x then
  checking.x=starting.x
  checking.y=checking.y+1
 end
until checking.y>ending.y
if players==0 then
trash= {x=33193, y=31689, z=15}
current=0
repeat
current=current+1
doTeleportThing(monster[current],trash)
until current>=totalmonsters
doTransformItem(item.uid,1946)
end
-- Here is the end of it

end
end
 return 1
end
 

Postado
local config = {
    centerRoom = 33219, -- Posição do SQM Central da Sala
    rangeX = 10, -- Distância do fim da sala no eixo X
    rangeY = 10, -- Distância do fim da sala no eixo Y
    playerPositions = {
        [1] = {x=33222, y=31671, z=13, stackpos=253},
        [2] = {x=33223, y=31671, z=13, stackpos=253},
        [3] = {x=33224, y=31671, z=13, stackpos=253},
        [4] = {x=33225, y=31671, z=13, stackpos=253}
    },
    newPositions = {
        [1] = {x=33219, y=31659, z=13},
        [2] = {x=33220, y=31659, z=13},
        [3] = {x=33221, y=31659, z=13},
        [4] = {x=33222, y=31659, z=13}
    },
    demonPositions = {
        [1] = {x=32224, y=31659, z=13},
        [2] = {x=32223, y=31659, z=13},
        [3] = {x=32221, y=31657, z=13},
        [4] = {x=33219, y=31657, z=13},
        [5] = {x=32222, y=31661, z=13},
        [6] = {x=32320, y=31661, z=13}
    }
    requiredLevel = 100, -- Level minimo
    time = 10, -- Tempo em segundos
}

local function roomHasPlayer(centerRoom, rangeX, rangeY)
    local spectators
    spectators = getSpectators(centerRoom, rangeX, rangeY, false)
    return #spectators ~= 0 and true or false
end

local function cleanRoom(centerRoom, rangeX, rangeY)
    local spectators
    spectators = getSpectators(centerRoom, rangeX, rangeY, false)
    for i = 1, #spectators do
        local spec = spectators[i]
        if isMonster(spec.uid) then
            doRemoveCreature(spec.uid)
        end
    end
end

local function resetLever(pos)
   doTransformItem(getTileItemById(pos, 1945).uid, 1946)
end

function onUse(cid, item, frompos, item2, topos)
    if item.uid ~= 5000 then
        return false
    end

    if item.itemid == 1946 then
        local storePlayers, playerTile = {}

        for i = 1, #config.playerPositions do
            playerTile = getThingfromPos(config.playerPositions[i])
            if not playerTile or not isPlayer(playerTile.uid) then
                doPlayerSendCancel(cid, "You need 4 players.")
                return true
            end

            if getPlayerStorageValue(playerTile.uid, 5000) <= 0 then
                doPlayerSendCancel(cid, "Someone has already done this quest.")
                return true
            end

            if getPlayerLevel(playerTile.uid) < config.requiredLevel then
                doPlayerSendCancel(cid, "All the players need to be level ".. config.requiredLevel .." or higher.")
                return true
            end

            storePlayers[#storePlayers + 1] = playerTile
        end

        if roomHasPlayer(config.centerRoom, config.rangeX, config.rangeY, false) then
            doPlayerSendCancel(cid, "A team is already inside the quest room.")
            return true
        end

        cleanRoom(config.centerRoom, config.rangeX, config.rangeY, false)
        for i = 1, #config.demonPositions do
            doSummonCreature("Demon", config.demonPositions[i])
        end

        local players
        for i = 1, #storePlayers do
            players = storePlayers[i]
            doSendMagicEffect(config.playerPositions[i], 2)
            doTeleportThing(players, config.newPositions[i])
        end

        doTransformItem(item.uid,1945)
        addEvent(resetLever, config.time * 1000, topos)
    end

    if item.itemid == 1945 then
        doPlayerSendCancel(cid, "Wait for switch to reset.")
        return true
    end
    return true
end

Testa aí, qualquer erro me informa ?

Editado por FlavioHulk (veja o histórico de edições)

Postado
  • Autor
34 minutos atrás, FlavioHulk disse:

local config = {
    centerRoom = 33219, -- Posição do SQM Central da Sala
    rangeX = 10, -- Distância do fim da sala no eixo X
    rangeY = 10, -- Distância do fim da sala no eixo Y
    playerPositions = {
        [1] = {x=33222, y=31671, z=13, stackpos=253},
        [2] = {x=33223, y=31671, z=13, stackpos=253},
        [3] = {x=33224, y=31671, z=13, stackpos=253},
        [4] = {x=33225, y=31671, z=13, stackpos=253}
    },
    newPositions = {
        [1] = {x=33219, y=31659, z=13},
        [2] = {x=33220, y=31659, z=13},
        [3] = {x=33221, y=31659, z=13},
        [4] = {x=33222, y=31659, z=13}
    },
    demonPositions = {
        [1] = {x=32224, y=31659, z=13},
        [2] = {x=32223, y=31659, z=13},
        [3] = {x=32221, y=31657, z=13},
        [4] = {x=33219, y=31657, z=13},
        [5] = {x=32222, y=31661, z=13},
        [6] = {x=32320, y=31661, z=13}
    }
    requiredLevel = 100, -- Level minimo
    time = 10, -- Tempo em segundos
}

local function roomHasPlayer(centerRoom, rangeX, rangeY)
    local spectators
    spectators = getSpectators(centerRoom, rangeX, rangeY, false)
    return #spectators ~= 0 and true or false
end

local function cleanRoom(centerRoom, rangeX, rangeY)
    local spectators
    spectators = getSpectators(centerRoom, rangeX, rangeY, false)
    for i = 1, #spectators do
        local spec = spectators[i]
        if isMonster(spec.uid) then
            doRemoveCreature(spec.uid)
        end
    end
end

local function resetLever(pos)
   doTransformItem(getTileItemById(pos, 1945).uid, 1946)
end

function onUse(cid, item, frompos, item2, topos)
    if item.uid ~= 5000 then
        return false
    end

    if item.itemid == 1946 then
        local storePlayers, playerTile = {}

        for i = 1, #config.playerPositions do
            playerTile = getThingfromPos(config.playerPositions[i])
            if not playerTile or not isPlayer(playerTile.uid) then
                doPlayerSendCancel(cid, "You need 4 players.")
                return true
            end

            if getPlayerStorageValue(playerTile.uid, 5000) <= 0 then
                doPlayerSendCancel(cid, "Someone has already done this quest.")
                return true
            end

            if getPlayerLevel(playerTile.uid) < config.requiredLevel then
                doPlayerSendCancel(cid, "All the players need to be level ".. config.requiredLevel .." or higher.")
                return true
            end

            storePlayers[#storePlayers + 1] = playerTile
        end

        if roomHasPlayer(config.centerRoom, config.rangeX, config.rangeY, false) then
            doPlayerSendCancel(cid, "A team is already inside the quest room.")
            return true
        end

        cleanRoom(config.centerRoom, config.rangeX, config.rangeY, false)
        for i = 1, #config.demonPositions do
            doSummonCreature("Demon", config.demonPositions[i])
        end

        local players
        for i = 1, #storePlayers do
            players = storePlayers[i]
            doSendMagicEffect(config.playerPositions[i], 2)
            doTeleportThing(players, config.newPositions[i])
        end

        doTransformItem(item.uid,1945)
        addEvent(resetLever, config.time * 1000, topos)
    end

    if item.itemid == 1945 then
        doPlayerSendCancel(cid, "Wait for switch to reset.")
        return true
    end
    return true
end

Testa aí, qualquer erro me informa ?

time = 10, -- Tempo em segundos

e o tempo pra da use na alavanca denovo ??

Postado

@Emooooo acredito que seja o tempo pra alavanca voltar ao normal..

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo