LUADOC - Farming Simulator 22

FarmlandStatistic

Functions

getValue

Description
Definition
getValue()
Code
78function FarmlandStatistic:getValue(total, name)
79 local counter = self.periodCounter
80 if total then
81 counter = self.totalCounter
82 end
83
84 if counter[name] ~= nil then
85 return counter[name]
86 end
87
88 return 0
89end

loadFromItemsXML

Description
Definition
loadFromItemsXML()
Code
30function FarmlandStatistic:loadFromItemsXML(xmlFile, key)
31 if xmlFile:getInt(key .. "#farmlandId") == self.farmlandId then
32 self.periodCounter:loadFromItemsXML(xmlFile, key .. ".periodCounter")
33 self.totalCounter:loadFromItemsXML(xmlFile, key .. ".totalCounter")
34 else
35 Logging.warning("Failed to load FarmlandStatistic from items xml (%s)", key)
36 end
37end

new

Description
Definition
new()
Code
16function FarmlandStatistic.new(farmlandId, customMt)
17 local self = setmetatable({}, customMt or FarmlandStatistic_mt)
18
19 self.farmlandId = farmlandId
20 self.hasChanged = false
21
22 self.periodCounter = FarmlandStatisticCounter.new()
23 self.totalCounter = FarmlandStatisticCounter.new()
24
25 return self
26end

onReadStream

Description
Called on client side on join
Definition
onReadStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
51function FarmlandStatistic:onReadStream(streamId, connection)
52 self.periodCounter:onReadStream(streamId, connection)
53 self.totalCounter:onReadStream(streamId, connection)
54end

onWriteStream

Description
Called on server side on join
Definition
onWriteStream(integer streamId, integer connection)
Arguments
integerstreamIdstreamId
integerconnectionconnection
Code
61function FarmlandStatistic:onWriteStream(streamId, connection)
62 self.periodCounter:onWriteStream(streamId, connection)
63 self.totalCounter:onWriteStream(streamId, connection)
64end

reset

Description
Definition
reset()
Code
68function FarmlandStatistic:reset(clearTotal)
69 self.periodCounter:reset()
70
71 if clearTotal then
72 self.totalCounter:reset()
73 end
74end

saveToXMLFile

Description
Definition
saveToXMLFile()
Code
41function FarmlandStatistic:saveToXMLFile(xmlFile, key, usedModNames)
42 xmlFile:setInt(key .. "#farmlandId", self.farmlandId)
43 self.periodCounter:saveToXMLFile(xmlFile, key .. ".periodCounter", usedModNames)
44 self.totalCounter:saveToXMLFile(xmlFile, key .. ".totalCounter", usedModNames)
45end

updateStatistic

Description
Definition
updateStatistic()
Code
93function FarmlandStatistic:updateStatistic(name, value)
94 if self.periodCounter[name] ~= nil then
95 self.periodCounter[name] = self.periodCounter[name] + value
96 end
97
98 if self.totalCounter[name] ~= nil then
99 self.totalCounter[name] = self.totalCounter[name] + value
100 end
101
102 self.hasChanged = true
103end