Ir para conteúdo

darkeyren

Artesão
  • Total de itens

    122
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Tudo que darkeyren postou

  1. Boa noite! Poderia esclarecer melhor o seu problema? Oque realmente não está sendo adicionado? Pelo oque eu consegui entender, o problema parece ser na hora de adicionar as Badges... correto?!
  2. Já temos isso por aqui, a única diferença é que não lida com o level do Pokémon! Bem, eu não sei qual a função do seu servidor que puxa a informação de level do Pokémon, mas seria algo assim: local text_color = (string.find(poke, "Shiny") or getPokemonLevel(poke) >= 80) and TALKTYPE_CHANNEL_ORANGE or TALKTYPE_CHANNEL_W for _, oid in ipairs(getPlayersOnline()) do doPlayerSendChannelMessage(oid,getCreatureName(cid),"[Catch Channel] O Jogador [".. getCreatureName(cid) .."] Capturou um ["..poke.."]!.", text_color, 10) end Boa sorte amigo!
  3. Boa tarde amigo! Eu dei uma olhada no script e oque está acontecendo é que o script está tentando setar um valor nulo à variável nesse bloco de código. if pokemon:find("Mega") then local normalPoke = megaEvolutions[getItemAttribute(item.uid, "megaStone")][1] if normalPoke then doItemSetAttribute(item.uid, "poke", normalPoke) pokemon = normalPoke end end Que no caso seria local normalPoke = megaEvolutions[getItemAttribute(item.uid, "megaStone")][1] Eu quero que você verifique se Pokéball em questão existe esse atributo "megaStone" ou se a tabela megaEvolutions existe esse valor em questão.
  4. Boa noite amigo! O sistema que o Lua usa para lidar com tempo é o sistema UNIX, onde ele retorna um valor inteiro e ai sim devemos traduzi-lo para algo legível. local config = { STORAGE = 99999, -- storage a sua escolha FLAG_DONE = -2, -- não mexer ITEM_ID = 2321, -- item q será entregue TIME = 3 --dias } local atual_time = os.time() local registred_time = getPlayerStorageValue(cid, config.STORAGE) local done = registred_time == config.FLAG_DONE if done then selfSay(("Você já pegou seu item!", cid) return false end if not registred_time then local time = atual_time + (config.DAYS * (24 * 60 * 60)) setPlayerStorageValue(cid, config.STORAGE, time) selfSay("Obrigado por vir aqui conquistar seu item, ele só vai ficar pronto daqui algum tempo!", cid) return false end if atual_time < registred_time then selfSay("Seu item vai ficar pronto em "..os.date("%c", registred_time), cid) return false else selfSay("Obrigado pela espera! Aqui está seu Item", cid) doPlayerGiveItem(cid, config.ITEM_ID, 1) setPlayerStorageValue(cid, config.STORAGE, config.FLAG_DONE) return true end Em seu curto e grosso, seria isso! Fique a sua vontade editar da maneira que quiser, eu não testei, mas qualquer coisa só mandar mensagem aqui! Um abraço!
  5. darkeyren

    Catch Channel

    Boa noite amigo! No caso, seria bem simples. local text_color = string.find(poke, "Shiny") and TALKTYPE_CHANNEL_ORANGE or TALKTYPE_CHANNEL_W for _, oid in ipairs(getPlayersOnline()) do doPlayerSendChannelMessage(oid,getCreatureName(cid),"[Catch Channel] O Jogador [".. getCreatureName(cid) .."] Capturou um ["..poke.."]!.", text_color, 10) end Bem, eu não sei como está a CONSTANTE para mensagem LARANJA em seu servidor, caso esteja errado apenas altere.
  6. local items = { 2687, 6394, 6280, 6574, 6578, 6575, 6577, 6569, 6576, 6572, 2114, 2152, 2152, 2152, 2153, 5944, 2112, 6568, 6566, 2492, 2520, 2195, 2114, 2114, 2114, 6394, 6394, 6576, 6576, 6578, 6578, 6574, 6574 } local cfg = { min_count = 1, max_count = 10, } function onUse(cid, item, fromPosition, itemEx, toPosition) for k = 0, #items do local count = math.random(cfg.min_count, cfg.max_count) doPlayerAddItem(cid, items[k], count) end doSendMagicEffect(fromPosition, CONST_ME_GIFT_WRAPS) doRemoveItem(item.uid, 1) return true end Todos items serão adicionados ao jogador, a quantidade que vai vim de certo item é setada pelo cfg, sinta-se livre pra editar!
  7. Troca seu order(lib).lib por este aqui: Lembre-se que a tabela headbutt precisa existir em algum lugar da sua lib!
  8. Pelo oque eu vi no seu código a causa desse erro é que nem uma configuração de Headbutt foi encontrada/carregada! Você sabe onde sua tabela headbutt está? Você poderia substituir seu código da linha 242 até 247 de seu order(lib).lib por esse código e testar novamente? for i = 1, #lvl do if getPlayerLevel(master) <= lvl[i] then array[#array] = headbutt[lvl[i]] break end end if #array == 0 then print("No headbutt loaded!") end Não esqueça de tirar print do console e postar aqui!
  9. Parece que o problema nesse caso ai está sendo a função: sendAllPokemonsBarPoke() seu console está dizendo que ela não existe! Tente dar uma verificada se está tudo ok com suas libs!
  10. Poderia me passar um exemplo de NPC completo de seu servidor? .xml e .lua! Acho que consigo te ajudar
  11. Então vamos lá! Vou te dar um breve exemplo de como usar o onLook(), caso você tenha alguma dúvida é só perguntar! function onLook(cid, target, itemid) return TRUE -- usa a descrição padrão! end Na minha source quando o retorno do onLook() é TRUE ele usa a descrição padrão do servidor, sabendo disso vamos fazer o nosso script agora pra testar como funciona! Vamos fazer um breve exemplo de uso dele! Como estou sem criatividade, vou fazer um simples script que se o player estiver com certa STORAGE ele vai mudar sua descrição! function onLook(cid, target, itemid) if isPlayer(target) then local storage = getPlayerStorageValue(target, STORAGE) if storage ~= -1 then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Esse cara é o bixão mesmo!") return FALSE end end return TRUE -- default end Obs: a assinatura do seu onLook() pode ser diferente da minha! Boa sorte!
  12. Tenta assim ó! addEvent(sendScreanSound, time, cid, "Ball Fail.mp3")
  13. A melhor maneira de se fazer isso é utilizando o evento onLook(). De uma checada nas suas sources/creatureevents e veja se ele existe em seu servidor.
  14. Salve amigão! A parte de fazer seus 100 crystal se transformar em 1 gold nugget é no seu actions, no meu servidor o nome do script é changegold.lua, tente achar algo assim! Ou apenas vá no actions.xml e procure o script que é executado quando os items de id { 2148, 2152, 2160 } são utilizados e poste aqui!
  15. Tem algum erro no console? Você registrou o script no talkactions? Você precisa ser mais especifico na hora de postar um problema!
  16. Você pode utilizar a função addEvent! Sabendo o tempo que demora para a animação da pokeball falhar/sucesso, fica fácil! Algo como: local time = (4 * 1000) addEvent(sendScreenSound, time, cid, param1) o param1 seria qual som seria reproduzido! Boa sorte!
  17. A isso ai é fácil de arrumar! O script ficaria assim! Aproveitei e dei uma refatorada nele novamente para ficar mais fácil de entender! Não cheguei a testar, então se der algum erro, me avise! local ID = 2157 local STORAGE = 50000 -- Configurable local MSG = "Ahhhhh me sinto bem melhor!" local HEALTH = 180000 local MANA = 180000 local COOLDOWN = 1.5 local EFFECT = 76 local REMOVE = false local MSG_COLOR = TALKTYPE_ORANGE_1 -- /Configurable function onUse(cid, item, fromPosition, itemEx, toPosition) if not item.itemid == ID then return FALSE elseif exhaustion.get(cid, STORAGE) doPlayerSendCancel(cid, "You are exhausted.") return FALSE end doCreatureAddHealth(cid, HEALTH) doPlayerAddMana(cid, MANA) doCreatureSay(cid, MSG, MSG_COLOR or TALKTYPE_ORANGE_1) local effectPos = {x = getPlayerPosition(cid).x + 1, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z} doSendMagicEffect(effectPos, EFFECT) if REMOVE then doRemoveItem(item.uid, 1) end exhaustion.set(cid, STORAGE, COOLDOWN) return TRUE end
  18. Salve meu brother, o papo da mensagem é fácil de arrumar, mas a parte de trocar a cor da mensagem de Heal é apenas feita pelas Sources(código-fonte) do Servidor! local ITEM = 2157 local storage = 50000 -- Configurable local healMsg = "Ahhhhh me sinto bem melhor!" local REG_HEALTH = 180000 local REG_MANA = 180000 local wait = 1.5 local effect = 76 function onUse(cid, item, fromPosition, itemEx, toPosition) it not item.itemid == ITEM then return FALSE end local pos1 = {x = getPlayerPosition(cid).x + 1, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z} if exhaustion.get(cid, storage) == FALSE then doPlayerAddMana(cid, REG_MANA) doCreatureAddHealth(cid, REG_HEALTH) doCreatureSay(cid, healMsg, TALKTYPE_ORANGE_1) doSendMagicEffect(pos1, effect) exhaustion.set(cid, storage, wait) else doPlayerSendCancel(cid, "You are exhausted.") end return TRUE end Eu dei uma re-organizada no seu script, passei todas variáveis para fora do script, acho que só de ler você entenderá oque alterar! A parte abaixo de "Configurable" pode ser alterada ao seu gosto! Boa sorte!
  19. Talvez seja melhorar usa o CreatureEvent onKill para esse script? Pois estaremos lidando com o matador e não com quem morre, então acho que ficaria algo assim! function onKill(cid, target, lasthit) -- Vamos lidar apenas com mortes de jogadores! if not isPlayer(target) then return false end local prev_value = getPlayerStorageValue(cid, 10003) setPlayerStorageValue(cid, 10003, prev_value + 1) return true end Caso não funcione me avise! Boa sorte!
  20. Desculpe não ter respondido antes, acho que o problema é que esqueci de colocar que tem que registrar o evento no creaturescripts.xml <event type="think" name="Fishing" script="fishing.lua"/>
  21. Obrigado pela dica em relação ao min/max e condition outfit., quando tiver um tempo pretendo atualizar.. Em questão a movimentação, pelo menos quando eu jogava ele não perdia a isca quando andava, só se ficasse de frente pra algo (block) ou ficasse muito distante da isca, e quando andava ele sempre virava pro lado que estava a isca...
  22. Fala galera, hoje trago pra vocês meu Fishing System... Eu ainda não sou nem um programador experiente mas consegui fazer esse sistema, eu fiz ele faz um bom tempo... Não programo mais em Lua, apenas C++... Mas espero que gostem... Caso achem algo que seria desnecessário ou outra maneira mais fácil de fazer tal coisa só dizer, estou aberto a críticas. Bem, vamos lá!. - Crie um arquivo chamado fish.lua em Actions e coloque: - Agora crie outro arquivo em Actions chamado isca.lua e coloque: Agora em Creaturescripts crie um arquivo chamado fishing.lua e coloque: e registre esse evento no creaturescripts.xml <event type="think" name="Fishing" script="fishing.lua"/> - Agora na sua lib adicione isso: Bem, eu acho que é isso, espero não estar esquecendo nada... Enjoy.
  23. Talvez no script esteja colocado pra curar apenas se o jogador estiver em Protect Zone, caso não seja, me mostre como está o script da sua Nurse.
  24. Utilize uma Magic Door invés das outras doors... Ela já meio "própria" pra esse tipo de quest
  25. Sorry, não tinha visto que o dia das inscrições já tinha passado.
  • Quem Está Navegando   0 membros estão online

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