LUADOC - Farming Simulator 19

Script v1.7.1.0

Engine v1.7.1.0

Foundation Reference

AnimalScreen

Description
Animal Buying Screen.
Parent
ScreenElement
Functions

new

Description
Constructor
Definition
new(table target, table metatable)
Arguments
tabletarget
tablemetatable
Return Values
tableselfinstance
Code
53function AnimalScreen:new(target, custom_mt, animalController, l10n, messageCenter)
54 local self = ScreenElement:new(target, custom_mt or AnimalScreen_mt)
55
56 self:registerControls(AnimalScreen.CONTROLS)
57
58 self.l10n = l10n
59 self.messageCenter = messageCenter
60 self.animalController = animalController
61
62 self.animalController:setSourceUpdateCallback(self.onSourceUpdate, self)
63 self.animalController:setTargetUpdateCallback(self.onTargetUpdate, self)
64 self.animalController:setNoValidHusbandryCallback(self.onNoValidHusbandry, self)
65 self.animalController:setHusbandryIsFullCallback(self.onHusbandryIsFull, self)
66 self.animalController:setTrailerFullCallback(self.onTrailerIsFull, self)
67 self.animalController:setInvalidAnimalTypeCallback(self.onInvalidAnimalType, self)
68 self.animalController:setAnimalNotSupportedByTrailerCallback(self.onAnimalNotSupportedByTrailer, self)
69 self.animalController:setNotEnoughMoneyCallback(self.onNotEnoughMoney, self)
70 self.animalController:setCanNotAddToTrailerCallback(self.onCanNotAddToTrailer, self)
71 self.animalController:setAnimalInUseCallback(self.onAnimalInUse, self)
72
73 self.isSourceSelected = true
74
75 self.isOpen = false
76 self.lastBalance = 0
77
78 self.sourceDataSource = GuiDataSource:new()
79 self.targetDataSource = GuiDataSource:new()
80
81 return self
82end

onClickBack

Description
Callback on click back
Definition
onClickBack()
Code
279function AnimalScreen:onClickBack()
280 AnimalScreen:superClass().onClickBack(self)
281 self:changeScreen(nil)
282end

onClickOk

Description
Callback on click cancel
Definition
onClickOk()
Code
286function AnimalScreen:onClickOk()
287 AnimalScreen:superClass().onClickOk(self)
288
289 if self.isSourceSelected then
290 self.animalController:moveToTarget(self.listSource.selectedIndex)
291 else
292 self.animalController:moveToSource(self.listTarget.selectedIndex)
293 end
294
295 self.sourceDataSource:notifyChange()
296 self.targetDataSource:notifyChange()
297end

onClose

Description
Callback on close
Definition
onClose(table element)
Arguments
tableelement
Code
116function AnimalScreen:onClose(element)
117 AnimalScreen:superClass().onClose(self)
118 self.animalController:close()
119 self.isOpen = false
120
121 g_currentMission:resetGameState()
122
123 self.messageCenter:unsubscribeAll(self)
124
125 g_depthOfFieldManager:setBlurState(false)
126end

onOpen

Description
Callback on open
Definition
onOpen()
Code
86function AnimalScreen:onOpen()
87 AnimalScreen:superClass().onOpen(self)
88
89 self.isOpen = true
90 self.isUpdating = false
91
92 g_gameStateManager:setGameState(GameState.MENU_ANIMAL_SHOP)
93
94 g_depthOfFieldManager:setBlurState(true)
95
96 -- Hide contents until something is available
97 self:updateInfoBox(false)
98
99 self:updateScreen()
100
101 -- initialize selection and focus
102 if self.listSource:getItemCount() > 0 then
103 self.listSource:setSelectedIndex(1)
104 FocusManager:setFocus(self.listSource)
105 elseif self.listTarget:getItemCount() > 0 then
106 self.listTarget:setSelectedIndex(1)
107 FocusManager:setFocus(self.listTarget)
108 end
109
110 self.messageCenter:subscribe(MessageType.HUSBANDRY_ANIMALS_CHANGED, self.onAnimalsChanged, self)
111end