Script v1.7.1.0
- AI
- Animals
- Contracts
- Debug
- Economy
- Effects
- Events
- Farms
- GUI
- AnimalScreen
- AnimationElement
- BitmapElement
- BoxLayoutElement
- BreadcrumbsElement
- ButtonElement
- ButtonOverlay
- ChatWindow
- CheckedOptionElement
- ClearElement
- ContextActionDisplay
- DialogElement
- FieldInfoDisplay
- FillLevelsDisplay
- FlowLayoutElement
- FocusManager
- FrameElement
- FrameReferenceElement
- GameInfoDisplay
- GamePausedDisplay
- Gui
- GuiDataSource
- GuiElement
- GuiMixin
- GuiOverlay
- GuiProfile
- GuiSoundPlayer
- GuiTopDownCamera
- GuiUtils
- HUDDisplayElement
- HUDElement
- HUDFrameElement
- HUDPopupMessage
- HUDTextDisplay
- IndexChangeSubjectMixin
- IndexStateElement
- InGameIcon
- IngameMap
- IngameMapElement
- InputGlyphElement
- InputHelpDisplay
- ListElement
- ListItemElement
- MapHotspot
- MapOverlayGenerator
- MixerWagonHUDExtension
- MultiTextOptionElement
- MultiValueTween
- Overlay
- PagingElement
- PlaySampleMixin
- RenderElement
- RoundStatusBar
- ScreenElement
- SettingsModel
- SideNotification
- SliderElement
- SpeakerDisplay
- SpeedMeterDisplay
- StableListElement
- StatusBar
- TabbedMenu
- TabbedMenuFrameElement
- TabbedMenuWithDetails
- TableElement
- TableHeaderElement
- TextElement
- TextInputElement
- TimerElement
- ToggleButtonElement
- TopNotification
- Tween
- TweenSequence
- VehicleHUDExtension
- VehicleSchemaDisplay
- VideoElement
- Handtools
- I3d
- Materials
- Misc
- Objects
- Placeables
- Player
- Shop
- Sounds
- Specializations
- Triggers
- Utils
- Vehicles
- Weather
Engine v1.7.1.0
- AI
- Animation
- Camera
- Entity
- Fillplanes
- General
- I3D
- Input
- Lighting
- Math
- Network
- Node
- Overlays
- Particle System
- Physics
- Rendering
- Scenegraph
- Shape
- Sound
- Spline
- String
- Terrain Detail
- Text Rendering
- Tire Track
- XML
- general
Foundation Reference
AnimalScreen
DescriptionAnimal Buying Screen.Parent
ScreenElementFunctions
new
DescriptionConstructorDefinition
new(table target, table metatable)Arguments
table | target | |
table | metatable |
table | self | instance |
53 | function 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 |
82 | end |
onClickBack
DescriptionCallback on click backDefinition
onClickBack()Code
279 | function AnimalScreen:onClickBack() |
280 | AnimalScreen:superClass().onClickBack(self) |
281 | self:changeScreen(nil) |
282 | end |
onClickOk
DescriptionCallback on click cancelDefinition
onClickOk()Code
286 | function 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() |
297 | end |
onClose
DescriptionCallback on closeDefinition
onClose(table element)Arguments
table | element |
116 | function 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) |
126 | end |
onOpen
DescriptionCallback on openDefinition
onOpen()Code
86 | function 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) |
111 | end |