Script v1.7.1.0
- AI
- Animals
- Contracts
- Debug
- Economy
- Effects
- Events
- Farms
- GUI
- 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
- JointConstructor:setActors
- JointConstructor:setJointTransforms
- addDifferential
- addForce
- addImpulse
- addTorque
- addTorqueImpulse
- addVehicleLink
- computeWheelShapeTireForces
- createCCT
- createWheelShape
- getAngularDamping
- getAngularVelocity
- getCCTCollisionFlags
- getCenterOfMass
- getCollisionMask
- getDensity
- getLinearDamping
- getLinearVelocity
- getMass
- getMotorRotationSpeed
- getRigidBodyType
- getVelocityAtLocalPos
- getVelocityAtWorldPos
- getVolume
- getWheelShapeAxleSpeed
- getWheelShapeContactForce
- getWheelShapeContactNormal
- getWheelShapeContactObject
- getWheelShapeContactPoint
- getWheelShapePosition
- getWheelShapeSlip
- moveCCT
- overlapBox
- overlapSphere
- raycastAll
- raycastClosest
- removeCCT
- setAngularDamping
- setAngularVelocity
- setCenterOfMass
- setCollisionMask
- setFrictionVelocity
- setJointDrive
- setLinearDamping
- setLinearVelocity
- setMass
- setRigidBodyType
- setSolverIterationCount
- setWheelShapeForcePoint
- setWheelShapeProps
- setWheelShapeTireFriction
- simulatePhysics
- simulatePhysicsTimeScale
- updateDifferential
- 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 |