raynerjr 0 Postado Junho 19, 2015 Share Postado Junho 19, 2015 Olá, achei um script de adicionar skill e ml na troca por um x item! Mais na verdade eu quero que ele remova premium da minha database "mysql". Script: local config = { protectZone = "sim", -- Precisa estar em PZ para usar o comando? skill = { item = 9971, -- Item removido quantidade = 10, -- Quantidade quantidadeskill = 10, -- Skill adicionada limiteskill = 350 -- Limite }, magicLevel = { item = 9971, -- Item removido quantidade = 15, -- Quantidade quantidademl = 5, -- Magic level adicionado limitedeml = 200 -- Limite }, skillID = { -- ID das skills ["club"] = SKILL_CLUB, ["sword"]= SKILL_SWORD, ["axe"] = SKILL_AXE, ["distance"] = SKILL_DISTANCE, ["shielding"] = SKILL_SHIELD }, vocationSkill = { -- Vocações que pode comprar x skill ["club"] = {4, 8}, ["sword"] = {4, 8}, ["axe"] = {4, 8}, ["distance"] = {3, 7}, ["shielding"] = {4, 8} }, vocationMagicLevel = {1, 2, 5, 6}, -- Vocações que pode comprar magic level delay = { skill = { storage = 45, duration = 5 -- Tempo para comprar skill novamente }, magicLevel = { storage = 97, duration = 5 -- Tempo para comprar magic level novamente } } } function onSay(cid, words, param, channel) local playerId = getPlayerGUID(cid) if config.protectZone == "sim" and not getTilePzInfo(getCreaturePosition(cid)) then return doPlayerSendCancel(cid, "Você precisa estar em protection zone para comprar.") end if param == "magiclevel" then if getPlayerMagLevel(cid) < config.magicLevel.limitedeml then if isInArray(config.vocationMagicLevel, getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, config.magicLevel.item, config.magicLevel.quantidade) then if (os.time() - getPlayerStorageValue(cid, config.delay.magicLevel.storage)) >= config.delay.magicLevel.duration then setPlayerStorageValue(cid, config.delay.magicLevel.storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + " .. config.magicLevel.quantidademl .. " WHERE `id` = " .. playerId) else doPlayerSendCancel(cid, "Espere " .. config.delay.magicLevel.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 elseif config.skillID[string.lower(param)] then if getPlayerSkill(cid, config.skillID[string.lower(param)]) < config.skill.limiteskill then if isInArray(config.vocationSkill[string.lower(param)], getPlayerVocation(cid)) then if doPlayerRemoveItem(cid, config.skill.item, config.skill.quantidade) then if (os.time() - getPlayerStorageValue(cid, config.delay.skill.storage)) >= config.delay.skill.duration then setPlayerStorageValue(cid, config.delay.skill.storage, os.time()) doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + " .. config.skill.quantidadeskill .. " WHERE `player_id` = " .. playerId .. " and `skillid` = " .. config.skillID[string.lower(param)]) else doPlayerSendCancel(cid, "Espere " .. config.delay.skill.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 doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Possíveis parâmetros: club, sword, axe, distance, shielding, magiclevel.") end return true end Se podem ajudar agradeço! Link para o comentário https://xtibia.com/forum/topic/234896-removendo-premium/ Compartilhar em outros sites More sharing options...
Bruno 536 Postado Junho 19, 2015 Share Postado Junho 19, 2015 Remover os premium poits? Isso que eu entendi? Link para o comentário https://xtibia.com/forum/topic/234896-removendo-premium/#findComment-1656945 Compartilhar em outros sites More sharing options...
raynerjr 0 Postado Junho 19, 2015 Autor Share Postado Junho 19, 2015 Pode ser também. kkkkk, quero apenas uma base de como faço, pois vo criar varias tabelas para remover, ai preciso desse exemplo! Link para o comentário https://xtibia.com/forum/topic/234896-removendo-premium/#findComment-1656946 Compartilhar em outros sites More sharing options...
Bruno 536 Postado Junho 19, 2015 Share Postado Junho 19, 2015 Pode ser também. kkkkk, quero apenas uma base de como faço, pois vo criar varias tabelas para remover, ai preciso desse exemplo!Você pode colocar essas funções em suas libs: function getPlayerPoints(account) -- by Bruno Minervino local query = db.getResult("SELECT `premium_points` FROM `accounts` WHERE `name` = " .. db.escapeString(account)) if query:getID() ~= -1 then return tonumber(query:getDataString("premium_points")) end return 0 end function setPlayerPoints(account, points) -- by Bruno Minervino db.query("UPDATE `accounts` SET `premium_points` = `premium_points` " .. points .. " WHERE `name` = '" .. account .. "';") end Exemplo de funcionamento: local points = 30 function onSay(cid, words, param) local account = getPlayerAccount(cod) if getPlayerPoints(account) >= points then -- faz algo setPlayerPoints(account, -points) else -- não tem pontos end return true end Atribuir pontos: setPlayerPoints(account, +points)Remover pontos: setPlayerPoints(account, -points) Link para o comentário https://xtibia.com/forum/topic/234896-removendo-premium/#findComment-1656948 Compartilhar em outros sites More sharing options...
Bruno 536 Postado Julho 14, 2015 Share Postado Julho 14, 2015 O tópico foi fechado e movido para lixeira por estar inativo a mais de 10 dias. Caso seja preciso reabrir o mesmo, favor entrar em contato com a equipe. Link para o comentário https://xtibia.com/forum/topic/234896-removendo-premium/#findComment-1660155 Compartilhar em outros sites More sharing options...
Posts Recomendados