Skip to main content
Skip to main content

ToolTypeManager

ToolTypeManager

Description

This class handles all toolTypes

Parent

AbstractManager

Functions

addToolType

Description

Adds a new baleType

Definition

addToolType(string name, float litersPerSecond)

Arguments

stringnamebaleType index name
floatlitersPerSecondliter per second

Return Values

floatbaleTypebaleType object

Code

function ToolTypeManager:addToolType(name)
name = string.upper(name)
if not ClassUtil.getIsValidIndexName(name) then
printWarning( "Warning: '" .. tostring(name) .. "' is not a valid name for a toolType.Ignoring toolType!" )
return nil
end

if ToolType[name] = = nil then
table.insert( self.indexToName, name)
self.nameToInt[name] = # self.indexToName
end
return ToolType[name]
end

getNumberOfToolTypes

Description

Returns number of tool types

Definition

getNumberOfToolTypes()

Return Values

floatnumToolTypesnumber of tool types

Code

function ToolTypeManager:getNumberOfToolTypes()
return # self.indexToName
end

getToolTypeIndexByName

Description

Returns tool type index by given name

Definition

getToolTypeIndexByName(string toolTypeName)

Arguments

stringtoolTypeNametool type name

Return Values

stringtoolTypeIndextool type index

Code

function ToolTypeManager:getToolTypeIndexByName(name)
name = string.upper(name)
if self.nameToInt[name] ~ = nil then
return self.nameToInt[name]
end

return ToolType.UNDEFINED
end

getToolTypeNameByIndex

Description

Returns tool type name by given index

Definition

getToolTypeNameByIndex(integer toolTypeIndex)

Arguments

integertoolTypeIndextool type index

Return Values

integertoolTypeNametool type name

Code

function ToolTypeManager:getToolTypeNameByIndex(index)
if self.indexToName[index] ~ = nil then
return self.indexToName[index]
end

return "UNDEFINED"
end

initDataStructures

Description

Initialize data structures

Definition

initDataStructures()

Code

function ToolTypeManager:initDataStructures()
self.indexToName = { }
self.nameToInt = { }

ToolType = self.nameToInt
end

loadMapData

Description

Loads initial manager

Definition

loadMapData()

Return Values

integertrueif loading was successful else false

Code

function ToolTypeManager:loadMapData()
ToolTypeManager:superClass().loadMapData( self )

self:addToolType( "undefined" )
self:addToolType( "dischargeable" )
self:addToolType( "pallet" )
self:addToolType( "trigger" )
self:addToolType( "bale" )

return true
end

new

Description

Creating manager

Definition

new()

Arguments

anycustomMt

Return Values

anyinstanceinstance of object

Code

function ToolTypeManager.new(customMt)
local self = AbstractManager.new(customMt or ToolTypeManager _mt)

return self
end