2025-07-14 15:13:22 +07:00

353 lines
13 KiB
Markdown

---
sidebar_position: 1
---
# Auto Spin Controller
## Index
### Properties
- [totalBet](#totalbet) `Number` Total current bet in a spin round.
- [totalWin](#totalwin) `Number` Total win points collected.
- [betLossAccumulation](#betlossaccumulation) `Number` Accumulated loss for checking loss limit condition.
### Methods
- [onSpinStarted](#onspinstarted) Decrements remaining auto spins and disables auto spin if none are left.
- [onRoundEnd](#onroundend) Triggers win/loss limit checks at end of round.
- [onTake](#ontake) Triggers win/loss limit checks when a take action occurs.
- [onFreeroundsTriggered](#onfreeroundstriggered) Stops auto spin if freerounds are triggered.
- [onPresentFreeroundsWinStarted](#onpresentfreeroundswinstarted) Stops auto spin on freeround win presentation.
- [onMiniGameStarted](#onminigamestarted) Stops auto spin if a mini-game starts.
- [onBetDataChanged](#onbetdatachanged) Updates internal bet tracking based on input data.
- [onAutoSpinActivated](#onautospinactivated) Activates auto spin mode.
- [onAutoSpinDeactivated](#onautospindeactivated) Disables auto spin and resets `betLossAccumulation`.
- [onAutoSpinQuantityChanged](#onautospinquantitychanged) Updates number of auto spins remaining.
- [onFeatureTrigger](#onfeaturetrigger) Stops auto spin if feature is triggered and `stopOnFeatureTrigger` is enabled.
- [onStopOnTriggerFeatureToggled](#onstopontriggerfeaturetoggled) Toggles stop-on-feature behavior.
- [onLossLimitToggled](#onlosslimittoggled) Enables/disables auto-spin stop based on loss limit.
- [onLossLimitValueChanged](#onlosslimitvaluechanged) Updates configured loss limit value.
- [onWinLimitToggled](#onwinlimittoggled) Enables or disables win limit mode.
- [onWinLimitValueChanged](#onwinlimitvaluechanged) Updates win limit threshold.
- [onLobbyForcePauseGame](#onlobbyforcepausegame) Immediately stops auto spin when lobby forces pause.
- [onLobbyAllowResumeGame](#onlobbyallowresumegame) No action defined.
- [onDisconnected](#ondisconnected) Stops auto spin due to network disconnect.
- [onError](#onerror) Stops auto spin when error occurs.
- [onErrorAllowContinue](#onerrorallowcontinue) Stops auto spin when recoverable error is received.
- [stopAutoSpin](#stopautospin) Utility method to disable auto spin if currently active. Triggers `AutoSpinDeactivated` event.
---
## Details
### Properties
#### totalBet
> Total current bet in a spin round.
| meta | description |
| :--- | :---------- |
| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L12](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L12)|
---
#### totalWin
> Total win points collected.
| meta | description |
| :--- | :---------- |
| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L13](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L13)|
---
#### betLossAccumulation
> Accumulated loss for checking loss limit condition.
| meta | description |
| :--- | :---------- |
| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L14](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L14)|
---
### Methods
#### onSpinStarted
Decrements remaining auto spins and disables auto spin if none are left.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L43](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L43)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `data` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
* `isFreeSpin` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean).
</p>
---
#### onRoundEnd
Triggers win/loss limit checks at end of round.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L55](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L55)|
---
#### onTake
Triggers win/loss limit checks when a take action occurs.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L61](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L61)|
---
#### onFreeroundsTriggered
Stops auto spin if freerounds are triggered.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L88](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L88)|
---
#### onPresentFreeroundsWinStarted
Stops auto spin on freeround win presentation.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L94](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L94)|
---
#### onMiniGameStarted
Stops auto spin if a mini-game starts.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L100](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L100)|
---
#### onBetDataChanged
Updates internal bet tracking based on input data.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L106](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L106)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `betData` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)
* `totalBetPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
</p>
---
#### onAutoSpinActivated
Activates auto spin mode.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L112](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L112)|
---
#### onAutoSpinDeactivated
Disables auto spin and resets `betLossAccumulation`.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L118](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L118)|
---
#### onAutoSpinQuantityChanged
Updates number of auto spins remaining.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L125](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L125)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `totalBetPoint` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
</p>
---
#### onFeatureTrigger
Stops auto spin if:
- A free spin is triggered.
- The `stopOnFeatureTrigger` option in the UI is enabled in the model.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L131](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L131)|
---
#### onStopOnTriggerFeatureToggled
Toggles stop-on-feature behavior.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L139](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L139)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `isOn` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean).
</p>
---
#### onLossLimitToggled
Enables/disables auto-spin stop based on loss limit.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L145](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L145)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `isOn` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean).
</p>
---
#### onLossLimitValueChanged
Updates configured loss limit value.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L151](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L151)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `lossLimit` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
</p>
---
#### onWinLimitToggled
Enables or disables win limit mode.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L157](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L157)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `isOn` [Boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean).
</p>
---
#### onWinLimitValueChanged
Updates win limit threshold.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L163](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L163)|
<p style={{ color: 'gray', fontSize: '1.0em' }}>
**Parameters**
* `winLimit` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number).
</p>
---
#### onLobbyForcePauseGame
Immediately stops auto spin when lobby forces pause.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L169](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L169)|
---
#### onLobbyAllowResumeGame
No action defined. Placeholder handler.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L174](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L174)|
---
#### onDisconnected
Stops auto spin due to network disconnect.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L176](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L176)|
---
#### onError
Stops auto spin when error occurs.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L181](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L181)|
---
#### onErrorAllowContinue
Stops auto spin when recoverable error is received.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L186](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L186)|
---
#### stopAutoSpin
Utility method to disable auto spin if currently active. Triggers `AutoSpinDeactivated` event.
| meta | description |
| :--- | :---------- |
| Defined in | [p4f-slotty-core/src/controller/auto-spin-controller.js#L191](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/controller/auto-spin-controller.js#L191)|