mirror of
https://github.com/ErikasKontenis/SabrehavenServer.git
synced 2025-10-14 06:34:55 +02:00
Resolve "Merge the best from 7.40 branch"
This commit is contained in:
101
SabrehavenOTClient/modules/game_market/offerstatistic.lua
Normal file
101
SabrehavenOTClient/modules/game_market/offerstatistic.lua
Normal file
@@ -0,0 +1,101 @@
|
||||
OfferStatistic = {}
|
||||
OfferStatistic.__index = OfferStatistic
|
||||
|
||||
SECONDS_PER_DAY = 86400
|
||||
|
||||
OfferStatistic.new = function(timestamp, t, transactions, totalPrice, highestPrice, lowestPrice)
|
||||
local stat = {
|
||||
time = 0,
|
||||
type = nil,
|
||||
transactions = 0,
|
||||
totalPrice = 0,
|
||||
highestPrice = 0,
|
||||
lowestPrice = 0
|
||||
}
|
||||
stat.time = math.floor(timestamp / SECONDS_PER_DAY) * SECONDS_PER_DAY
|
||||
|
||||
if t ~= MarketAction.Buy and t ~= MarketAction.Sell then
|
||||
g_logger.error('OfferStatistic.new - invalid type provided.')
|
||||
end
|
||||
stat.type = t
|
||||
|
||||
stat.transactions = transactions
|
||||
stat.totalPrice = totalPrice
|
||||
stat.highestPrice = highestPrice
|
||||
stat.lowestPrice = lowestPrice
|
||||
|
||||
setmetatable(stat, OfferStatistic)
|
||||
return stat
|
||||
end
|
||||
|
||||
function OfferStatistic:isNull()
|
||||
return self.time == 0 or not self.type
|
||||
end
|
||||
|
||||
-- Sets/Gets
|
||||
|
||||
function OfferStatistic:setTime(time)
|
||||
if not time or type(time) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setTime - invalid time provided.')
|
||||
end
|
||||
self.time = time
|
||||
end
|
||||
|
||||
function OfferStatistic:getTime()
|
||||
return self.time
|
||||
end
|
||||
|
||||
function OfferStatistic:setType(t)
|
||||
if not t or type(t) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setType - invalid type provided.')
|
||||
end
|
||||
self.type = t
|
||||
end
|
||||
|
||||
function OfferStatistic:getType()
|
||||
return self.type
|
||||
end
|
||||
|
||||
function OfferStatistic:setTransactions(transactions)
|
||||
if not transactions or type(transactions) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setTransactions - invalid transactions provided.')
|
||||
end
|
||||
self.transactions = transactions
|
||||
end
|
||||
|
||||
function OfferStatistic:getTransactions()
|
||||
return self.transactions
|
||||
end
|
||||
|
||||
function OfferStatistic:setTotalPrice(amount)
|
||||
if not totalPrice or type(totalPrice) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setTotalPrice - invalid total price provided.')
|
||||
end
|
||||
self.totalPrice = totalPrice
|
||||
end
|
||||
|
||||
function OfferStatistic:getTotalPrice()
|
||||
return self.totalPrice
|
||||
end
|
||||
|
||||
function OfferStatistic:setHighestPrice(highestPrice)
|
||||
if not highestPrice or type(highestPrice) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setHighestPrice - invalid highestPrice provided.')
|
||||
end
|
||||
self.highestPrice = highestPrice
|
||||
end
|
||||
|
||||
function OfferStatistic:getHighestPrice()
|
||||
return self.highestPrice
|
||||
end
|
||||
|
||||
function OfferStatistic:setLowestPrice(lowestPrice)
|
||||
if not lowestPrice or type(lowestPrice) ~= 'number' then
|
||||
g_logger.error('OfferStatistic.setLowestPrice - invalid lowestPrice provided.')
|
||||
end
|
||||
self.lowestPrice = lowestPrice
|
||||
end
|
||||
|
||||
function OfferStatistic:getLowestPrice()
|
||||
return self.lowestPrice
|
||||
end
|
Reference in New Issue
Block a user