Ir para conteúdo
  • Cadastre-se

(Resolvido)Porta que só abre com certo Item (Pokemon)


Ir para solução Resolvido por zipter98,

Posts Recomendados

Eu vim aqui pedir um script de uma Porta que só abre se você der um certo item pra ela, e depois de um certo tempo ela fecha e você mesmo tendo o item, não pode passar por ela novamente.
Eu procurei por muitos lugares, mas não achei esse script, os que achei não funcionavam. E eu to dependendo disso pra fazer uma quest do ot.
Eu uso a Base Cyan, se isso importar.
Quem puder ajudar ai rep+

 

Link para o post
Compartilhar em outros sites

Criei um pra ti, mais ao invés de abrir a porta, ele te teleporta para frente dela.

function onUse(cid, item, topos)
local config = {
storage = 2799, -- Storage da porta.
item = 2598 -- Item necessário para passar.
}

if getPlayerStorageValue(cid, config.storage) > 0 then
return doPlayerSendTextMessage(cid, 25, "You can not pass again.")
end
if getPlayerItemCount(cid, config.item) <= 0 then
return doPlayerSendTextMessage(cid, 25, "You do not have the item needed to pass.")
end

pos = getPlayerPosition(cid)
if pos.x == topos.x then
if pos.y < topos.y then
pos.y = topos.y + 1
else
pos.y = topos.y - 1
end
elseif pos.y == topos.y then
if pos.x < topos.x then
pos.x = topos.x + 1
else
pos.x = topos.x - 1
end
else
doPlayerSendTextMessage(cid,22,'Stand in front of the door.')
doSendMagicEffect(topos,13)
return true
end
setPlayerStorageValue(cid, config.storage, 1)
doTeleportThing(cid,pos)
doSendMagicEffect(topos,12)
doPlayerRemoveItem(cid, config.item, 1)
doPlayerSendTextMessage(cid, 25, "Good Luck.")
return true
end

Criei assim, por que fiquei pensando, mesmo se o cara já tiver passado na porta, se alguém abrir a porta, ele vai passar lá de boa, a não ser que use 1 movement stepIn.

Se assim não der certo pra você, me avise que eu tento criar da maneira exata que você pediu.

Link para o post
Compartilhar em outros sites

No caso, não precisava usar o item, e sim clicar pra entrar na porta, ai consome o item e não pode entrar novamente mesmo com o item.
Eu vi um monte que você usava o item, e depois ficava na frente da porta, ou clicava na porta, mas nenhum deu aqui.

Link para o post
Compartilhar em outros sites
  • Solução
