xscas 0 Postado Janeiro 8, 2013 Share Postado Janeiro 8, 2013 (editado) Bom pessoal, poderiam me ajudar a deixar esse script de modo que o player só possa usar 1x o comando? skill = { item = 9971, -- Item quantidade = 0, -- Quantidade quantidadeskill = 90, -- Skill adicionada limiteskill = 90 -- Limite } magicLevel = { item = 9971, quantidade = 0, quantidademl = 90, limitedeml = 90 } skillID = { ["club"] = SKILL_CLUB, ["sword"]= SKILL_SWORD, ["axe"] = SKILL_AXE, ["distance"] = SKILL_DISTANCE, ["shielding"] = SKILL_SHIELD } vocationSkill = { -- Vocações - SKILL ["club"] = {4, 8}, ["sword"] = {4, 8}, ["axe"] = {4, 8}, ["distance"] = {3, 7}, ["shielding"] = {4, 8} } vocationMagicLevel = {1, 2, 5, 6} -- Vocações - MAGIC LEVEL protectZone = "sim" function onSay(cid, words, param, channel) local pid = getPlayerGUID(cid) if (protectZone == "sim") and (not getTilePzInfo(getCreaturePosition(cid))) then doPlayerSendCancel(cid, "Você precisa estar em protection zone pra poder comprar.") end if (param == '') then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Como usar: !comprar club; !comprar magiclevel.") return true end local storage, duration = 5, 5 if (param == 'magiclevel') then if getPlayerMagLevel(cid) < magicLevel.limitedeml then if isInArray(vocationMagicLevel, getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, magicLevel.item, magicLevel.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + ".. magicLevel.quantidademl .." WHERE `id` = ".. pid) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar magic level.") end else doPlayerSendCancel(cid, "Você chegou no limite de magic level.") end return true end if(skillID[param:lower()]) then if(getPlayerSkill(cid, skillID[param:lower()]) < skill.limiteskill) then if isInArray(vocationSkill[param:lower()], getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, skill.item, skill.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + ".. skill.quantidadeskill .." WHERE `player_id` = ".. pid .. " and `skillID[` = ".. skillID[param:lower()]) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar este skill.") end else doPlayerSendCancel(cid, "Você chegou no limite de skill.") end else doPlayerSendCancel(cid, "Skill desconhecida.") end return true end up up Editado Janeiro 7, 2013 por xscas Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/ Compartilhar em outros sites More sharing options...
SmiX 265 Postado Janeiro 8, 2013 Share Postado Janeiro 8, 2013 skill = { item = 9971, -- Item quantidade = 0, -- Quantidade quantidadeskill = 90, -- Skill adicionada limiteskill = 90 -- Limite } magicLevel = { item = 9971, quantidade = 0, quantidademl = 90, limitedeml = 90 } skillID = { ["club"] = SKILL_CLUB, ["sword"]= SKILL_SWORD, ["axe"] = SKILL_AXE, ["distance"] = SKILL_DISTANCE, ["shielding"] = SKILL_SHIELD } vocationSkill = { -- Vocações - SKILL ["club"] = {4, 8}, ["sword"] = {4, 8}, ["axe"] = {4, 8}, ["distance"] = {3, 7}, ["shielding"] = {4, 8} } vocationMagicLevel = {1, 2, 5, 6} -- Vocações - MAGIC LEVEL protectZone = "sim" function onSay(cid, words, param, channel) if getPlayerStorageValue(cid, 1839) <= 0 then setPlayerStorageValue(cid, 1839, 1) local pid = getPlayerGUID(cid) if (protectZone == "sim") and (not getTilePzInfo(getCreaturePosition(cid))) then doPlayerSendCancel(cid, "Você precisa estar em protection zone pra poder comprar.") end if (param == '') then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Como usar: !comprar club; !comprar magiclevel.") return true end local storage, duration = 5, 5 if (param == 'magiclevel') then if getPlayerMagLevel(cid) < magicLevel.limitedeml then if isInArray(vocationMagicLevel, getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, magicLevel.item, magicLevel.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + ".. magicLevel.quantidademl .." WHERE `id` = ".. pid) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar magic level.") end else doPlayerSendCancel(cid, "Você chegou no limite de magic level.") end return true end if(skillID[param:lower()]) then if(getPlayerSkill(cid, skillID[param:lower()]) < skill.limiteskill) then if isInArray(vocationSkill[param:lower()], getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, skill.item, skill.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + ".. skill.quantidadeskill .." WHERE `player_id` = ".. pid .. " and `skillID[` = ".. skillID[param:lower()]) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar este skill.") end else doPlayerSendCancel(cid, "Você chegou no limite de skill.") end else doPlayerSendCancel(cid, "Skill desconhecida.") end else doPlayerSendCancel(cid, "Você já usou esse comando um vez.") end return true end Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1433650 Compartilhar em outros sites More sharing options...
xscas 0 Postado Janeiro 8, 2013 Autor Share Postado Janeiro 8, 2013 (editado) Cara funcionou direitinho!, se puder também, como eu coloco para poder usar o comando se estiver ML 10 ou menos... ?? Brigadão Editado Janeiro 8, 2013 por xscas Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1434180 Compartilhar em outros sites More sharing options...
SmiX 265 Postado Janeiro 8, 2013 Share Postado Janeiro 8, 2013 skill = { item = 9971, -- Item quantidade = 0, -- Quantidade quantidadeskill = 90, -- Skill adicionada limiteskill = 90 -- Limite } magicLevel = { item = 9971, quantidade = 0, quantidademl = 90, limitedeml = 90 } skillID = { ["club"] = SKILL_CLUB, ["sword"]= SKILL_SWORD, ["axe"] = SKILL_AXE, ["distance"] = SKILL_DISTANCE, ["shielding"] = SKILL_SHIELD } vocationSkill = { -- Vocações - SKILL ["club"] = {4, 8}, ["sword"] = {4, 8}, ["axe"] = {4, 8}, ["distance"] = {3, 7}, ["shielding"] = {4, 8} } vocationMagicLevel = {1, 2, 5, 6} -- Vocações - MAGIC LEVEL protectZone = "sim" function onSay(cid, words, param, channel) if getPlayerMagLevel(cid) <= 10 then if getPlayerStorageValue(cid, 1839) <= 0 then setPlayerStorageValue(cid, 1839, 1) local pid = getPlayerGUID(cid) if (protectZone == "sim") and (not getTilePzInfo(getCreaturePosition(cid))) then doPlayerSendCancel(cid, "Você precisa estar em protection zone pra poder comprar.") end if (param == '') then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Como usar: !comprar club; !comprar magiclevel.") return true end local storage, duration = 5, 5 if (param == 'magiclevel') then if getPlayerMagLevel(cid) < magicLevel.limitedeml then if isInArray(vocationMagicLevel, getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, magicLevel.item, magicLevel.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + ".. magicLevel.quantidademl .." WHERE `id` = ".. pid) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar magic level.") end else doPlayerSendCancel(cid, "Você chegou no limite de magic level.") end return true end if(skillID[param:lower()]) then if(getPlayerSkill(cid, skillID[param:lower()]) < skill.limiteskill) then if isInArray(vocationSkill[param:lower()], getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, skill.item, skill.quantidade) then if (os.time() - getPlayerStorageValue(cid, storage)) >= duration then setPlayerStorageValue(cid, storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + ".. skill.quantidadeskill .." WHERE `player_id` = ".. pid .. " and `skillID[` = ".. skillID[param:lower()]) else doPlayerSendCancel(cid, "Espere ".. duration .." segundos para comprar novamente.") end else doPlayerSendCancel(cid, "Você não tem o item requerido.") end else doPlayerSendCancel(cid, "Voce não pode comprar este skill.") end else doPlayerSendCancel(cid, "Você chegou no limite de skill.") end else doPlayerSendCancel(cid, "Skill desconhecida.") end else doPlayerSendCancel(cid, "Você já usou esse comando um vez.") end else doPlayerSendCancel(cid, "Você precisa ter ML igual ou menor que 10 para usar este comando.") end return true end Tenta ai. Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1434257 Compartilhar em outros sites More sharing options...
xscas 0 Postado Janeiro 9, 2013 Autor Share Postado Janeiro 9, 2013 Deu certinho cara, brigadão! Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1434340 Compartilhar em outros sites More sharing options...
Akatsukyi 23 Postado Janeiro 10, 2013 Share Postado Janeiro 10, 2013 Resolvido Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1435316 Compartilhar em outros sites More sharing options...
Stigal 584 Postado Janeiro 10, 2013 Share Postado Janeiro 10, 2013 Movido! Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1435329 Compartilhar em outros sites More sharing options...
Stigal 584 Postado Abril 20, 2018 Share Postado Abril 20, 2018 A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. + Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda. * Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado. Link para o comentário https://xtibia.com/forum/topic/203613-encerrado-storage/#findComment-1733419 Compartilhar em outros sites More sharing options...
Posts Recomendados