• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Lua modific script

jackl90

Member
Joined
Jul 25, 2017
Messages
249
Reaction score
12
for forgotten server 1.2

i need some help, well i got this script here on otland
Code:
function Player:onTradeAccept(target, item, targetItem)
    file = io.open('data/logs/trade.log',"a")
    file:write(""..os.date("%c")..": "..self:getName().." traded:")
    if item:isContainer() then
        local pitems = searchContainer(item)
        for i = 1, #pitems do
            file:write(string.format(' %s (%s)(%s),',  pitems[i]:getName(), pitems[i]:getId(), pitems[i]:getCount() > 1 and pitems[i]:getCount()))
        end
    else
        file:write(string.format(' %s (%s)(%s),', item:getName(), item:getId(), item:getCount() > 1 and item:getCount()))
    end
    file:write(" with "..target:getName().." for:")
    if targetItem:isContainer() then
        local titems = searchContainer(targetItem)
        for i = 1, #titems do
            file:write(string.format(' %s (%s)(%s),', titems[i]:getName(), titems[i]:getId(), titems[i]:getCount() > 1 and titems[i]:getCount()))
        end
    else
        file:write(string.format(' %s (%s)(%s).', targetItem:getName(), targetItem:getId(), targetItem:getCount() > 1 and targetItem:getCount()))
    end
    file:write('\n-------------------------\n\n')
    file:close()
    return true
end

this script create a trade log, how modific this script to do a log only if people trade 3 specifics items id: 1125, 3021, 5031 ?
 
Code:
local logItems = {1111, 1111, 1111} --Item ids of items to log

function Player:onTradeAccept(target, item, targetItem)
    if not isInArray(logItems, item.itemid) and not isInArray(logItems, targetItem.itemid) then
        return true
    end

    file = io.open('data/logs/trade.log',"a")
    file:write(""..os.date("%c")..": "..self:getName().." traded:")
    if item:isContainer() then
        local pitems = searchContainer(item)
        for i = 1, #pitems do
            file:write(string.format(' %s (%s)(%s),',  pitems[i]:getName(), pitems[i]:getId(), pitems[i]:getCount() > 1 and pitems[i]:getCount()))
        end
    else
        file:write(string.format(' %s (%s)(%s),', item:getName(), item:getId(), item:getCount() > 1 and item:getCount()))
    end
    file:write(" with "..target:getName().." for:")
    if targetItem:isContainer() then
        local titems = searchContainer(targetItem)
        for i = 1, #titems do
            file:write(string.format(' %s (%s)(%s),', titems[i]:getName(), titems[i]:getId(), titems[i]:getCount() > 1 and titems[i]:getCount()))
        end
    else
        file:write(string.format(' %s (%s)(%s).', targetItem:getName(), targetItem:getId(), targetItem:getCount() > 1 and targetItem:getCount()))
    end
    file:write('\n-------------------------\n\n')
    file:close()
    return true
end
 
Back
Top