LUADOC - Farming Simulator 22

InsideBuildingTrigger

Description
Class for InsideBuildingTriggers
Functions

delete

Description
Delete InsideBuildingTrigger
Definition
delete()
Code
56function InsideBuildingTrigger:delete()
57 removeTrigger(self.triggerId)
58end

insideBuildingTriggerCallback

Description
Trigger callback
Definition
insideBuildingTriggerCallback(integer triggerId, integer otherId, boolean onEnter, boolean onLeave, boolean onStay)
Arguments
integertriggerIdid of trigger
integerotherIdid of actor
booleanonEnteron enter
booleanonLeaveon leave
booleanonStayon stay
Code
67function InsideBuildingTrigger:insideBuildingTriggerCallback(triggerId, otherActorId, onEnter, onLeave, onStay, otherShapeId)
68 -- log(g_currentMission.player.rootNode, triggerId, otherActorId, onEnter, onLeave, onStay, otherShapeId)
69 if g_currentMission.player ~= nil and g_currentMission.player.rootNode == otherActorId then
70 if self.isEnabled then
71 if onEnter then
72 g_currentMission:setIsInsideBuilding(true)
73 elseif onLeave then
74 g_currentMission:setIsInsideBuilding(false)
75 end
76 end
77 end
78end

load

Description
Load InsideBuildingTrigger
Definition
load(integer nodeId)
Arguments
integernodeIdid of node
Return Values
booleansuccesssuccess
Code
40function InsideBuildingTrigger:load(nodeId)
41 self.nodeId = nodeId
42
43 self.triggerId = I3DUtil.indexToObject(nodeId, getUserAttribute(nodeId, "triggerIndex"))
44 if self.triggerId == nil then
45 self.triggerId = nodeId
46 end
47 addTrigger(self.triggerId, "insideBuildingTriggerCallback", self)
48
49 self.isEnabled = true
50
51 return true
52end

new

Description
Creating InsideBuildingTrigger object
Definition
new(table customMt)
Arguments
tablecustomMtcustom metatable (optional)
Return Values
tableinstanceinstance of basket trigger object
Code
26function InsideBuildingTrigger.new(customMt)
27 local self = {}
28 setmetatable(self, customMt or InsideBuildingTrigger_mt)
29
30 self.triggerId = 0
31 self.nodeId = 0
32
33 return self
34end

onCreate

Description
On create InsideBuildingTrigger
Definition
onCreate(integer id)
Arguments
integeridid of trigger node
Code
13function InsideBuildingTrigger.onCreate(_, id)
14 local trigger = InsideBuildingTrigger.new()
15 if trigger:load(id) then
16 g_currentMission:addNonUpdateable(trigger)
17 else
18 trigger:delete()
19 end
20end