OTHispano
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Ir abajo
Falcon
Falcon
Administrador
Mensajes Mensajes : 350
http://www.othispano.net

[CreatureEvent] Trade LOGS. Empty [CreatureEvent] Trade LOGS.

Sáb Mayo 12, 2012 11:44 am
Reputación del mensaje :100% (2 votos)
Hola usuarios de OTSuporter,
Les traigo un pequeño sistema, muy útil:),

Este sistema consiste en, registrar todos los trades que los jugadores hagan, es decir, con esto ustedes pueden ver, que tradearon, a que persona, etc.
Este sistema es muy útil, pues supongamos que me han hackeado, yo le digo al god, y el revisara a que cuenta y character pasaron mis items,
No se si me entiendan, pero este script registra TODOS los trades del servidor.
creaturescripts/scripts/checktrades.lua
Código:
local servers = {[0] = 'server1', [1] = 'server2', [2] = 'server3'}
 
local function getType(item)
    return (item.type > 0) and item.type or 1
end
 
Log = {}
Log.__index = Log
 
function Log.create()
    local t = {}
    setmetatable(t, Log)
    t.file = servers[getConfigValue("worldId")] .. "/" .. os.date("%B-%d-%Y", os.time()) .. ".txt"
    t.str, t.cstr, t.con = '', '', 0
    return t
end
 
function Log:write()
    local f = io.open("data/logs/trades/" .. self.file, "a+")
    if not f then return false end
    f:write(self.str)
    f:close()
end
 
function Log:containerString()
    self.cstr = ''
    for i = 1, self.con do
        self.cstr = self.cstr .. '-> '
    end
end
 
function Log:addContainer()
    self.con = self.con + 1
    self:containerString()
end
 
function Log:closeContainer()
    self.con = self.con - 1
    self:containerString()
end
 
function Log:setLine(txt)
    self.str = self.str .. self.cstr .. txt .. '\n'
end
 
function Log:kill()
    self.file, self.cstr, self.str, self.con = "", "", "", -1
end
 
function onTradeAccept(cid, target, item, targetItem)
    local this = Log.create()
    local name, tname = getCreatureName(cid), getCreatureName(target)
 
    this:setLine("Trade between " .. name .. " and " .. tname .. " || [" .. os.date("%d/%m/%Y %H:%M:%S") .. "]")
 
    local function logging(cid, item)
        this:setLine(getCreatureName(cid) .. " traded:")
        local function scanContainer(cid, uid)
            for k = (getContainerSize(uid) - 1), 0, -1 do
                local tmp = getContainerItem(uid, k)
                this:setLine(getItemNameById(tmp.itemid) .. " x " .. getType(tmp) .. " || itemid: " .. tmp.itemid)
                if isContainer(tmp.uid) then
                    this:addContainer()
                    scanContainer(cid, tmp.uid)
                    this:closeContainer()
                end
            end
        end
 
        this:setLine(getItemNameById(item.itemid) .. " x " .. getType(item) .. " || itemid: " .. item.itemid)
        if isContainer(item.uid) then
            this:addContainer()
            scanContainer(cid, item.uid)
            this:closeContainer()
        end
    end
 
    logging(cid, item)
    logging(target, targetItem)
    this:setLine("END OF THIS TRADE --------------\n")
    this:write()
    this:kill()
    return true
end
creaturescripts.xml
Código:
<event type="trade" name="tradeCheck" event="script" value="checktrades.lua"/>

Login.lua
Código:
registerCreatureEvent(cid, "tradeCheck")
ﻝhonLedit
ﻝhonLedit
Moderador
Mensajes Mensajes : 312
http://www.otsuporter.com/

[CreatureEvent] Trade LOGS. Empty Re: [CreatureEvent] Trade LOGS.

Sáb Mayo 12, 2012 1:19 pm
:O no engo palabras para descrivirlo :O affraid
Belloz
Belloz
Mapper
Mensajes Mensajes : 89
http://Showtera.malware-site.www //|\\

[CreatureEvent] Trade LOGS. Empty Re: [CreatureEvent] Trade LOGS.

Lun Mayo 28, 2012 11:23 am
Esta Muy Bueno Falcon te Dejo Rep+
avatar
GOD Nekzo
Miembro
Mensajes Mensajes : 7

[CreatureEvent] Trade LOGS. Empty Re: [CreatureEvent] Trade LOGS.

Lun Mayo 28, 2012 12:21 pm
si lo pongo daria lag al server ?

donde chekaria todos los trade?

Very Happy
Falcon
Falcon
Administrador
Mensajes Mensajes : 350
http://www.othispano.net

[CreatureEvent] Trade LOGS. Empty Re: [CreatureEvent] Trade LOGS.

Lun Mayo 28, 2012 12:26 pm
No, no daría, es un peque;o archivo que crearía en tu carpeta, para checar trades.
Contenido patrocinado

[CreatureEvent] Trade LOGS. Empty Re: [CreatureEvent] Trade LOGS.

Volver arriba
Permisos de este foro:
No puedes responder a temas en este foro.