--- sidebar_position: 1 --- # Respin Controller ## Index ### Properties * [timeoutStartRespin](#timeoutstartrespin) `Object | null` Timeout handler for initiating respin. * [isPaused](#ispaused) `Boolean` Indicates whether the controller is paused. * [waiter](#waiter) `Object | null` Handles timing-related waiting. ### Methods * [_start](#_start) Initializes respin-related values from input data. * [_complete](#_complete) Cleans up waiting logic and resets the model. * [_registerEvent](#_registerevent) Registers all necessary events for the respin controller. * [onRespinReady](#onrespinready) Handles respin-ready state. Triggers respin after a delay. * [onStartFeatureGameClicked](#onstartfeaturegameclicked) Handles logic when the feature game start is clicked. * [onPresentFeatureTriggerCompleted](#onpresentfeaturetriggercompleted) Handles logic after a present feature trigger finishes. * [onSpinEnd](#onspinend) Processes logic at the end of a spin, including retrigger check. * [respinEnd](#respinend) Triggers final respin result notification. * [onRespinDataReceived](#onrespindatareceived) Updates model state when server sends respin data. * [onPickupItemReceived](#onpickupitemreceived) Processes pickup-related bonus or extra respin data. * [respin](#respin) Core logic to trigger or end respin based on model/game state. ## Details ### Properties #### timeoutStartRespin > Timeout handler for initiating respin. | meta | description | | :--- | :---------- | | Type | [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) \| null | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L15](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L15) | #### isPaused > Indicates whether the controller is paused. | meta | description | | :--- | :---------- | | Type | [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean) | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L16](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L16) | #### waiter > Handles timing-related waiting. | meta | description | | :--- | :---------- | | Type | [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) \| null | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L17](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L17) | ### Methods #### _start Initializes respin-related values from input data. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L22](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L22) | #### _complete Cleans up waiting logic and resets the model. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L29](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L29) | #### _registerEvent Registers all necessary events for the respin controller. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L39](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L39) | #### onRespinReady Handles respin-ready state. Triggers respin after a delay. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L50](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L50) | #### onStartFeatureGameClicked Handles logic when the feature game start is clicked. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L59](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L59) | #### onPresentFeatureTriggerCompleted Handles logic after a present feature trigger finishes. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L67](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L67) |
**Parameters** * `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) * `isRetrigger` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
#### onSpinEnd Processes logic at the end of a spin, including retrigger check. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L77](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L77) | #### respinEnd Triggers final respin result notification. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L92](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L92) | #### onRespinDataReceived Updates model state when server sends respin data. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L104](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L104) |**Parameters** * `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) * `respinLeft` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) * `totalRespin` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) * `point` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) * `retriggerData` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
#### onPickupItemReceived Processes pickup-related bonus or extra respin data. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L115](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L115) |**Parameters** * `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) * `respinLeft` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) * `totalRespin` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) * `respinBonus` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
#### respin Core logic to trigger or end respin based on model/game state. | meta | description | | :--- | :---------- | | Defined in | [p4f-slotty-core/src/controller/respin-controller.js#L129](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/respin-controller.js#L129) |