Ir para conteúdo

Omega

Marquês
  • Total de itens

    1165
  • Registro em

  • Última visita

  • Dias Ganhos

    13

Tudo que Omega postou

  1. Omega

    remover loot

    Cara, se você usa windows faz assim: pega o id do item que você quer tirar do drop dos bichos e bota o windows pra procurar por esse número na pasta dos monstros. Quando eu quero ver se algum bicho dropa tal e item e tirar, eu faço assim.
  2. Se não for relativo ao tópico, me passa por PM que eu tento.
  3. Omega

    Spell que da 5 hits

    Cara, se você quiser aumentar o tempo entre os hits pra ver melhor, faz assim: local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY)setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1)function onCastSpell(cid, var) local time = 100 for i=1,5 do addEvent(doCombat,time,cid, combat, var) time = time + 100 endend Onde tem time = time + 100, troca pra time = time + 200 (esse é o tempo em milissegundos entre um hit e outro). Tópico movido para a seção de dúvidas e pedidos resolvidos.
  4. Omega

    Spell que da 5 hits

    Tem certeza? É muito rápido pra contar vendo, tenta olhar pelo server log.
  5. Omega

    Spell que da 5 hits

    Tá aí: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SMALLHOLY) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1) function onCastSpell(cid, var) local time = 100 for i=1,5 do addEvent(doCombat,time,cid, combat, var) time = time + 100 end end
  6. Então, cara, é porque não tá adicionando o storage como deveria... Você editou alguma coisa? Como o resto tá funcionando, verifique se todos os killstotal estão escritos como devem e se não tem nenhum erro no executável (se tiver, posta aqui) Esse erro daí só pode estar em dois lugares: Na função doStartTask(cid) ou na configuração dos monstros, onde tem os nomes e killstotal. É onde o script muda o storage que deveria representar o total de monstros que devem ser mortos. Quando você usou /storage nome_do_jogador, 3453, aparece -1 mesmo?
  7. Ah, sim, foi mal. Tinha entendido errado mesmo. Agora vai checar: se o cara tiver o anel e o anel estiver carregado, vai ignorar a parte do script que desenergiza o AOL.
  8. @Smix Antes do que? Eu imaginei que fosse antes de ele ser ativado, não foram linhas inúteis, foi questão de interpretação do pedido. @Jonathas Cara, não precisava nem ter perguntado o ID do anel, esse script só checa necklace. Se você não conseguir ver qual é o script que você tem e tá dando conflito, troca pra outro anel. No pior dos casos, cria outro anel a partir de um que já exista.
  9. Cara, esse erro não vem do meu script, não. Huum, agora o erro do !countkills pode ser problema no jeito que você configurou. Vê se tá certo lá no killstotal dos monstros que você adicionou. Se quiser resetar na mão, usa esses comandos com o GOD: /storage nome_do_jogador, 3451, -1 -- storage de kills /storage nome_do_jogador, 3452, -1 -- storage de permissão / tempo pra fazer a task /storage nome_do_jogador, 3453, -1 -- storage do total de monstros que você tem que matar /storage nome_do_jogador, 3454, -1 -- storage do monstro que você tem que matar Aí você resetou o sistema de tasks. Confere lá a sua configuração, se ficou certinha mesmo, porque o que o script faz é adicionar um valor de storage pra quantidade total, aí compara com outro storage com a quantidade que você matou. Se você tiver configurado errado, o NPC vai colocar o valor errado como total, dando esse erro aí. Pra ver onde é o erro, vai usando /storage nome_do_jogador, 345N N variando de 1 a 4, como acima Vê se os valores estão acertados.
  10. A primeira talk: TAG talkactions.xml <talkaction words="/addprem" access="5" event="script" value="addprem.lua"/> Arquivo addprem.lua function onSay(cid, words, param) local param = string.explode(param,',') if param[1] == "free" then local days = tonumber(param[2]) ~= nil and tonumber(param[2]) or 5 if db.executeQuery("UPDATE `accounts` SET `premdays`="..days.." WHERE `premdays` = 0;") then doPlayerSendTextMessage(cid,27,"Foram adicionados "..days.." dias de Premium para todas as contas Free.") return true else doPlayerSendTextMessage(cid,27,"Ocorreu um erro.") return true end end doPlayerSendTextMessage(cid,27,"Sintaxe do comando: /addprem free,days") return true end Essa talk se usa assim: /addprem free,dias (de premium account). Se você não puser um número depois de free, o padrão é 5 (como você pediu). Cara, quando for pedir coisa pra VIP, diz qual sistema você usa, pois existem vários. Se der erro com essa mensagem: executeQuery (nil value), muda o executeQuery pra query.
  11. Qual é o ID do anel que você tá usando pra ressucitar?
  12. Omega

    Dois Pedidos

    Vou tentar, qualquer coisa te mando PM, então. Boa sorte aí, recomendo que comece com esses tutoriais se quiser começar a aprender scripting: http://www.xtibia.com/forum/topic/99746-pasta-data-enciclopedia-13-tutoriais-para-entender-ela-toda/ Depois pode dar uma olhada na Escolinha de Scripting do Roksas também.
  13. Omega

    Dois Pedidos

    E vamos à luta... Cara, aqui funcionou o movement, eu testei esse bastante antes de postar porque o outro tava dando erro Mas testa assim: function onDeEquip(cid, item, slot) doRemoveItem(item.uid) doPlayerAddItem(cid,item.itemid,1) return true end Não é pra sumir quando loga. É pra sumir somente se o tempo já passou, aí se não tiver passado, o script coloca pra sumir no tempo certo. Só some se você mudou os storages que eu tava usando. Achei um possível erro, troca o script da magia: lib: Não esquece de colocar o id da wand na lib também. Cara, vendo aqui não me parece ter nenhum erro. Se aparecer mais algum, tenta dar um up e pedir pra algum outro desocupado dar uma olhada no que eu fiz ou refazer. Se eu tiver tempo, testo e vejo se o problema é aí.
  14. Omega

    premium account

    Nesse momento eu estou me esforçando o máximo que posso para não ser grosso. Então vou dizer simplesmente: Releia. O. Que. Eu. Postei.
  15. Cara, esses scripts são muito fáceis e muito chatos de se fazer. Vou fazer o 1º que é um pouco mais interessante. Depois, dá uma olhada nesses tutoriais (valem a pena) http://www.xtibia.com/forum/topic/99746-pasta-data-enciclopedia-13-tutoriais-para-entender-ela-toda/ TAG movements.xml <movevent type="StepIn" actionid="4350" script="mysticstep.lua"/> movements/scripts/mysticstep.lua: TAG actions.xml: <action actionid="4351" script="finaltp.lua"/> actions/scripts/finaltp.lua: Pra colocar no mapa você bota a mystic flame com action id 4350 e o item que vai clicar e teleportar com actionid 4351.
  16. Omega

    Dois Pedidos

    É pra sumir, sim. Tenta colocar pra sumir em um tempo bem pequeno e testa. Se não funcionar, volta pra cá. (Mas vai funcionar sim... =D)
  17. Omega

    premium account

    1ª parte: TAG movements.xml: <movevent type="StepIn" actionid="26282" event="script" value="premiumtp.lua"/> <movevent type="StepIn" actionid="26283" event="script" value="premiumtp.lua"/> premiumtp.lua em movements/scripts: 2ª parte: Cara, aqui eu me compliquei um pouco. Tentei pensar em um jeito melhor de checar se o cara estava em uma área PA, mas não consegui: Você vai definir no script 4 posições: Pos1 será a área de início da primeira área PA (escolha o canto superior esquerdo da área e z=7) Pos2 será o fim da área PA (canto inferior direito, z=7) Pos3 e 4 serão a mesma coisa, mas para a segunda área PA A cada 5min (configurável), o servidor vai checar se os jogadores free estão na área definida (embaixo e acima também) e vai remover os que estiverem. Alguns possíveis problemas: O código, imagino eu, terá um grande custo no desempenho por checar uma área bem grande, então é melhor que o tempo de checagem não seja muito baixo (testa você mesmo pra ver se trava ou não aí) Possivelmente os jogadores poderão se esquivar da checagem geral, então você pode usar uma função no login (particularmente, eu acho desnecessário) Não fiz a parte do aviso antecipado porque iria criar mais problemas do que vale a pena, mas é fácil de colocar, se você fizer questão Ele checa do z=2 até z=12, se tiver alguma área acima ou abaixo disso, procura isInAreaMultifloor(...,5) e muda o 5 pra 7. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - TAG no globalevents.xml: <globalevent name="PremiumAreaCheck" interval="300000" event="script" value="PACheck.lua"/> -- intervalo de 5 minutos em milissegundos para chamar o código. Se o seu servidor considerar o intervalo em segundos, divida o tempo por 1000 Arquivo PACheck.lua em globalevents/scripts:
  18. Omega

    Dois Pedidos

    Tá dando erro mesmo, mas pondo na lib, funciona. Tenta cria um arquivo na pasta lib, pôr só essa função: function doRemoveWand(cid) if not isPlayer(cid) then return false end if exhaustion.check(cid,wandsto) == true then return false end for slot = 5,6 do if getPlayerSlotItem(cid, slot).itemid == id_da_wand then doPlayerRemoveItem(cid,id_da_wand,1) end end return true end E salvar como wandfunction.lua Aqui ainda tá dando uns erros, mas não é nessa parte. Edit: pronto, agora tá funcionando! As tags continuam as mesmas, mas vou repassar os arquivos modificados: wandlogin.lua (creaturescripts/scripts) wandmove.lua (movements/scripts) conjurewand.lua (spells/scripts) wandfunction.lua (lib/)
  19. Omega

    Dois Pedidos

    Cara, tira e bota de novo todos os arquivos dessa wand, reinicia o servidor e vê o que acontece. Se não der certo, eu tento te ajudar melhor.
  20. Roksas, tava testando umas coisas com creaturescripts de monstros ontem e não funcionava no login.lua. Talvez seja do servidor, mas eu tive que colocar a tag do evento no .xml do monstro. Dessa maneira: <script> <event name="Nome do Creaturescript"/> </script> Colocando isso debaixo da TAG </flags> (creio que sirva em qualquer lugar) Aí na segunda linha do script (embaixo da função e seus parâmetros, você registra o evento) Eu também gosto de adicionar um string.lower na comparação pra não errarem por escrever por falta ou abuso de letras maiúsculas, além de ter consertado uma coisa: você colocou 40/100 getCreatureHealth(cid), mas acho que a intenção era getCreatureMaxHealth(cid). Enfim, a minha versão final fica assim:
  21. Omega

    Dois Pedidos

    Não tá mostrando a correção em spoiler? http://pastebin.com/SRNS27CF No Notebook, não estava aparecendo. Mais entrei aqui no Desketop apareceu Valeu. Vou testa e amanha respondo aqui te avisar se tiver algum BUG. Mais mesmo assim obrigado. Erro : [03/09/2013 13:27:01] [Error - CreatureScript Interface] [03/09/2013 13:27:01] data/creaturescripts/scripts/new/wand.lua:onLogin [03/09/2013 13:27:01] Description: [03/09/2013 13:27:01] data/creaturescripts/scripts/new/wand.lua:5: attempt to call global 'doRemoveWand' (a nil value) [03/09/2013 13:27:01] stack traceback: [03/09/2013 13:27:01] data/creaturescripts/scripts/new/wand.lua:5: in function <data/creaturescripts/scripts/new/wand.lua:3> Cara, não tá lendo a função doRemoveWand antes... tenta passar pra functions.lua na lib ou copiar e colar ela antes do script de login
  22. Meu pedido: (EDIT²: acho que como assinatura ficaria melhor) Tema: Game of Thrones | Tamanho: Imagem para assinatura | Omega // Leoric Sei lá, gostei do que vi nos outros pedidos, então acho que confio no seu trabalho Obrigado desde já EDIT: Achei essa imagem com o juramento Patrulha da Noite, e gostaria de pedir pra encaixar alguns (não precisa de todos) os dizeres dela na imagem.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...