Jump to content

Scripting Script Reset Erro Exhaustion


Recommended Posts

.Qual servidor ou website você utiliza como base? 

OTX Server Global - Versão: (3.10)

Qual o motivo deste tópico? 

Estou tentando instalar o sistema de Reset nesse global porém quando o player usa o !resetar não funciona e o /installreset também não funciona.

 

Está surgindo algum erro? Se sim coloque-o aqui. 

Citar

image.thumb.png.11326f06927e59ff6e31bcc854fafed8.png

 

Você tem o código disponível? Se tiver publique-o aqui: 

--[[ <(Advanced Reset System 2.0)>
                                   Autor: Juniior Cwb ;*. Contato: (Juniior_Cwb@hotmail.com)
                                   Versão: 2.0
                                   Testado em: 8.50 e 8.60
                                   TFS: 0.3.6 and 0.4.0
                                   Atenção , Se Achar Esse Sistema em outro site ou forum favor comunicar Eu ( Juniior Cwb ) Juniior_Cwb@hotmail.com )
                   -=[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]=--
--  "!resetar"            -- Para Resetar.
 
local exhaustionMinutes = 1 -- exausted em segundos
local storageUse = 34538 -- storage usado no exausted.
 
function onSay(cid, words, param)
if words =="!resetar" then
if(exhaustion.check(cid, storageUse) == TRUE) then
   if (exhaustion.get(cid, storageUse) >= 5) then
   doPlayerSendCancel(cid, "Voçê só pode usar após [" .. math.floor(exhaustion.get(cid, storageUse) / 5 + 1) .."] Segundos.")
   end
    if (exhaustion.get(cid, storageUse) <= 5) then
    doPlayerSendCancel(cid, "Voçê só pode usar após [" .. exhaustion.get(cid, storageUse).."] segundos.")
    end
return TRUE
end
exhaustion.set(cid, storageUse, exhaustionMinutes*5)
--[ Condições de Reset ] --
local coNdConf = {
needPz = false,                                              -- Precisa estar em Pz pra resetar?                                   [false, false]
needPa = false,                                           -- Precisa ser Premium Account Pra resetar?      [true, false]
withe = false,                                              -- Players com Pk Withe podem resetar?                                          [false, false]
red = true,                                                                      -- Players com Pk Red pode resetar?                                        [false, false]
battle = true,                                           -- Players precisão estar sem battle pra resetar? [true, true]
teleport = false,                                                          -- Teleportar Player para o templo após resetar?  [false, false]
look = true,                                                       -- Aparecer Resets no Look do Player?                                                 [true, true]
pid = getPlayerGUID(cid),                 -- Não Mexer.
 
--[ Configurações do Reset ] --
resetConf = {
Level = 350,                                                                -- Level Necessário para Resetar.                                                                                       [Valor]
backLvl = 25,                                                                -- Level que voltará após o Reset.                                                                                    [Valor]
time = 0,                                                                                 -- 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= 330, free= 330},
stage2= {resets= 5,  premmy= 355, free= 355},    -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])
stage3= {resets= 10, premmy= 360, free= 360},    -- resets = Número de resets para o Stage;
stage4= {resets= 15, premmy= 365, free= 365},    -- premmy = Level necessário para Premium Accounts;
stage5= {resets= 20, premmy= 380, free= 380},    -- free            = Level necessário para Free Accounts;
stage6= {resets= 25, premmy= 390, free= 390},     -- Coloque em Ordem...
stage7= {resets= 30, premmy= 410, free= 410},    -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]
stage8= {resets= 35, premmy= 430, free= 430},    -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}
stage9= {resets= 40, premmy= 450, free= 450},
stage10={resets= 45, premmy= 480, free= 480},
stage11={resets= 50, premmy= 510, free= 510},
stage12={resets= 55, premmy= 550, free= 550},
stage13={resets= 60, premmy= 610, free= 610},
stage14={resets= 65, premmy= 750, free= 750},
stage15={resets= 70, premmy= 760, free= 760},
stage16={resets= 75, premmy= 900, free= 900},
stage17={resets= 80, premmy= 1000, free= 1000},
stage18={resets= 85, premmy= 1300, free= 1300},
stage19={resets= 90, premmy= 1500, free= 1500},
stage20={resets= 95, premmy= 3000, free= 3000},
stage21={resets= 100, premmy= 2800, free= 2800},
stage22={resets= 105, premmy= 2900, free= 2900},
stage23={resets= 110, premmy= 3200, free= 3200},
stage24={resets= 115, premmy= 3500, free= 3500},
stage25={resets= 120, premmy= 4300, free= 4300},
stage26={resets= 125, premmy= 4500, free= 4500},
stage27={resets= 130, premmy= 99500, free= 99500},
 
}
                            --[[>> 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 then
rss = 0
end
return rss
end
local success = "                                                                 ~~ Sucesso! ~~ \nVocê tem agora "..(getPlayerReset(cid)+1).." resets. \nVocê será deslogado em "..coNdConf.resetConf.time.." segundos." ;err = doPlayerSendTextMessage
local 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 then
  doRemoveCreature(cid)
db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(nolook_query)
else
  doRemoveCreature(cid)
   db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(look_query)
  return LUA_NO_ERROR
end
end
function nowReseting()
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
  doPlayerSendTextMessage(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 true
end
if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                  doPlayerPopupFYI(cid, success)
                  addEvent(addValue, coNdConf.resetConf.time*1, value)
            else
                  doPlayerPopupFYI(cid, success)
                  addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
                  addEvent(addValue, coNdConf.resetConf.time*1000, value)
  return true
end
end
--[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},
            {resets=stage.stage11.resets, premmy=stage.stage11.premmy, free=stage.stage11.free},
            {resets=stage.stage12.resets, premmy=stage.stage12.premmy, free=stage.stage12.free},
            {resets=stage.stage13.resets, premmy=stage.stage13.premmy, free=stage.stage13.free},
            {resets=stage.stage14.resets, premmy=stage.stage14.premmy, free=stage.stage14.free},
            {resets=stage.stage15.resets, premmy=stage.stage15.premmy, free=stage.stage15.free},
            {resets=stage.stage16.resets, premmy=stage.stage16.premmy, free=stage.stage16.free},
            {resets=stage.stage17.resets, premmy=stage.stage17.premmy, free=stage.stage17.free},
            {resets=stage.stage18.resets, premmy=stage.stage18.premmy, free=stage.stage18.free},
            {resets=stage.stage19.resets, premmy=stage.stage19.premmy, free=stage.stage19.free},
            {resets=stage.stage20.resets, premmy=stage.stage20.premmy, free=stage.stage20.free},
            {resets=stage.stage21.resets, premmy=stage.stage21.premmy, free=stage.stage21.free},
            {resets=stage.stage22.resets, premmy=stage.stage22.premmy, free=stage.stage22.free},
            {resets=stage.stage23.resets, premmy=stage.stage23.premmy, free=stage.stage23.free},
            {resets=stage.stage24.resets, premmy=stage.stage24.premmy, free=stage.stage24.free},
            {resets=stage.stage25.resets, premmy=stage.stage25.premmy, free=stage.stage25.free},
            {resets=stage.stage26.resets, premmy=stage.stage26.premmy, free=stage.stage26.free},
   {resets=stage.stage27.resets, premmy=stage.stage27.premmy, free=stage.stage27.free},
 
}
            local resets = getPlayerReset(cid)
                            for i, tab in ipairs(stages) do
                                            if resets <= tab.resets then
                                                            coNdConf.resetConf.Level = isPremium(cid) and tab.premmy or tab.free
                                                            break
                                            end
                            end
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
err(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 TRUE
end
  if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                 doPlayerPopupFYI(cid, success)
                 addEvent(addValue, coNdConf.resetConf.time*1000, value)
   else
   doPlayerPopupFYI(cid, success)
   addEvent(addValue, coNdConf.resetConf.time*1000, value)
   addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
            return true
  end
end
            function newReset(cid)
            if(coNdConf.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == LUA_ERROR) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar em Protection Zone Para Resetar. -") return TRUE end
            if(coNdConf.needPa == true) and not isPremium(cid) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa ser Premium Account para Resetar. -") return TRUE end
            if(coNdConf.withe == false) and (getCreatureSkullType(cid) == 3) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Withe. -") return TRUE end
            if(coNdConf.red == false) and (getCreatureSkullType(cid) == 4) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Red. -") return TRUE end
            if(coNdConf.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar sem Battle para Resetar. -") return TRUE end
local 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] then
checkLevelStageReset(cid)
elseif stage.Abilitar[1] == xy[2] and stage.Desabilitar[1] == xy[1] then
nowReseting()
else
doPlayerPopupFYI(cid, "LUA_ERROR; Configure corretamente o Sistema de STAGES!")
end
return true
end
            function tableResetInstall()
                 print(not rss_db  and LUA_ERROR or "Tabela de Resets: Instalada ... [success] ")
                 addEvent(newReset, 1000, cid)
                 return false
                 end
            if tableResetInstall() then
  end
end
            --=[Install System]=--
                   function installReset()
                            if db.executeQuery("ALTER TABLE `players` ADD reset INT(11) NOT NULL DEFAULT 0;") then
                                                            print("[MarcelloMkez] -= Advanced Reset System 2.0 por DataBase =- Instalado com sucesso!")
                                                            return TRUE
                            end
                            print('[Advanced Reset System/MarcelloMkez] Não foi possível instalar o Sistema.')
                            return FALSE
                 end
                            local 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 == "/installresetguiizeera" and getPlayerAccess(cid) >= 3 then
                                            function install()
                                            if installReset() then
                                                            print(""..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!")
                                   else
                                                            print("["..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].")
                                            end
                                            return 1
                            end
                                  function concl(cid)
                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[7].."")
                                                                 print(""..tt[8].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[8].."")
                                                            addEvent(install, 1000,cid)
                                            end
                                            function finall(cid)
                                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[6].."")
                                                            print(""..tt[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[7].."")
                                                            addEvent(concl, 3000,cid)
                                            end
                                                 function installDd(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[5].."")
                                                            print(""..tt[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[6].."")
                                                            addEvent(finall, 1000,cid)
                                            end
                                            function installCc(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[4].."")
                                                            print(""..tt[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[5].."")
                                                  addEvent(installDd, 1000,cid)
                                            end
                                            function installBb(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[3].."")
                                                            print(""..tt[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[3].."")
                                                  doPlayerSendTextMessage(cid, typetx,""..tt[4].."")
                                            addEvent(installCc, 1000,cid)
                                            end
                                            function installAa(cid)
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[2].."")
                                                            print(""..tt[3].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[3].."")
                                                            addEvent(installBb, 1000,cid)
                                            end
                                            function toInstall()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[1].."")
                                                            print(""..tt[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[1].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[2].."")
                                                   addEvent(installAa, 1000,cid)
                                                  end
                                            function preparation()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                   print(""..tt[1].."")
                                                 doPlayerSendTextMessage(cid, typetx,""..tt[1].."")
                                            addEvent(toInstall, 3000,cid)
                            end
                                            if preparation() then
                                            end
                            end
return 1
end
--=[By: Juniior Cwb ;* ]=--

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Link to post
Share on other sites

  • Assistente

ve se em sua lib/ tem algum arquivo exhaustion.lua se nao tiver algo assim ou parecido, cria e adiciona isso.

exhaustion =
{
	check = function (cid, storage)
		if(getPlayerFlagValue(cid, PLAYERFLAG_HASNOEXHAUSTION)) then
			return false
		end

		return getPlayerStorageValue(cid, storage) >= os.time(t)
	end,

	get = function (cid, storage)
		if(getPlayerFlagValue(cid, PLAYERFLAG_HASNOEXHAUSTION)) then
			return false
		end

		local exhaust = getPlayerStorageValue(cid, storage)
		if(exhaust > 0) then
			local left = exhaust - os.time(t)
			if(left >= 0) then
				return left
			end
		end

		return false
	end,

	set = function (cid, storage, time)
		setPlayerStorageValue(cid, storage, os.time(t) + time)
	end,

	make = function (cid, storage, time)
		local exhaust = exhaustion.get(cid, storage)
		if(not exhaust) then
			exhaustion.set(cid, storage, time)
			return true
		end

		return false
	end
}

exhaust =
{
	check = function (cid, storage)
		if getPlayerStorageValue(cid, storage) - os.time(t) > 0 then
		 return true
		end
	 return false
	end,

	get = function (cid, storage)
		local exhaust = (getPlayerStorageValue(cid, storage) - os.time(t))
		return exhaust
	end,

	set = function (cid, storage, time)
		setPlayerStorageValue(cid, storage, os.time(t) + time)
	end,

	make = function (cid, storage, time)
		local exhaust = exhaustion.get(cid, storage)
		if exhaust == 0 then
			exhaustion.set(cid, storage, time)
			return true
		end
		return false
	end,
	
	time = function (cid, storage)
	 return convertTime(getPlayerStorageValue(cid, storage) - os.time())
	end
}

 

Discord: Naze#3578

 

Ter Linux Dentro de Windows com Acesso 'localhost' para testes e +

AutoLoot Otimizado Direto na Source (tfs 0.4/otx)

 

// Pirataria é crime, original é roubo, compartilhar é legal.

 

tumblr_muk78tEwDQ1qah4nko1_500.gif

Link to post
Share on other sites

41 minutos atrás, Naze disse:

ve se em sua lib/ tem algum arquivo exhaustion.lua se nao tiver algo assim ou parecido, cria e adiciona isso.


exhaustion =
{
	check = function (cid, storage)
		if(getPlayerFlagValue(cid, PLAYERFLAG_HASNOEXHAUSTION)) then
			return false
		end

		return getPlayerStorageValue(cid, storage) >= os.time(t)
	end,

	get = function (cid, storage)
		if(getPlayerFlagValue(cid, PLAYERFLAG_HASNOEXHAUSTION)) then
			return false
		end

		local exhaust = getPlayerStorageValue(cid, storage)
		if(exhaust > 0) then
			local left = exhaust - os.time(t)
			if(left >= 0) then
				return left
			end
		end

		return false
	end,

	set = function (cid, storage, time)
		setPlayerStorageValue(cid, storage, os.time(t) + time)
	end,

	make = function (cid, storage, time)
		local exhaust = exhaustion.get(cid, storage)
		if(not exhaust) then
			exhaustion.set(cid, storage, time)
			return true
		end

		return false
	end
}

exhaust =
{
	check = function (cid, storage)
		if getPlayerStorageValue(cid, storage) - os.time(t) > 0 then
		 return true
		end
	 return false
	end,

	get = function (cid, storage)
		local exhaust = (getPlayerStorageValue(cid, storage) - os.time(t))
		return exhaust
	end,

	set = function (cid, storage, time)
		setPlayerStorageValue(cid, storage, os.time(t) + time)
	end,

	make = function (cid, storage, time)
		local exhaust = exhaustion.get(cid, storage)
		if exhaust == 0 then
			exhaustion.set(cid, storage, time)
			return true
		end
		return false
	end,
	
	time = function (cid, storage)
	 return convertTime(getPlayerStorageValue(cid, storage) - os.time())
	end
}

 

Boa noite, na lib não tinha o arquivo exhaustion.lua eu criei e joguei o script dentro porem não funcionou eu peguei do meu otserv 8.6 também que estava funcionando não deu certo.

agora que mudei de versão coloquei cliente 10 e 11.90 os script que tenho no 8.6 a maioria não funciona kk to bem chateado :(

 

Lua Script Error: [TalkAction Interface]
data/talkactions/scripts/reset.lua:onSay
data/talkactions/scripts/reset.lua:29: attempt to index global 'exhaustion' (a nil value)
stack traceback:
        [C]: in function '__index'
        data/talkactions/scripts/reset.lua:29: in function <data/talkactions/scripts/reset.lua:27>

Link to post
Share on other sites

  • Assistente

Realmente nao vai funcionar a maioria das funções a forma que o servidor interpreta mudou, em 1.3 é orientada a objeto. Então o erro pq é a primeira verificação, mas vai dar em praticamente todas, passei meu servidor pra 1.3 a pouco tempo, e pra isso reescrevi ele todo da forma correta, sugiro fazer o mesmo ou vai fica so tendo dor de cabeça.

Discord: Naze#3578

 

Ter Linux Dentro de Windows com Acesso 'localhost' para testes e +

AutoLoot Otimizado Direto na Source (tfs 0.4/otx)

 

// Pirataria é crime, original é roubo, compartilhar é legal.

 

tumblr_muk78tEwDQ1qah4nko1_500.gif

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By raphadoidera
      .Qual servidor ou website você utiliza como base? 
      8.60
      Qual o motivo deste tópico? 
      Preciso de um SCRIPT.

      Salve TK. Então rapaziada, estou a meses tentando achar um SCRIPT que faça com que o personagem solte mais de um míssil em uma mesma skill. Me passaram um que ele solta vários mísseis, porém os mesmos não saem diretamente do personagem. Eu preciso de um script que eu possa adicionar mais de um Míssil e que eles saiam diretamente do personagem. Alguém da uma força por favor!


      Esse é o Script que eu quero adicionar os Mísseis, 3 para ser mais exato. Míssel (41)
       
      Você tem o código disponível? Se tiver publique-o aqui: 
      local combat = createCombatObject()
      setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
      setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 41)
      setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -78.2, 1, -88.2, 1)
      function onCastSpell(cid, var)

      local waittime = 2 -- Tempo de exhaustion
      local storage = 1000600
      if exhaustion.check(cid, storage) then
      return false
      end

      local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}
      local position2 = {x=getCreaturePosition(cid).x+3, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}
      doSendMagicEffect(position1, 106)
      doSendMagicEffect(position2, 189)
      exhaustion.set(cid, storage, waittime)
      return doCombat(cid, combat, var)
      end
    • By djteteh
      Alguem Poderia Me Ajudar Com Um Script Que Mostra Rank e a Vocaçao Juntos em Uma Tabela ?

      Tipo Assim
       
      1- 140256 - Yoshiizin - Sorcerer
       
      So que ta assim no Server

       


    • By XGaduX
      local config = { jumps5 = 10, walktime = 10 } combat5 = createCombatObject() setCombatParam(combat5, COMBAT_PARAM_HITCOLOR, COLOR_PINK) setCombatParam(combat5, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) setCombatParam(combat5, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat5, COMBAT_PARAM_EFFECT, 22) setCombatFormula(combat5, COMBAT_FORMULA_LEVELMAGIC, -40.0, 0, -65.0, 0) function onCastSpell(cid) if exhaustion.check(cid, 4132213952) == TRUE then doPlayerSendCancel(cid, "Podera usar novamente dentro de 5 segundos.") doSendMagicEffect(getCreaturePosition(cid), 2) return false end function move5343(cid, pos, n) local n = n or 0 if (n < config.jumps5) then if (isCreature(cid)) then local pos = pos or getCreaturePosition(cid) local target = getCreatureTarget(cid) local dir = (target ~= 0) and getDirectionTo(pos, getCreaturePosition(target)) or getCreatureLookDirection(cid) local tpos = (target ~= 0) and getCreaturePosition(target) local newPos if ((target ~= 0) and ((pos.x-0 == tpos.x) and (pos.y == tpos.y))) then newPos = tpos else newPos = getPosByDir(pos, dir) end if ((getTopCreature(newPos).uid == 1) and doTileQueryAdd(cid, newPos) ~= 0) then return false end doCombat(cid, combat5, { pos = newPos, type = 2 }) addEvent(move5343, config.walktime, cid, newPos, n + 1) end end end move5343(cid) exhaustion.set(cid, 4132213952, 3.0) return true end Olá! alguém poderia "consertar" essa spell? os "erros" são que quando se da target em algum alvo ela segue ele, queria que ela fosse apenas em linha reta. Outro é que quando o player gira de sentido (está andando sentindo para baixo \/ e vira esquerda < a habilidade acompanha). A proposta é que ela vá em linha reta "x" vezes e ao tocar em player  com 10% da vida o execute. Att!.

      2021-03-05 17-56-30.mp4
      2021-03-05 17-53-10.mp4 2021-03-05 17-56-30.mp4 2021-03-05 17-56-30.mp4 2021-03-05 17-56-30.mp4 2021-03-05 17-53-10.mp4
    • By Sun
      ~ Olá galera, fiz parte do grupo por uns anos e fiquei 3 longos anos sem dar as caras
                                                       Antes pessoas me ajudavam, hoje, consigo ajudar as pessoas, e queria compartilhar com vocês conhecimento sobre itemAttribute!
                                                            essa função do tibia é maravilhosa, porém muitos não sabem seu potencial ou até mesmo não coloca ela em seus planos,
                                                          ela é bem simples porém deixa duvida em muitos, principalmente servidores de Poketibia que utiliza isso em quase tudo.
      getItemAttribute(uid, key) -- ## oque é get? get em inglês seria algo como obter, então a função traduzida seria, obter atributo do item! ## -- getItemAttribute(uid, key) -- ## UID seria direcionado a qual item eu estaria perguntando seu attributo, lembrando que eu obtenho isso com a key ##-- --## quando se pesquisa pelo atributo do item, o mais importante seria a chave que está contido no item, a key, no caso é uma {string} doItemSetAttribute(uid, key, value) -- ## oque é set? set seria algo como "definir", usamos para "dar" algo, traduzido fica definir atributo no item doItemSetAttribute(uid, key, value) -- ## uid novamente! seria o item a ser setado o attributo, chave, será algo que iremos colocar, como "defense" ## -- -- ## oque seria value? value seria o valor, como 1, etc já que é defense podemos fazer se tiver mais, defende mais ##  
      doItemEraseAttribute(uid, key) --## oque é do? do seria como "faça", na tradução seria, faça um corte no atributo do item doItemEraseAttribute(uid, key) --## uid novamente! será o item, a chave seria aque você setou no item, essa função retira o attributo!. ##--  
      exemplo dos Attribute sendo usados
       
      -- ## exemplo de catch seria o charmander ## -- Ensino = {"Charmander", 3200, 1515, 4} -- ## fazemos de exemplo que 3200 seria vida do charmander e 1515 seria o id do item do seu portfoil e 4 o sexo item = doCreateItemEx(12664, 1) -- ## 12664 seria o id da pokebola, 1 seria a quantia doPlayerAddItemEx(cid, item, true, CONST_SLOT_BACKPACK) doItemSetAttribute(item, "poke", 3200) -- ## vida do pokemon ## -- doItemSetAttribute(item, "nome", "Charmander") -- ## nome do pokemon ## -- doItemSetAttribute(item, "portrait", 1515) -- ## portrait do pokemon ## -- doItemSetAttribute(item, "gender", 4) -- ## 4 seria o sexo dele ## -- -- ## claro que ná hora de fazer seu system de catch irá ser assim, mas isso é apenas um exemplo de como irá funcionar ## -- -- ## lembrando que o valor do doItemSetAttribute pode ser além de numero. ## --  
                                                 
                                                                       
       
       
                                                        Espero que muitos pratiquem ai, e que vocês tenham conseguido entender o tópico e se aventurem para usar a função!.
                                                                                                                                                   bye
       
    • By ADMRagnarok
      .Qual servidor ou website você utiliza como base? 
      https://github.com/mattyx14/otxserver/tree/otxserv2
      Qual o motivo deste tópico? 
      Alguem teria um script de reset preferencialmente por source para otx2 atualizado https://github.com/mattyx14/otxserver/tree/otxserv2
      se for por distro as mudanças me diga aonde mudar eu mesmo compilo
      ou script normal mesmo, porem as configuraçoes do script seriam as seguintes
      level necessario para resetar = x
      aumento de x level para reset = x
      item e quantidade de item para resetar = x,x
      aumento de x items por reset= x
      vida e mana volta ao inicio ao resetar = true or false
      skills voltao ao inicio ao resetar = true false
      hp e mp adicional ganho /lvl por reset = 1% (configurável)
      dano e heal adicionado por reset = 1% configuravel
      reset voc = {x, x, x, x, x, x, x} (quando der o 10 reset por exemplo(configuravel) , será feito uma checagem de vocation para poder resetar, por exemplo até 10 resets qualquer voc reseta nao será feito checagem, porem no reset 10 só resetará se for uma das seguintes vocações, se for mais facil deixa só 1 reset configuravel assim se for dificil pode colocar apartir de tantos resets precisa da classe, coloque oque for mais pratico pois o efeito será o mesmo.
      teleport para o templo= true or false
      pode resetar com battle= true or false
      a cada x resets ganhe tal item (configuravel) reset x recebe item x ao resetar, reset =5 {2160, 100} - exemplo.
      nao me importa se será storage, source, script. só me importo com o resultado e que nao tenha bugs, quanto mais bem feito melhor na hora de negociar o preço, se nao for permitido este tipo de post aqui alguem me avise que eu retiro ele. se tem outro local por favor movam ele, mais informações mande msg no privado responderei assim que possível.
         
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo