Jump to content

Sistema de Log Simples.

Rate this topic


Recommended Posts

Como Modificar e criar novos logs?
Use uma função que salva o valor dos arquivos, assim você pode criar um sistema de log. Simples.
A maneira como você usa é tão grande quanto a sua imaginação.

 

Lua(LIB)

Spoiler
Spoiler


 function log ( src , value ) local s = io.open ( src , "a+" ) s : write ( os.date ( "%H:%M:%S, %d.%m.%Y" , os.time ( ) ) .. " - " .. value .. " \n " ) s : close ( ) end 
 
 function log ( src , value ) local s = io.open ( src , "a+" ) s : write ( os.date ( "%H:%M:%S, %d.%m.%Y" , os.time ( ) ) .. " - " .. value .. " \n " ) s : close ( ) end 
 
 function log ( src , value ) local s = io.open ( src , "a+" ) s : write ( os.date ( "%H:%M:%S, %d.%m.%Y" , os.time ( ) ) .. " - " .. value .. " \n " ) s : close ( ) end 
 
 function log ( src , value ) local s = io.open ( src , "a+" ) s : write ( os.date ( "%H:%M:%S, %d.%m.%Y" , os.time ( ) ) .. " - " .. value .. " \n " ) s : close ( ) end 
 
 function log ( src , value ) local s = io.open ( src , "a+" ) s : write ( os.date ( "%H:%M:%S, %d.%m.%Y" , os.time ( ) ) .. " - " .. value .. " \n " ) s : close ( ) end 

 

 

Chamada de retorno para o log Lua 

Spoiler

 log ( "dados / logs / logins.log" , "Player" .. getPlayerName ( cid ) .. "logado no jogo." ) 

 

Link to comment
https://xtibia.com/forum/topic/249286-sistema-de-log-simples/
Share on other sites

2 horas atrás, XZero disse:

Obrigado! Isso vai ser muito util!

@underewarr Mas caso eu queira modificar, pagar ou verificar algo salvo no log o que posso usar ?

Todos os 

get
5 horas atrás, XZero disse:

kkk não entendi, poderia ser mais especifico ?

@XZero

log ( "dados / logs / logins.log" , "Player" .. getPlayerName ( cid ) .. "logado no jogo." ) 

Vamos adicionar mais logs alem do nome do jogador

log ( "dados / logs / logins.log" , "Level" .. getPlayerLevel ( cid ) .. "Possui o level." ) 

na mesma linha 

 log ( "dados / logs / logins.log" , "Player" .. getPlayerName ( cid ) .. "logado no jogo." .. getPlayerLevel ( cid ) .. "Possui o level." ) 
14 minutos atrás, underewarr disse:

@XZero


log ( "dados / logs / logins.log" , "Player" .. getPlayerName ( cid ) .. "logado no jogo." ) 

Vamos adicionar mais logs alem do nome do jogador


log ( "dados / logs / logins.log" , "Level" .. getPlayerLevel ( cid ) .. "Possui o level." ) 

na mesma linha 


 log ( "dados / logs / logins.log" , "Player" .. getPlayerName ( cid ) .. "logado no jogo." .. getPlayerLevel ( cid ) .. "Possui o level." ) 

Claro que eu sei disso, eu criei uma função:

Spoiler

function doSendLog(cid, msg)
doWriteLogFile("data/zlogs/players/"..getCreatureName(cid)..".txt", msg)
end

Que salva logs dos players separadamente, eu só queria saber como consigo abrir esse log e editar, apagar, ou modificar no script, porque adicionar eu já sei!

2 minutos atrás, XZero disse:

Claro que eu sei disso, eu criei uma função:

  Ocultar conteúdo

function doSendLog(cid, msg)
doWriteLogFile("data/zlogs/players/"..getCreatureName(cid)..".txt", msg)
end

Que salva logs dos players separadamente, eu só queria saber como consigo abrir esse log e editar, apagar, ou modificar no script, porque adicionar eu já sei!

Você pdoe incluir outra função para ler dentro do jogo o log file, não entendi bem você quer administrar o log deletar ver etc ingame?
 

2 horas atrás, underewarr disse:

Você pdoe incluir outra função para ler dentro do jogo o log file, não entendi bem você quer administrar o log deletar ver etc ingame?
 

As vezes quando o player reloga no meu ot perde algum item, não é sempre, mas acontece, o caso é,  eu consigo salvar os items de cada slot no log ao deslogar, porém quero que verifique ao logar,  caso falte alguma item, será devolvido automaticamente, ou seja eu quero saber como o script pode ler o que tem escrito no log e depois apagar para salvar um novo.

Você pode sim verificar slots via movements.

mas acredito que esse sistema que voce quer fazer nao necessita de log mas daria para adicionar o log pela camada de evento onlogin.

 

aqui você pode verificar os slots.

local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: " 
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
   
doPlayerSendCancel(.. getPlayerLevel ( cid ) .. "Possui o level." ))
end
return TRUE
end

esse código deve retornar todos os equipamentos no log mas ele não vai salvar nem retornar o item quando o player relogar, me diga voce entende o suficiente para conseguir criar este código?

você só tem que configurar ao log de forma adequada.

11 minutos atrás, underewarr disse:

Você pode sim verificar slots via movements.

mas acredito que esse sistema que voce quer fazer nao necessita de log mas daria para adicionar o log pela camada de evento onlogin.

 

aqui você pode verificar os slots.


local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: " 
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
   
doPlayerSendCancel(.. getPlayerLevel ( cid ) .. "Possui o level." ))
end
return TRUE
end

esse código deve retornar todos os equipamentos no log mas ele não vai salvar nem retornar o item quando o player relogar, me diga voce entende o suficiente para conseguir criar este código?

você só tem que configurar ao log de forma adequada.

Eu falo A e você entende Z, parece que eu estou conversando com um gringo que está usando o google tradutor, decha para la cara, vlw a intenção!!!

×
×
  • Create New...