LUADOC - Farming Simulator 19

WorkAreaTypeManager

Description
This class handles all workArea types
Parent
AbstractManager
Functions

addWorkAreaType

Description
Definition
addWorkAreaType()
Code
35function WorkAreaTypeManager:addWorkAreaType(name, attractWildlife)
36 if name == nil then
37 g_logManager:error("WorkArea name missing!")
38 return
39 end
40 if self.workAreaTypeNameToInt[name] ~= nil then
41 g_logManager:error("WorkArea name '%s' is already in use!", name)
42 return
43 end
44
45 name = name:upper()
46
47 local entry = {}
48 entry.name = name
49 entry.index = #self.workAreaTypes + 1
50 entry.attractWildlife = Utils.getNoNil(attractWildlife, false)
51
52 self.workAreaTypeNameToInt[name] = entry.index
53 self.workAreaTypeNameToDesc[name] = entry
54 table.insert(self.workAreaTypes, entry)
55
56 print(" Register workAreaType '" .. name .. "'")
57end

getConfigurationDescByName

Description
Definition
getConfigurationDescByName()
Code
81function WorkAreaTypeManager:getConfigurationDescByName(name)
82 if name ~= nil then
83 return self.workAreaTypeNameToDesc[name:upper()]
84 end
85 return nil
86end

getWorkAreaTypeByIndex

Description
Definition
getWorkAreaTypeByIndex()
Code
90function WorkAreaTypeManager:getWorkAreaTypeByIndex(index)
91 return self.workAreaTypes[index]
92end

getWorkAreaTypeIndexByName

Description
Definition
getWorkAreaTypeIndexByName()
Code
72function WorkAreaTypeManager:getWorkAreaTypeIndexByName(name)
73 if name ~= nil then
74 return self.workAreaTypeNameToInt[name:upper()]
75 end
76 return nil
77end

getWorkAreaTypeNameByIndex

Description
Definition
getWorkAreaTypeNameByIndex()
Code
61function WorkAreaTypeManager:getWorkAreaTypeNameByIndex(index)
62 local workAreaType = self.workAreaTypes[index]
63 if workAreaType then
64 return workAreaType.name
65 end
66
67 return nil
68end

initDataStructures

Description
Initialize data structures
Definition
initDataStructures()
Code
26function WorkAreaTypeManager:initDataStructures()
27 self.workAreaTypes = {}
28 self.workAreaTypeNameToInt = {}
29 self.workAreaTypeNameToDesc = {}
30 WorkAreaType = self.workAreaTypeNameToInt
31end

new

Description
Creating manager
Definition
new()
Return Values
tableinstanceinstance of object
Code
18function WorkAreaTypeManager:new(customMt)
19 local self = AbstractManager:new(customMt or WorkAreaTypeManager_mt)
20
21 return self
22end