2025-07-14 09:37:02 +07:00

135 lines
5.9 KiB
Markdown

---
sidebar_position: 1
---
# Spin Controller
## Index
### Properties
* [savedBetPoint](#savedbetpoint) `Number` Current played bet.
* [savedTotalBetPoint](#savedtotalbetpoint) `Number` Current total played bet.
* [isPaused](#ispaused) `Boolean` Indicates if the game is currently paused, including when paused by lobby force.
* [waiter](#waiter) `object ` Waits until not paused.
### Methods
* [_start](#_start) Starts a spin round. Prepares spin data, handles game round confirmation, and waits until the game is not paused before sending a spin request.
* [_complete](#_complete) Completes the spin round and stops any waiting processes.
* [onBetDataChanged](#onbetdatachanged) Updates internal bet tracking based on input data.
* [onNextScrollDataReceived](#onnextscrolldatareceived) Updates the model with new scroll data received from the network.
* [onStopSpinClicked](#onstopspinclicked) Notifies listeners when the stop spin button is clicked.
>
## Details
### Properties
#### savedbetpoint
> <p style={{ color: 'gray', fontSize: '1.0em' }}> Current played bet.</p>
| meta | description |
| :--- | :---------- |
| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L14](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L14)|
#### savedTotalBetPoint
> <p style={{ color: 'gray', fontSize: '1.0em' }}> Current total played bet.</p>
| meta | description |
| :--- | :---------- |
| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L15](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L15)|
#### isPaused
> <p style={{ color: 'gray', fontSize: '1.0em' }}> Indicates if the game is currently paused, including when paused by lobby force.</p>
| meta | description |
| :--- | :---------- |
| Type | [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean) |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L16](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L16)|
#### waiter
> <p style={{ color: 'gray', fontSize: '1.0em' }}> Waits until not paused.</p>
| 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/spin-controller.js#L17](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L17)|
### Methods
#### _start
Starts a spin round. Prepares spin data, handles game round confirmation, and waits until the game is not paused before sending a spin request.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L32](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L32)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
* `betPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)
* `totalBetPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)
* `isFreeSpin` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
* `freeroundsID` [String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)
</p>
#### _complete
Completes the spin round and stops any waiting processes.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L68](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L68)|
#### onBetDataChanged
> Updates internal bet tracking based on input data.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L77](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L77)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
* `betPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
* `totalBetPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
</p>
#### onNextScrollDataReceived
Updates the model with the new scroll data received from the network.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L83](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L83)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
</p>
#### onStopSpinClicked
Notifies listeners when the stop spin button is clicked.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/spin-controller.js#L89](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/spin-controller.js#L89)|