Ir para conteúdo

Adriano SwaTT

Membro
  • Registro em

  • Última visita

Tudo que Adriano SwaTT postou

  1. Boa noite. Aì ficaria assim: local strg1, strg2, strg3 = 17000, 17001, 63215 -- aqui agora coloque o Storage do Surf que não me forneceu local eff_in, eff_out = 10, 15 -- substitua aqui o efeito function onStepIn(cid, fromPosition, toPosition) local get1 = getPlayerStorageValue(cid, strg1) local get2 = getPlayerStorageValue(cid, strg2) local get3 = getPlayerStorageValue(cid, strg3) local get_pos = getCreaturePosition(cid) if isPlayer(cid) == true and get1 > 0 or get2 > 0 or get3 > 0 then doPlayerSendTextMessage(cid, 21, "Welcome.") doSendMagicEffect(getThingPos(cid), eff_in) elseif (not isPlayer(cid)) == true then return true else doPlayerSendCancel(cid, "Only Pokemons pass here.") doTeleportThing(cid, {x=get_pos.x, y=get_pos.y+1, z=get_pos.z}) doSendMagicEffect(getThingPos(cid), eff_out) end return true end Basta você por a ID do efeito que quer. Lembrando que local eff_in, eff_out = 10, 15 tem que substituir o valor 10 para efeito de entrada e o 15 para efeito rejeitada a entrada. Boa sorte.
  2. Creio que tenha que criar um "check" para saber se o player está Online antes da remoção, caso contrário retorna "false"... Mas por se tratar de remoção direta na DataBase, creio que o Player online ou offline não iria alterar em nada. Agora não sei, porque também não testei. :/ Boa sorte.
  3. Acusa a mensagem de que "Apenas Pokemons podem passar" mas não teleporta o player para trás? Não da nenhum erro no Launcher do Server? Pelo que parece o servidor não está reconhecendo a função "fromPosition". Que dependendo da versão do seu Servidor, pode ser "fromPos", "lastPosition", "lastPos", etc.. Sendo assim, teste esta abaixo, que pode ser configurada a gosto: local strg1, strg2, strg3 = 17000, 17001, 63215 -- aqui agora coloque o Storage do Surf que não me forneceu function onStepIn(cid, fromPosition, toPosition) local get1 = getPlayerStorageValue(cid, strg1) local get2 = getPlayerStorageValue(cid, strg2) local get3 = getPlayerStorageValue(cid, strg3) local get_pos = getCreaturePosition(cid) if isPlayer(cid) == true and get1 > 0 or get2 > 0 or get3 > 0 then doPlayerSendTextMessage(cid, 21, "Welcome.") elseif (not isPlayer(cid)) == true then return true else doPlayerSendCancel(cid, "Only Pokemons pass here.") doTeleportThing(cid, {x=get_pos.x, y=get_pos.y+1, z=get_pos.z}) end return true end Espero que tenha compreendido. Qualquer dúvida, pode ficar a vontade em perguntar. Boa sorte.
  4. Editei o tópico acima.. Teste e me diga.
  5. Certo. Vejamos: Estou com o GOD, crio um item, por exemplo uma Torch (tocha), ela continua funcionando normalmente, com decay, conforme programado em Items.xml, que vai mudando o ID periodicamente dando o efeito de que está se acabando/apagando. Até aí tudo certo? Beleza, agora se eu por um Script, movements por exemplo, que ao pisar em um determinado tile com uma ActionID adicionado pelo MapEditor. E neste script estiver programado para criar a torch (doCreateItem), ele cria, porém, não funciona o Decay gradualmente como era para funcionar. Ela fica eternamente funcionando com a Primeira ID, a que criou no script, ao invés de ir se acabando com o decorrer do tempo. Conseguiu entender? Obrigado pelo interesse em ajudar.
  6. Poderia criar um Script Movements onde checa Storage do Player, não sei muito bem como funciona o sistema de Pokemons e Fly, mas se estes scripts adicionam Storage no player quando ativo, seria fácil montar este sisteminha para você. Basicamente ficaria, mais ou menos, assim: NãoTestei local strg1, strg2, strg3 = 17000, 17001, XXXX -- aqui agora coloque o Storage do Surf que não me forneceu function onStepIn(cid, fromPosition, toPosition) local get1 = getPlayerStorageValue(cid, strg1) local get2 = getPlayerStorageValue(cid, strg2) local get3 = getPlayerStorageValue(cid, strg3) if isPlayer(cid) == true and get1 > 0 or get2 > 0 or get3 > 0 then doPlayerSendTextMessage(cid, 21, "Welcome.") elseif (not isPlayer(cid)) == true then return true else doPlayerSendCancel(cid, "Only Pokemons pass here.") doTeleportThing(cid, fromPosition) end return true end Obs: Os valores dos "XXXX" você substitui pelo número da Storage que o Pokemon, o Fly e o Ride da ao player. -EDIT- Ficou faltando por o valor do Storage do SURF no último conjunto de XXXX, coloque e teste. Depois faremos do Pokemons poder passar.
  7. Boa tarde. Gostaria de saber porque quando um item é criado no mapa por um script, o decay programado no items.xml não funciona. Ex: doCreateItem(itemid, 1, pos) Quando ele é criado, mesmo se ele tiver configurado o decay no items.xml, este "aprodrecimento" não funciona. Fico aguardando resposta. Obrigado.
  8. Posso lhe dar sugestão, para quando criar o item ele ter uma ActionID para que não possa ser movido. Da menos trabalho ao invés de precisar editar os "items.otb", agora sobre não ser item que possa ser "Use With", pode escolher outro item para ser usado. Fica a seu critério.
  9. Pois não... Basta ir adicionando a tag de acordo com a vocação que deseja permitir o uso. Ex: <movevent type="DeEquip" itemid="5410" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="5410" slot="shield" event="function" value="onEquipItem"> <vocation id="8"/> --Pra vocação 8, então copie e vai pondo o valor numerico do restante das vocações, como abaixo <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </movevent> Entendeu?
  10. Não entendi muito bem sua dúvida. Na verdade, já não é pra ser possível mexer nela quando implantada. Mas da pra editar isso caso seu OTServ esteja apresentando este bug. Plante uma Mina Terrestre e com o GOD dê look e veja se a mesma está com ActionID. Poste o Resultado.
  11. No caso, então não acusa nenhum erro na Distro? Precisamos ver o que está ocasionando, pode ser alguma função onDeath que está causando este bug.
  12. Talvez você possa fazer o script citado, porém sem o return true. Tipo assim: Crie um script assim: Em CreatureScripts.xml adicione esta tag: <event type="logout" name="LogoutSave" event="script" value="save.lua"/> Agora na pastas "Creaturescripts / scripts", crie um arquivo chamado "save.lua" e cole o código abaixo dentro: function onLogout(cid) doPlayerSave(cid, true) doBroadcastMessage("Player ".. getPlayerName .." salvo com sucesso!") end E em login.lua, ainda na pasta "Creaturescripts / Scripts" adicione a tag junto com as outras do tipo. registerCreatureEvent(cid, "LogoutSave") Ou então troque as sources, pelo menos para teste. Ou², temos que estudar as funções que estão ativas no sv para descobrir o que pode estar ocasionando erro.
  13. Adriano SwaTT postou uma resposta no tópico em Suporte & Pedidos
    Interessante, vou te adicionar para trocarmos algumas ideias. O Projeto está muito à frente do que está postado aqui, te mostro depois. Obrigado pelo interesse.
  14. Então, mas é que no caso, aqui funcionava perfeitamente. E outro, pode ver claramente no script que existe a função "deposit all" no script. Se quiser postar a 050-function para eu conferir, fique a vontade.
  15. Não contém o "Deposit All", mas funciona "Deposit 1000" por exemplo? @@edit' Por acaso retorna alguma erro no Launcher? Favor, postar seu arquivo "050-function.lua" que se encontra na pasta "data / lib " para que eu possa analisar. Fico aguardando.
  16. Qual a versão do seu OTServ? Porque só pode ser na função de "salvar" a quantidade de dinheiro do player. Se puder me enviar seu NPC Bank antigo (funcionando), em spoiler, para que eu possa comparar a função específica, ficaria mais fácil de arrumar. Qual a versão do seu OTServ? Porque só pode ser na função de "salvar" a quantidade de dinheiro do player. Se puder me enviar seu NPC Bank antigo (funcionando), em spoiler, para que eu possa comparar a função específica, ficaria mais fácil de arrumar.
  17. Então, percebi mesmo que são todos, e como não é nas sources, pode ser em movements.xml ou items.xml. Por isso pedi que postasse ambos.
  18. Não encontrei os registros dos anéis de experiência em seu movements. Favor, anexe também seu items.xml e o movements.xml com as tags do Exp Ring adicionadas. Obs: favor, usar "spoilers" para não ocupar a página toda. [spoiler] Cole o texto aqui. [/spoiler] Fico aguardando.
  19. Posta em spoiler seu movements.xml.
  20. Estranho que este erro aconteceu apenas contigo.. Mas para ser mais específico e que possa lhe ajudar, preciso de algumas informações, que são: Qual versão do seu OTServ e das suas Sources? Está a usar a versão Tradicional ou com Stages? Aguardo resposta.
  21. Olha, sinceramente o script teria que estar funcionando corretamente para que eu apenas editasse o básico. Como o script não é de minha autoria, sugiro que teste-o na função original postada e assim que funcionando, faço apenas a alteração do item "moeda". Estou com alguns problemas pessoais e meu projeto então tenho pouco tempo disponível, além de que não sou muito bom em script, aí teria que ficar testando em meu server o que acarretaria em um investimento de tempo grande. Boa sorte.
  22. Me diz, fora isso, com gold o script funcionava normal? Porque estou sem tempo para estudar ele todo.
  23. Cara, sei não, mas tipo... Olhei bem de leve no script e imaginei que funcionaria fazendo da seguinte forma, mas lembre-se, é apenas uma suposição: Substituir esta tag: if not(doPlayerRemoveMoney(cid, item.price)) then return doPlayerSendTextMessage(cid, messages.fail, "Sorry, you do not have any money.") end Por esta: if not(doPlayerRemoveItem(cid, 2151, item.price)) then return doPlayerSendTextMessage(cid, messages.fail, "Sorry, you don't have enought talons") end Obs: Lembre-se de configurar a quantidade de talons para cada item no início do script na parte "price", para uma quantidade bem menor. Teste e me fale. Boa sorte.
  24. Faça assim, não precisa upar ainda. Até porque eu estou bem corrido, vou ver se acho o tópico sobre este atributo, que por sinal, acho que meu amigo tem em seu server. Aí eu posto ou crio um tópico para e te aviso.

Informação Importante

Confirmação de Termo