Action:
local config = {
    itens = {11641, 1},          --ID do item/quantidade que deve "dar" a porta.
    time = 8,                    --Tempo, em segundos, para a porta fechar.
    storage = 90561,
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
    if getPlayerStorageValue(cid, config.storage) > -1 then
        return doPlayerSendCancel(cid, "You already passed through the door.")
    elseif getPlayerItemCount(cid, config.itens[1]) < config.itens[2] then
        return doPlayerSendCancel(cid, "You need "..config.itens[2].." "..getItemNameById(config.itens[1]).." to open the door.")
    end
    local guid, name, itemid = getPlayerGUID(cid), getCreatureName(cid), item.itemid + 1
    addEvent(function()
        item = getTileItemById(toPosition, itemid).uid
        if item > 0 then
            doItemSetAttribute(item, "aid", 7815)
            doTransformItem(item, itemid - 1)
        end
        if isPlayer(cid) then
            setPlayerStorageValue(cid, config.storage, 1)
        else
            cid = getPlayerByName(name)
            if isCreature(cid) then
                setPlayerStorageValue(cid, config.storage, 1)
            else
                db.executeQuery("UPDATE player_storage SET value = 1 WHERE key = "..config.storage.." AND player_id = "..guid)
            end
        end
    end, config.time * 1000)
    doPlayerRemoveItem(cid, config.itens[1], config.itens[2])
    doPlayerSendTextMessage(cid, 27, "You sacrificed "..config.itens[2].." "..getItemNameById(config.itens[1]).." to open the door.")
    doTransformItem(item.uid, item.itemid + 1)
    doItemSetAttribute(item.uid, "aid", 7816)
    return true
end
Tag:
<action actionid="7815" event="script" value="nome_do_arquivo.lua"/>
Movement:
local storage = 90561
function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then
        return true
    end
    if getPlayerStorageValue(cid, storage) > -1 then
        return doPlayerSendCancel(cid, "You cannot pass through the door.") and doTeleportThing(cid, fromPosition)
    end
    return true
end
Tag:
<movevent type="StepIn" actionid="7816" event="script" value="nome_do_arquivo.lua"/>
Editado por zipter98 (veja o histórico de edições)

não respondo pms solicitando suporte em programação/scripting

Link para o post
Compartilhar em outros sites

Tem que por o id do item na porta ? Na action id ?
E esse script vai ser pra todas as portas ? Se tiver como ser só uma porta, ou algum tipo de porta, eu agradeço :D

Editado por Liru (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Coloca a actionid 7815 na porta desejada e a actionid 7816 no piso do local onde está a porta.

O ID do item que você deve dar, está na config que o zipter colocou.

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.


  • Conteúdo Similar

    • Por Zagaf
      ShowOff Poketibia
       
      Bom a alguns dias atrás eu comecei a reformular um mapa de poketibia que eu baixei (pokexmaster) , ate o momento eu refiz a cidade de saffron.
       
       
       
       
       
    • Por Baryon
      Boa noite amigos, estou aqui para apresentar meu projeto.
      Estou aqui no intuito de tentar desenvolver um ats baseado em naruto full perspectiva e com uso reduzido de bot, teremos um bot próprio que ira lhe auxiliar na cura e com espaço para 1 magia com finalidade de treino, assim focando que os players possam tentar se divertir jogando na mao tanto a parte pve como pvp do game (oque eu acho mais legal).
      O Servidor ja se encontra com alguns sistema sendo eles:
      ・Passe de batalha
      ・Painel de missoes 
      ・Village war
      ・Sistema de vilas
      ・Bingo book
      ・Autoloot
      ・Ninja procurado
      ・Painel de Dungeons
      ・ World Boss
      Nossas vocaçoes sao divididas em classes sendo elas:
       ・Shooters: Deidara, Gaara, Kankuro, Tenten, Sasori, Konan.
       ・Especialistas: Shikamaru, Nagato, Hashirama, Oonoki, Orochimaru.
       ・Assassinos: Asuma, Madara, Minato, Sasuke, Obito, Kisame.
       ・Suportes: Sakura, Shizune, Ino, Tsunade.
       ・Lutadores: Naruto, Kiba, Chouji, Lee, Neji, Hinata.
             (obs: ja temos por volta de mais 10 personagens "prontos" alem desses com foco em atualizações futuras)
       Atualmente apenas eu e mais uma pessoas estamos desenvolvendo o servidor e ambos trabalham o tempo ou seja nao temos tanto tempo disponivel entao estou em buscas de novas pessoas com certa experiencia para integrar a equipe tenho em mente 4 vagas disponiveis que sao: 1 Mapper, 1 Dev, 1 Designer, 1 Moderador (ficara em contato com a staff e interagindo em nosso discord, ficando por dentro das novidades e no inicio do game ira iniciar como tutor para auxiliar os players).
       Caso alguem tenha interessa em embarcar nessa aventura favor entrar em contato cmg pelo discord 😉 em breve estarei postando mais atualizaçoes do ot aqui!

       Nosso discord: https://discord.gg/pPTkbAnNSV
      Meu contato no discord: baryon1492



    • Por Underewar
      Após anos sem contribuir com um servidor fico feliz em lançar essa versão com muitas correções!

      Está versão é a versão OPEN_BETA.

      Que pode ser testada aqui. (Online até dia 25/05/2023)

      Foram corrigos muitos bugs e existem diversas melhorias em muitos dos sistemas existentes.

      Vocês podem encontrar as Libs que devem estar com uns 30% desses novos sistemas que foram adicionados e podem testar ou usar os códigos.

      O servidor esta online a 120+ dias, foi construído com XP 1 e bateu 66 Players Online.

      O ideal é usar este servidor em low rate.

      Atualizações

      Verifique a pagina do facebook para saber todas as atualizações!
      Se você curtiu acompanhe a pagina para acompanha o lançamento do jogo oficial!
       
      Importante
       

      A cada onda do nosso sistema de incursões, você terá a chance de encontrar um Pokémon Shiny raro e, após a terceira onda, um chefe shiny ainda mais raro aparecerá, oferecendo recompensas valiosas para os treinadores ousados o suficiente para enfrentá-lo.
      Utilize seus tokens de incursão para reiniciar o sistema e tentar novamente.

      Para saber sobre todas as novidades Por favor considere olhar nossa pagina,

      https://www.facebook.com/pokexadventure/photos
       
      Imagens
       
       
      Downloads

      Para configurar basta substituir a pasta data que você pode encontrar fazendo download da source, cole a pasta data baixa do Pokexadventure e divirta-se!

      Sources

      pokexadventure_open_beta_datapack.rar

      DLLS + Executaveis (Windows)

      OTC
       
      (mediafire.com)
       
      Website
       
      https://github.com/otsoft/myaac

      Ferramentas : 
      auto_restarter_windows.bat

      RME 3.5 ou superior.

      Object builder 10.98 Support ou superior.

      Item editor 10.98 Support ou superior.

      Tutoriais para Compilações
       

      Créditos : @Underewar @pota
    • Por Tungsx
      Olá a todos,
      Recentemente, trabalhei em um projeto de desenvolvimento de uma source para PDA e fiquei muito satisfeito com os resultados. Depois de muito esforço e testes, consegui atingir cerca de 90% de sucesso na implementação da source em diversos PDAs. Agora, gostaria de compartilhar meu trabalho com vocês.
      A source é escrita em C++ e possui diversas funções, incluindo getDamageMapPercent, isPokeball e Order System (getDirectionToWalk). Adicionado raças (Crystal, Steel, Dark), função OnSpawn, Pokemon Passivos e agressivos. Além disso, é altamente compatível com a maioria dos PDAs, embora possa haver algumas adaptações necessárias dependendo do dispositivo específico.
      Para quem estiver interessado em testar a source, deixo aqui o link para todas as funções: https://pastebin.com/EdvX88gv
      Ficarei muito grato por qualquer feedback que vocês possam me dar sobre a minha source. Compartilhar conhecimento e ajudar a comunidade é sempre muito gratificante e espero que minha source possa ajudá-los em seus projetos. Obrigado pela atenção e apoio!
      Atenciosamente, Tungs (kevick)
      a source se encontra anexada nesse tópico + link do mediafire para quem não conseguir baixar aqui.
       
      DOWNLOAD DA SOURCE ATUALIZADA: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file
       
      PS. QUALQUER ERRO EU AJUDAREI, BASTA COMENTAR AQUI NO TÓPICO
       
      SCAN : https://www.virustotal.com/gui/file/d0a3903d6d246dfaa63c0813e7dc91c5d8cb4ebf3f4969ed0e81dbb04504de5e?nocache=1
       
      ATUALIZAÇÃO 052023
      ADIÇÃO DA FUNÇÃO getDirectionToWalk (C++) após baixar e compilar a nova source que se encontra logo abaixo, adicione em 032-position.lua que se encontra na pasta lib a função abaixo:
      function getDirectionToWalk(p1, pos2) local dir = NORTH local pos1 = getCreaturePosition(p1) if(pos1.x > pos2.x) then dir = WEST if(pos1.y > pos2.y) then dir = NORTHWEST elseif(pos1.y < pos2.y) then dir = SOUTHWEST end elseif(pos1.x < pos2.x) then dir = EAST if(pos1.y > pos2.y) then dir = NORTHEAST elseif(pos1.y < pos2.y) then dir = SOUTHEAST end else if(pos1.y > pos2.y) then dir = NORTH elseif(pos1.y < pos2.y) then dir = SOUTH end end return dir end function getNextStepDelay(cid, dir) return tonumber(398) end  
       
       
       
      Source PDA atualização 052023.rar
    • Por SwayaDzn
      ##Change Log##
      Foram feita muitas modificações na base PokeImperium que foi feita pelo Lord Baxx. (Todos os devidos créditos da base vão para ele.)
      A principal ídeia era fazer um servidor BASEADO na PokeXGames, eu criei muito conteúdo assim como estava adicionando novos pokemons,
      então vou deixar esse changelog de várias coisas que eu adicionei/fui mechendo
      * Foram Feitas várias modificações no mapa, adicionando novas hunts da "cosmic world" como se fosse a nightmare world do pokexgames.
      * Adicionado todos os pokemons do TIER 1 de todos os clans, "os t1h da pokexgames"
      Zoroark, Shiny Pachirisu, Shiny Gardevoir, Shiny Rampardos, Shiny Hariyama, Shiny Heatmor, Shiny Mawile, Mega Pidgeot, Mega Glalie.
      * Foram CRIADOS novos MOVES para TODOS os pokémons de TIER 1.
      * Adicionado alguns novos pokemons de cada clan (não está nem um pouco completo, falta adicionar/balancear diversos pokemons de seus diversos clans
      * Adicionado mais de 3k+ de newtypes(outfit) e items novos no servidor.
      * Todos os pokémons novos tem seus proprios portraits/corpse. INCLUINDO os pokémons megas.
      * Eu criei uma base pra "clones quest" que séria uma quest que resetava a cada semana.
      * Sistema de travel estava sendo feito, porém não terminei (sistema de travel séria o "teleport" para a cosmic world.
      * Alteração no Task System.
      * Alterado Client/Modules/Ui/Interface.

      Principal Bug do servidor, este bug já tinha na propria base do lord baxx que é o auto loot, basicamente se você separa vários items iguais na sua mochila,
      e coletar algum loot de pokémon que tenha esse mesmo item, basicamente duplica, triplica, etc. esse item na sua mochila.
      Meu foco era deixar primeralmente o servidor "divertido" então não corri atrás de arrumar bugs.
      Não tenho mais tempo/vontade de mecher no servidor, então estou disponibilizando.
       
      Imagens/Vídeos
       
      Download: https://www.mediafire.com/file/nqgja991oomtfz0/PokeGhost+Project.rar/file
      scan: https://www.virustotal.com/gui/file/545e3c5e7a894e82cce5e9cb885f2dc4f8f2b8ce1d7f31ff75bb2d8e7bbf4095/detection
       
      Database: Imperium.s3db
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo