Sistema :
--[[ <(Advanced Reset System 2.0)>
Autor: MarcelloMkez. Contato: (marcello_dirt@hotmail.com)Versão: 2.0Testado em: 8.50 e 8.60TFS: 0.3.6 and 0.4.0-=[Características]=-~( Versão 2.0 )~- Resets agora Armazenados na DataBase; (Sem Valor de Storage)- Instala o System e cria a Tabela de Resets com o comando "/installreset";- Resets no Look do jogador ex: 22:10 You see Marcello [Reset 2] (Level 8). He is an elder druid.;- [sTAGES] para "Premium Account" e "Free Account"; ]]--=[Functions]=---- installReset()' [instala o Sistema.]-- tableResetInstall()' [Verifica Se o Sistema ja foi instaladao.]-- nowReseting()' [Verifica, retorna o erro ou reseta.]-- getPlayerReset(cid)' [Pega numero de resets do player.]-- checLevelStageReset(cid)' [Verifica o Level para Resetar.]-- newReset(cid)' [Verifica todas as Condições de Reset.]-- addValue(value)' [Adiciona numero de resets.]--=[Comandos de Jogadores]=---- "/installreset" -- Só será usado uma vez, para instalar o sistema.-- "!resetar" -- Para Resetar.function onSay(cid, words, param)if words =="!resetar" then--[ Condições de Reset ] --local coNdConf = {needPz = true, -- Precisa estar em Pz pra resetar? [true, false]needPa = false, -- Precisa ser Premium Account Pra resetar? [true, false]withe = false, -- Players com Pk Withe podem resetar? [true, false]red = false, -- Players com Pk Red pode resetar? [true, false]battle = false, -- Players precisão estar sem battle pra resetar? [true, false]teleport = true, -- Teleportar Player para o templo após resetar? [true, false]look = true, -- Aparecer Resets no Look do Player? [true, false]pid = getPlayerGUID(cid), -- Não Mexer.--[ Configurações do Reset ] --resetConf = {Level = 500000, -- Level Necessário para Resetar. [Valor]backLvl = 80, -- Level que voltará após o Reset. [Valor]time = 5, -- Tempo para o Player deslogar ao resetar, em segundos. [Valor]},}--[[>> STAGES <<]]--x=true;X=true -- Não Mexer.local stage = {Abilitar = {x}, Desabilitar = {}, --<< Abilitar Stages?? >>-- [{x};{}]-- [RESETS] | [PREMMY] | [FREE]stage1= {resets= 1, premmy= 400000, free= 400000},stage2= {resets= 2, premmy= 425000, free= 425000}, -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])stage3= {resets= 3, premmy= 450000, free= 450000}, -- resets = Número de resets para o Stage;stage4= {resets= 4, premmy= 475000, free= 475000}, -- premmy = Level necessário para Premium Accounts;stage5= {resets= 5, premmy= 500000, free= 500000}, -- free = Level necessário para Free Accounts;stage6= {resets= 6, premmy= 525000, free= 525000}, -- Coloque em Ordem...stage7= {resets= 7, premmy= 550000, free= 55000}, -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]stage8= {resets= 8, premmy= 575000, free= 575000}, -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}stage9= {resets= 9, premmy= 600000, free= 600000},stage10={resets= 10, premmy= 610000, free= 610000},}--[[>> FIM STAGES <<]]----=[Pega Valor de Resets]=--function getPlayerReset(cid)local qr = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";")rss = qr:getDataInt("reset", coNdConf.pid)if rss < 0 thenrss = 0endreturn rssendlocal success = " ~~ Sucesso! ~~ \nVocê tem agora "..(getPlayerReset(cid)+1).." resets. \nVocê será deslogado em "..coNdConf.resetConf.time.." segundos." ;err = doPlayerSendTextMessagelocal qrt = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";");rss_db = qrt:getDataInt("reset", coNdConf.pid)local lvl_query = "UPDATE `players` SET `level` = "..(coNdConf.resetConf.backLvl)..", `experience` = 0 WHERE `id`= " .. coNdConf.pid .. ";"local reset_query = "UPDATE `players` SET `reset` = "..(getPlayerReset(cid)+(1)).." WHERE `id`= " .. coNdConf.pid .. ";"local nolook_query = "UPDATE `players` SET `description` = '' WHERE `players`.`id`= " .. coNdConf.pid .. ";"local look_query = "UPDATE `players` SET `description` = ' [Reset "..(getPlayerReset(cid)+(1)).."]' WHERE `players`.`id`= " .. coNdConf.pid .. ";"--=[Reseta]=--function addValue(value)if coNdConf.look == false thendoRemoveCreature(cid)db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(nolook_query)elsedoRemoveCreature(cid)db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(look_query)return LUA_NO_ERRORendendfunction nowReseting()if (getPlayerLevel(cid) < coNdConf.resetConf.Level) thendoPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")return trueendif getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) thendoPlayerPopupFYI(cid, success)addEvent(addValue, coNdConf.resetConf.time*1000, value)elsedoPlayerPopupFYI(cid, success)addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))addEvent(addValue, coNdConf.resetConf.time*1000, value)return trueendend--[sTAGES Nao mexer em nada.]--function checkLevelStageReset(cid)local stages = {{resets= stage.stage1.resets, premmy= stage.stage1.premmy, free= stage.stage1.free},{resets= stage.stage2.resets, premmy= stage.stage2.premmy, free= stage.stage2.free},{resets= stage.stage3.resets, premmy= stage.stage3.premmy, free= stage.stage3.free},{resets= stage.stage4.resets, premmy= stage.stage4.premmy, free= stage.stage4.free},{resets= stage.stage5.resets, premmy= stage.stage5.premmy, free= stage.stage5.free},{resets= stage.stage6.resets, premmy= stage.stage6.premmy, free= stage.stage6.free},{resets= stage.stage7.resets, premmy= stage.stage7.premmy, free= stage.stage7.free},{resets= stage.stage8.resets, premmy= stage.stage8.premmy, free= stage.stage8.free},{resets= stage.stage9.resets, premmy= stage.stage9.premmy, free= stage.stage9.free},{resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free},}local resets = getPlayerReset(cid)for i, tab in ipairs(stages) doif resets <= tab.resets thencoNdConf.resetConf.Level = isPremium(cid) and tab.premmy or tab.freebreakendendif (getPlayerLevel(cid) < coNdConf.resetConf.Level) thenerr(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")return TRUEendif getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) thendoPlayerPopupFYI(cid, success)addEvent(addValue, coNdConf.resetConf.time*1000, value)elsedoPlayerPopupFYI(cid, success)addEvent(addValue, coNdConf.resetConf.time*1000, value)addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))return trueendendfunction newReset(cid)if(coNdConf.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == LUA_ERROR) thenerr(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar em Protection Zone Para Resetar. -") return TRUE endif(coNdConf.needPa == true) and not isPremium(cid) thenerr(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa ser Premium Account para Resetar. -") return TRUE endif(coNdConf.withe == false) and (getCreatureSkullType(cid) == 3) thenerr(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Withe. -") return TRUE endif(coNdConf.red == false) and (getCreatureSkullType(cid) == 4) thenerr(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Red. -") return TRUE endif(coNdConf.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) thenerr(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar sem Battle para Resetar. -") return TRUE endlocal xy = {true,false}table.insert(stage.Abilitar, false)table.insert(stage.Desabilitar, false)if stage.Abilitar[1] == xy[1] and stage.Desabilitar[1] == xy[2] thencheckLevelStageReset(cid)elseif stage.Abilitar[1] == xy[2] and stage.Desabilitar[1] == xy[1] thennowReseting()elsedoPlayerPopupFYI(cid, "LUA_ERROR; Configure corretamente o Sistema de STAGES!")endreturn trueendfunction tableResetInstall()print(not rss_db and LUA_ERROR or "Tabela de Resets: Instalada ... [success] ")addEvent(newReset, 1000, cid)return falseendif tableResetInstall() thenendend--=[install System]=--function installReset()if db.executeQuery("ALTER TABLE `players` ADD reset INT(11) NOT NULL DEFAULT 0;") thenprint("[MarcelloMkez] -= Advanced Reset System 2.0 por DataBase =- Instalado com sucesso!")return TRUEendprint('[Advanced Reset System/MarcelloMkez] Não foi possível instalar o Sistema.')return FALSEendlocal tt = {"Preparando Instalação...","Instalando: TableReset Db...","Instalando: getPlayerReset()...","Instalando: addValue()...","Instalando: checkLevelStageReset()...","Instalando: newReset() and nowReseting()...","Finalizando Instalação...","...",success = {"Iniciando...","function: TableReset Db... [success]","function: getPlayerReset()... [success]","function: addValue(value)... [success]","function: checkLevelStageReset()... [success]","function: newReset() and nowReseting()... [success]","Fim da Instalação. ","by: ~~ MarcelloMkez ~~ \nContato: marcello_dirt@hotmail.com",inst = {"MarcelloMkez","Advanced Reset System 2.0 por DataBase"},},}if words == "/installreset" and getPlayerAccess(cid) >= 3 thenfunction install()if installReset() thenprint(""..tt.success[7].."")doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,""..tt.success[8].."")doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] -="..tt.success.inst[2].."=- Instalado com sucesso!")elseprint("["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")endreturn 1endfunction concl(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[7].."")print(""..tt[8].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[7].."")doPlayerSendTextMessage(cid, typetx,""..tt[8].."")addEvent(install, 1000,cid)endfunction finall(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[6].."")print(""..tt[7].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[6].."")doPlayerSendTextMessage(cid, typetx,""..tt[7].."")addEvent(concl, 3000,cid)endfunction installDd(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[5].."")print(""..tt[6].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[5].."")doPlayerSendTextMessage(cid, typetx,""..tt[6].."")addEvent(finall, 1000,cid)endfunction installCc(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[4].."")print(""..tt[5].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[4].."")doPlayerSendTextMessage(cid, typetx,""..tt[5].."")addEvent(installDd, 1000,cid)endfunction installBb(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[3].."")print(""..tt[4].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[3].."")doPlayerSendTextMessage(cid, typetx,""..tt[4].."")addEvent(installCc, 1000,cid)endfunction installAa(cid)local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[2].."")print(""..tt[3].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[2].."")doPlayerSendTextMessage(cid, typetx,""..tt[3].."")addEvent(installBb, 1000,cid)endfunction toInstall()local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt.success[1].."")print(""..tt[2].."")doPlayerSendTextMessage(cid, typetx,""..tt.success[1].."")doPlayerSendTextMessage(cid, typetx,""..tt[2].."")addEvent(installAa, 1000,cid)endfunction preparation()local typetx = MESSAGE_STATUS_CONSOLE_BLUEprint(""..tt[1].."")doPlayerSendTextMessage(cid, typetx,""..tt[1].."")addEvent(toInstall, 3000,cid)endif preparation() thenendendreturn 1end--=[by: MarcelloMkez]=--
Fico grato se poderem me ajudar.