Ir para conteúdo
  • Cadastre-se

(Resolvido)Players comando !save


Ir para solução Resolvido por ViitinG,

Posts Recomendados

Acho que isso poderia ser usado pra causar um certo lag, no ot. Pois requer uma alteração na data base, e se for feita por muitos ao mesmo tempo e repetidas vezes segudias, com ctz vai bugar.

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

vá em data\talkactions\scripts e copiei um arquivo.lua e renomeio para save.lua

cole isso dentro::

local savingEvent = 0
 
function onSay(cid, words, param, channel)
 
doSaveServer()
 
return true
end
 
function save(delay)
doSaveServer()
if(delay > 0) then
savingEvent = addEvent(save, delay, delay)
end
end

volte em data\talkactions e abra o talkactions.xml e adicione essa tag::

<talkaction log="yes" words="/save" access="4" event="script" value="save.lua"/>
Editado por AnnaFeeh (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

@AnnaFeeh Esse script num seria o usado pela staff pra salvar o server todo n??

O amigo ai em cima qr um que os players salvem soh a si mesmos... ^^

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

Vamos tentar desta forma, vá em data/talkactions/scripts, crie um arquivo chamado saveplayer.lua e adicione dentro:

function onSay(cid)
local time = 60 -- Tempo de interval (exhausted) para utilizar o comando novamente (em segundos).
 
--// Não faça alterações sem conhecimento.
local player = Player(cid)
local position = player:getPosition()
if (player:getStorageValue(201405181217) <= os.time()) then
doPlayerSave(cid, true)
Position(position):sendMagicEffect(1)
player:setStorageValue(201405181217, (os.time() + time))
player:sendTextMessge(MESSAGE_STATUS_CONSOLE_RED, "You has been saved your character.")
else
Position(position):sendMagicEffect(2)
player:sendCancelMessage("You are exhausted.")
end
local player = nil
local time = nil
return true
end

Em talkactions.xml adicione a tag:

 

<talkaction words="!playersave;!saveplayer;!save" event="script"  value="saveplayer.lua"/>

 

Boa sorte :)

Editado por Roksas (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Tenta esse para salvar o server todo com o ADM :

"data/talkactions/scripts/save.lua" :

local savingEvent = 0

function onSay(cid, words, param, channel)
	local tmp = tonumber(param)
	if(tmp ~= nil) then
		stopEvent(savingEvent)
		save(tmp * 60 * 1000)
	elseif(param:trim() == '') then
		doSaveServer(13)
	else
		local tid = getPlayerByNameWildcard(param)
		if(not tid or (isPlayerGhost(tid) and getPlayerGhostAccess(tid) > getPlayerGhostAccess(cid))) then
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " not found.")
		else
			doPlayerSave(tid)
		end
	end

	return true
end

function save(delay)
	doSaveServer(13)
	if(delay > 0) then
		savingEvent = addEvent(save, delay, delay)
	end
end

"data/talkactions/talkactions.xml" :

<talkaction log="yes" words="/save" access="3" event="script" value="save.lua"/>
Link para o post
Compartilhar em outros sites
  • Solução

Tente esse aqui então :

"data/talkactions/scripts/save.lua" :

local savingEvent = 0

function onSay(cid, words, param)
    if getPlayerAccess(cid) ~= 0 then
        if isNumber(param) == TRUE then
            stopEvent(savingEvent)
            save(tonumber(param) * 60 * 1000)
        else
            saveServer()
        end
    end
end

function save(delay)
    saveServer()
    if delay > 0 then
        savingEvent = addEvent(save, delay, delay)
    end
end

"data/talkactions/talkactions.xml" :

<talkaction words="/save" script="save.lua" />
Link para o post
Compartilhar em outros sites

 

Tente esse aqui então :

"data/talkactions/scripts/save.lua" :

local savingEvent = 0

function onSay(cid, words, param)
    if getPlayerAccess(cid) ~= 0 then
        if isNumber(param) == TRUE then
            stopEvent(savingEvent)
            save(tonumber(param) * 60 * 1000)
        else
            saveServer()
        end
    end
end

function save(delay)
    saveServer()
    if delay > 0 then
        savingEvent = addEvent(save, delay, delay)
    end
end

"data/talkactions/talkactions.xml" :

<talkaction words="/save" script="save.lua" />

 

@ViitinG Dessa forma, todos os players não poderão usar o comando de /save ñ??

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites
  • 2 years later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo