LUADOC - Farming Simulator 19

SpecializationManager

Description
This class handles all specializations
Parent
AbstractManager
Functions

getSpecializationByName

Description
Definition
getSpecializationByName()
Code
105function SpecializationManager:getSpecializationByName(name)
106 if name ~= nil then
107 return self.specializations[name]
108 end
109
110 return nil
111end

getSpecializationObjectByName

Description
Definition
getSpecializationObjectByName()
Code
115function SpecializationManager:getSpecializationObjectByName(name)
116 local entry = self.specializations[name]
117
118 if entry == nil then
119 return nil
120 end
121
122 return ClassUtil.getClassObject(entry.className)
123end

getSpecializations

Description
Definition
getSpecializations()
Code
127function SpecializationManager:getSpecializations()
128 return self.specializations
129end

initDataStructures

Description
Initialize data structures
Definition
initDataStructures()
Code
24function SpecializationManager:initDataStructures()
25 self.specializations = {}
26end

initSpecializations

Description
Definition
initSpecializations()
Code
94function SpecializationManager:initSpecializations()
95 for name, _ in pairs(self.specializations) do
96 local specialization = self:getSpecializationObjectByName(name)
97 if specialization ~= nil and specialization.initSpecialization ~= nil then
98 specialization.initSpecialization()
99 end
100 end
101end

loadMapData

Description
Load data on map load
Definition
loadMapData()
Return Values
booleantrueif loading was successful else false
Code
31function SpecializationManager:loadMapData()
32 SpecializationManager:superClass().loadMapData(self)
33
34 local xmlFile = loadXMLFile("SpecializationsXML", "dataS/specializations.xml")
35 local i=0
36 while true do
37 local baseName = string.format("specializations.specialization(%d)", i)
38
39 local typeName = getXMLString(xmlFile, baseName.. "#name")
40 if typeName == nil then
41 break
42 end
43 local className = getXMLString(xmlFile, baseName.. "#className")
44 local filename = getXMLString(xmlFile, baseName.. "#filename")
45
46 g_deferredLoadingManager:addSubtask(function()
47 self:addSpecialization(typeName, className, filename, "")
48 end)
49 i = i+1
50 end
51 delete(xmlFile)
52
53 g_deferredLoadingManager:addSubtask(function()
54 print(" Loaded specializations")
55 end)
56
57 return true
58end

new

Description
Creating manager
Definition
new()
Return Values
tableinstanceinstance of object
Code
16function SpecializationManager:new(customMt)
17 local self = AbstractManager:new(customMt or SpecializationManager_mt)
18
19 return self
20end