Ir para conteúdo
  • 0
Entre para seguir isso  
potinho

Scripting Anihilator [7.6]

Pergunta

potinho    4
potinho

Descreva em algumas palavras a base utilizada. (Nome do servidor / Nome do cliente / Nome do Website / etc).

TheOTXServer-76-win32.exe

Base: 

ExtremeOT

 

Qual a sua pergunta?

Boa tarde,

 

Estou com um problema na Anihilator:

 

Quando os players chegam no andar de cima da alavanca, os demons começam andar embaixo, como se detectassem os players. Então quando os players descem os demons estão fora de posição (os dois da porta). Não sei qual script posso mandar.

 

Você tem o código disponível? Se tiver poste-o na caixa de código que está dentro do spoiler abaixo:

Spoiler


 

 

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, anexe-a dentro do spoiler abaixo:

Spoiler

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 respostass a esta questão

Recommended Posts

  • 0
Majesty    1755
Majesty

data/actions/scripts/AnnihilatorQuest.lua:

Spoiler

-- Annihilator script v2.1 by GriZzm0.
--
-- Variables used:
--
-- player?pos     = The position of the players before teleport.
-- player?     = Get the thing from playerpos.
-- player?level = Get the players levels.
-- questslevel  = The level you have to be to do this quest.
-- questtatus?     = Get the quest status of the players.
-- demon?pos     = The position of the demons.
-- nplayer?pos     = The position where the players should be teleported too.
--
-- UniqueIDs used:
--
-- 5000 = The switch.
-- 5001 = Demon Armor chest.
-- 5002 = Magic Sword chest.
-- 5003 = Stonecutter Axe chest.
-- 5004 = Present chest.
--

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

            player1pos = {x=191, y=118, z=9, stackpos=253}
            player1 = getThingfromPos(player1pos)

            player2pos = {x=192, y=118, z=9, stackpos=253}
            player2 = getThingfromPos(player2pos)

            player3pos = {x=193, y=118, z=9, stackpos=253}
            player3 = getThingfromPos(player3pos)

            player4pos = {x=194, y=118, z=9, 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
            
                        demon1pos = {x=117, y=229, z=8}
                        demon2pos = {x=119, y=229, z=8}
                        demon3pos = {x=121, y=231, z=8}
                        demon4pos = {x=122, y=231, z=8}
                        demon5pos = {x=118, y=233, z=8}
                        demon6pos = {x=120, y=233, z=8}

                        doSummonCreature("Demon", demon1pos)
                        doSummonCreature("Demon", demon2pos)
                        doSummonCreature("Demon", demon3pos)
                        doSummonCreature("Demon", demon4pos)
                        doSummonCreature("Demon", demon5pos)
                        doSummonCreature("Demon", demon6pos)
                            
                        nplayer1pos = {x=191, y=118, z=10}
                        nplayer2pos = {x=192, y=118, z=10}
                        nplayer3pos = {x=193, y=118, z=10}
                        nplayer4pos = {x=194, y=118, z=10}

                        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,item.itemid+1)

                    else
                        doPlayerSendCancel(cid,"Sorry, not possible.")
                    end
                else
                    doPlayerSendCancel(cid,"Sorry, not possible.")
                end
            else
                doPlayerSendCancel(cid,"Sorry, not possible.")
            end
        elseif item.itemid == 1946 then
            if getPlayerAccess(cid) == 3 then
                doTransformItem(item.uid,item.itemid-1)
            else
                doPlayerSendCancel(cid,"Sorry, not possible.")
            end
        end
    elseif item.uid == 5001 then
        queststatus = getPlayerStorageValue(cid,5000)
        if queststatus == -1 then
            doPlayerSendTextMessage(cid,22,"You have found a demon armor.")
            doPlayerAddItem(cid,2494,1)
            setPlayerStorageValue(cid,5000,1)
        else
            doPlayerSendTextMessage(cid,22,"It is empty.")
        end
    elseif item.uid == 5002 then
        queststatus = getPlayerStorageValue(cid,5000)
        if queststatus == -1 then
            doPlayerSendTextMessage(cid,22,"You have found a magic sword.")
            doPlayerAddItem(cid,2400,1)
            setPlayerStorageValue(cid,5000,1)
        else
            doPlayerSendTextMessage(cid,22,"It is empty.")
        end
    elseif item.uid == 5003 then
        queststatus = getPlayerStorageValue(cid,5000)
        if queststatus == -1 then
            doPlayerSendTextMessage(cid,22,"You have found a stonecutter axe.")
            doPlayerAddItem(cid,2431,1)
            setPlayerStorageValue(cid,5000,1)
        else
            doPlayerSendTextMessage(cid,22,"It is empty.")
        end
    elseif item.uid == 5004 then
        queststatus = getPlayerStorageValue(cid,5000)
        if queststatus == -1 then
            doPlayerSendTextMessage(cid,22,"You have found thunder hammer.")
            doPlayerAddItem(cid,2421,1)
            setPlayerStorageValue(cid,5000,1)
        else
            doPlayerSendTextMessage(cid,22,"It is empty.")
        end
    end
return 1
end

 

Em: 

Spoiler

demon1pos = {x=117, y=229, z=8}
demon2pos = {x=119, y=229, z=8}
demon3pos = {x=121, y=231, z=8}
demon4pos = {x=122, y=231, z=8}
demon5pos = {x=118, y=233, z=8}
demon6pos = {x=120, y=233, z=8}

 

Configure as posições dos demons, serão criados na Annihilator quando a alavanca for utilizada e retire os demons do mapa.

Obs: no script, configure também as posições dos players para usar a alavanca e as posições que serão teleportados.

data/actions/actions.xml:

Spoiler

<!-- Annihilator Quest -->
<action uniqueid="5000" script="AnnihilatorQuest.lua" />
<action uniqueid="5001" script="AnnihilatorQuest.lua" />
<action uniqueid="5002" script="AnnihilatorQuest.lua" />
<action uniqueid="5003" script="AnnihilatorQuest.lua" />
<action uniqueid="5004" script="AnnihilatorQuest.lua" />

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • 0
potinho    4
potinho

@Majesty usei seu script, configurei as posições e UniqueIDs para o meu servidor. Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×