game_sync/gamesrv/slotspkg/slots/intf/master.go

141 lines
4.9 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package intf
import (
"github.com/tomas-qstarrs/boost/randx"
"mongo.games.com/game/gamesrv/slotspkg/internal/module/player"
"mongo.games.com/game/gamesrv/slotspkg/internal/module/shared"
"mongo.games.com/game/gamesrv/slotspkg/slots/desc"
)
// Master is the interface for mastering machine
type Master interface {
Randx() *randx.Randx
UID() int64
SetRatio(int64, float64)
SetSummary(s string)
TryLink(seqID int64, symbols []int64) ([]*shared.LinkPositions, [][]int64, []float64) // 返回linkPositions, LineSymbols, LinePays
TryLinkMatrixSymbols(seqID int64, matSymbols [][]int64) ([]*shared.LinkPositions, [][]int64, []float64) // 返回linkPositions, LineSymbols, LinePays
TryRand(nodeType string, seqID int64) []int64
SkipBaseSpin(nodeID int64)
SkipBaseSpinWithBet(nodeID int64)
Desc() *desc.NodeDesc
UserData() *shared.UserData
MustNext()
RandVector() *shared.RandVector
RandxTracker() *shared.RandxTracker
CompareRandx() (bool, string, string)
BetSizeIndex() int64
BetLevelIndex() int64
BetLineIndex() int64
Choice() int64
Stay() bool
Version() int64
Ratio() float64
Mode() string
GetBetCoin() player.DecCoin
GetWinCoin() player.IncCoin
Bet() int64 // 当前Node参与计算的下注值(拷贝自Base可临时被更改)
ActBet() int64 // 通过Base节点信息和Act信息实时计算的最新Bet值
TotalBet() int64 // 一轮Base节点实际付款金币
ActualBet() int64 // 当前Spin实际付款金币
Win() int64 // 当前Spin中奖金额
NodeTotalWin() int64 // 当前Node中奖金额
TotalWin() int64 // 一轮Base总中奖金额
ActualWin() int64 // 当前Spin实际获奖金额
ActualWinType() int64 // 当前Spin实际获奖类型
Accomplish()
AccomplishNext()
AccomplishParent()
AddProgress(n int64)
AddNextProgress(n int64)
AddParentProgress(n int64)
ProgressLeft() int64
NextProgressLeft() int64
ParentProgressLeft() int64
SetProgressLeft(left int64)
SetNextProgressLeft(left int64)
SetParentProgressLeft(left int64)
GetProgressValue() int64
GetNextProgressValue() int64
GetParentProgressValue() int64
Node(nodeID int64) Node
Cursor() Node
Root() Node
Next() Node
AddNode(nodeID int64, nodeType string, progress int64) Node
AddNodeOnCursor(nodeType string, progress int64) Node
AddNodeOnRoot(nodeType string, progress int64) Node
AddNodeAtLeft(nodeID int64, nodeType string, progress int64) Node
AddNodeOnCursorAtLeft(nodeType string, progress int64) Node
AddNodeOnRootAtLeft(nodeType string, progress int64) Node
////////////////////////////////////////////////////////
UpdateCursor2NewType(nodeType string, progress int64) Node
IsWinInBeforeDisplay() bool
IsWinInBeforeDisplayBySymbols(symbols [][]int64) int
////////////////////////////////////////////////////////
CursorFormation() Formation
CursorFormations() []Formation
CursorSeqFormation(seqID int64) Formation
NodeFormation(nodeID int64) Formation
NodeFormations(nodeID int64) []Formation
NodeSeqFormation(nodeID int64, seqID int64) Formation
Feature(featureID int64) Feature
CursorFeature(v interface{}) Feature
CursorFeatures(v interface{}) []Feature
CursorFormationFeature(seqID int64, v interface{}) Feature
CursorFormationFeatures(seqID int64, v interface{}) []Feature
RootFeature(v interface{}) Feature
RootFeatures(v interface{}) []Feature
NodeFeature(nodeID int64, v interface{}) Feature
NodeFeatures(nodeID int64, v interface{}) []Feature
NodeFormationFeature(nodeID int64, seqID int64, v interface{}) Feature
NodeFormationFeatures(nodeID int64, seqID int64, v interface{}) []Feature
AddCursorFeature(v interface{}) Feature
AddRootFeature(v interface{}) Feature
AddNodeFeature(nodeID int64, v interface{}) Feature
Custom(featureID int64) interface{}
CursorCustom(v interface{}) interface{}
CursorCustoms(v interface{}) []interface{}
CursorFormationCustom(seqID int64, v interface{}) interface{}
CursorFormationCustoms(seqID int64, v interface{}) []interface{}
RootCustom(v interface{}) interface{}
RootCustoms(v interface{}) []interface{}
NodeCustom(nodeID int64, v interface{}) interface{}
NodeCustoms(nodeID int64, v interface{}) []interface{}
NodeFormationCustom(nodeID int64, seqID int64, v interface{}) interface{}
NodeFormationCustoms(nodeID int64, seqID int64, v interface{}) []interface{}
Remove(key interface{})
Set(key interface{}, value interface{})
Exists(key interface{}) bool
Int(key interface{}) int
Int8(key interface{}) int8
Int16(key interface{}) int16
Int32(key interface{}) int32
Int64(key interface{}) int64
Uint(key interface{}) uint
Uint8(key interface{}) uint8
Uint16(key interface{}) uint16
Uint32(key interface{}) uint32
Uint64(key interface{}) uint64
Incr(Key interface{})
Float32(key interface{}) float32
Float64(key interface{}) float64
String(key interface{}) string
Bool(key interface{}) bool
Value(key interface{}) interface{}
State() map[string]interface{}
Restore(data map[string]interface{})
Clear()
}