diff --git a/api-doc/slot-machine/respin/_category_.json b/api-doc/slot-machine/respin/_category_.json new file mode 100644 index 0000000..eb7b816 --- /dev/null +++ b/api-doc/slot-machine/respin/_category_.json @@ -0,0 +1,18 @@ +{ + "position": 25, + "label": "Respin Game", + "collapsible": true, + "collapsed": true, + "link": { + "type": "generated-index", + "title": "Respin Game", + "description": "This section will guide you through the process of setting up a new project, including creating a new repository and configuring your development environment.", + "keywords": [ + "controller", + "project", + "repository", + "model", + "respin game" + ] + } +} \ No newline at end of file diff --git a/api-doc/slot-machine/respin/repsin-view.md b/api-doc/slot-machine/respin/repsin-view.md new file mode 100644 index 0000000..904642f --- /dev/null +++ b/api-doc/slot-machine/respin/repsin-view.md @@ -0,0 +1,15 @@ +--- +sidebar_position: 3 +--- + +# Respin View + +## Overview + +* The `RespinView` class is responsible for the presentation layer of the respin feature. It extends the core `View` component and can be customized to display visual feedback related to respins. + +## Description: + +* Initializes a new instance of RespinView. +* Calls the base View constructor. +* [p4f-slotty-core/src/view/respin-view.js#L5](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/view/respin-view.js#L5) | diff --git a/api-doc/slot-machine/respin/respin-controller.md b/api-doc/slot-machine/respin/respin-controller.md new file mode 100644 index 0000000..96c8dd1 --- /dev/null +++ b/api-doc/slot-machine/respin/respin-controller.md @@ -0,0 +1,177 @@ +--- +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) | diff --git a/api-doc/slot-machine/respin/respin-model.md b/api-doc/slot-machine/respin/respin-model.md new file mode 100644 index 0000000..792fcb3 --- /dev/null +++ b/api-doc/slot-machine/respin/respin-model.md @@ -0,0 +1,179 @@ +--- +sidebar_position: 2 +--- + +# Respin Model + +## Index + +### Properties + +* [respinRetriggerData](#respinretriggerdata) `Object | null` Data for respin retrigger conditions. +* [respinLeft](#respinleft) `Number` Number of respins remaining. +* [totalRespin](#totalrespin) `Number` Total number of respins triggered by feature logic. +* [respinWin](#respinwin) `Number` Total win amount during respins. + +### Methods + +* [Reset](#reset) Resets all respin data to default values. +* [SetRespinLeft](#setrespinleft) Sets the number of remaining respins. +* [SetTotalRespin](#settotalrespin) Sets the total number of respins. +* [SetRespinRetriggerData](#setrespinretriggerdata) Sets retrigger data for respins. +* [SetRespinWin](#setrespinwin) Sets the win amount during respins. +* [GetRespinLeft](#getrespinleft) Returns the number of remaining respins. +* [GetRespinPlayed](#getrespinplayed) Calculates the number of played respins. +* [GetTotalRespin](#gettotalrespin) Returns the total number of respins. +* [GetRespinRetriggerData](#getrespinretriggerdata) Returns a clone of the retrigger data object. +* [GetRespinWin](#getrespinwin) Returns the total win during respins. + +## Details + +### Properties + +#### respinRetriggerData + +> Data for respin retrigger conditions. + +| meta | description | +| :--- | :---------- | +| Type | [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) \| null | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L9](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L9) | + +#### respinLeft + +> Number of respins remaining. + +| meta | description | +| :--- | :---------- | +| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L10](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L10) | + +#### totalRespin + +> Total number of respins triggered by feature logic. + +| meta | description | +| :--- | :---------- | +| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L11](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L11) | + +#### respinWin + +> Total win amount during respins. + +| meta | description | +| :--- | :---------- | +| Type | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L12](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L12) | + +### Methods + +#### Reset + +Resets all respin data to default values. + +| meta | description | +| :--- | :---------- | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L17](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L17) | + +#### SetRespinLeft + +Sets the number of remaining respins. + +| meta | description | +| :--- | :---------- | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L26](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L26) | + ++ + **Parameters** + * `respinLeft` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) +
+ +#### SetTotalRespin + +Sets the total number of respins. + +| meta | description | +| :--- | :---------- | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L32](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L32) | + ++ + **Parameters** + * `totalRespin` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) +
+ + +#### SetRespinRetriggerData + +Sets retrigger data for respins. + +| meta | description | +| :--- | :---------- | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L38](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L38) | + ++ + **Parameters** + * `respinRetriggerData` [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) +
+ +#### SetRespinWin + +Sets the win amount during respins. + +| meta | description | +| :--- | :---------- | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L44](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L44) | + ++ + **Parameters** + * `respinWin` [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) +
+ +#### GetRespinLeft + +Returns the number of remaining respins. + +| meta | description | +| :--- | :---------- | +| Returns | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L50](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L50) | + +#### GetRespinPlayed + +Calculates the number of played respins. + +| meta | description | +| :--- | :---------- | +| Returns | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L56](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L56) | + +#### GetTotalRespin + +Returns the total number of respins. + +| meta | description | +| :--- | :---------- | +| Returns | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L62](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L62) | + +#### GetRespinRetriggerData + +Returns a clone of the retrigger data object. + +| meta | description | +| :--- | :---------- | +| Returns | [Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object) \| null | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L58](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L58) | + +#### GetRespinWin + +Returns the total win during respins. + +| meta | description | +| :--- | :---------- | +| Returns | [Number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number) | +| Defined in | [p4f-slotty-core/src/model/respin-model.js#L74](https://gitea.plp19.com/cocos-core/p4f-slotty-core/src/commit/7fbf58bf2ad8edec4258757b353151b638c96652/src/model/respin-model.js#L74) |