Documentation
¶
Index ¶
- Constants
- func DoraList(doraIndicators []int) (doraList []int)
- func DoraTile(doraIndicator int) (dora int)
- func InitLeftTiles34WithTiles34(tiles34 []int) []int
- type HumanTilesInfo
- type Meld
- type PlayerInfo
- func (pi *PlayerInfo) AddMeld(meld Meld)
- func (pi *PlayerInfo) CountDora() (count int)
- func (pi *PlayerInfo) DiscardTile(tile int, isRedFive bool)
- func (pi *PlayerInfo) FillLeftTiles34()
- func (pi *PlayerInfo) IsFuriten(waits map[int]int) bool
- func (pi *PlayerInfo) IsNaki() bool
- func (pi *PlayerInfo) IsOnlyRedFive(tile int) bool
- func (pi *PlayerInfo) UndoAddMeld()
- func (pi *PlayerInfo) UndoDiscardTile(tile int, isRedFive bool)
Constants ¶
View Source
const ( MeldTypeChi = iota // 吃 MeldTypePon // 碰 MeldTypeAnkan // 暗杠 MeldTypeMinkan // 大明杠 MeldTypeKakan // 加杠 )
View Source
const ( TileTypeMan = 0 TileTypePin = 1 TileTypeSou = 2 )
Variables ¶
This section is empty.
Functions ¶
func InitLeftTiles34WithTiles34 ¶
TODO: 其他的也移过来
Types ¶
type HumanTilesInfo ¶ added in v0.2.4
用于命令行分析
func NewSimpleHumanTilesInfo ¶ added in v0.2.4
func NewSimpleHumanTilesInfo(humanTiles string) *HumanTilesInfo
type Meld ¶
type PlayerInfo ¶
type PlayerInfo struct {
HandTiles34 []int // 手牌,不含副露
Melds []Meld // 副露
DoraTiles []int // 宝牌指示牌产生的宝牌,可以重复
NumRedFives []int // 按照 mps 的顺序,各个赤5的个数(手牌和副露中的)
IsTsumo bool // 是否自摸
WinTile int // 自摸/荣和的牌
RoundWindTile int // 场风
SelfWindTile int // 自风
IsParent bool // 是否为亲家
IsDaburii bool // 是否双立直
IsRiichi bool // 是否立直
DiscardTiles []int // 自家舍牌,用于判断和率,是否振听等 *注意创建 PlayerInfo 的时候把负数调整成正的!
LeftTiles34 []int // 剩余牌
}
func NewSimplePlayerInfo ¶
func NewSimplePlayerInfo(tiles34 []int, melds []Meld) *PlayerInfo
func (*PlayerInfo) AddMeld ¶ added in v0.2.3
func (pi *PlayerInfo) AddMeld(meld Meld)
func (*PlayerInfo) CountDora ¶ added in v0.2.3
func (pi *PlayerInfo) CountDora() (count int)
根据手牌、副露、赤5,结合哪些是宝牌,计算出拥有的宝牌个数
func (*PlayerInfo) DiscardTile ¶ added in v0.2.3
func (pi *PlayerInfo) DiscardTile(tile int, isRedFive bool)
func (*PlayerInfo) FillLeftTiles34 ¶
func (pi *PlayerInfo) FillLeftTiles34()
func (*PlayerInfo) IsFuriten ¶ added in v0.2.4
func (pi *PlayerInfo) IsFuriten(waits map[int]int) bool
是否振听 仅限听牌时调用 TODO: Waits 移进来
func (*PlayerInfo) IsNaki ¶ added in v0.2.3
func (pi *PlayerInfo) IsNaki() bool
是否已鸣牌(暗杠不算) 可以用来判断该玩家能否立直,计算门清加符、役种番数等
func (*PlayerInfo) IsOnlyRedFive ¶ added in v0.2.3
func (pi *PlayerInfo) IsOnlyRedFive(tile int) bool
手上的这种牌只有赤5
func (*PlayerInfo) UndoAddMeld ¶ added in v0.2.3
func (pi *PlayerInfo) UndoAddMeld()
func (*PlayerInfo) UndoDiscardTile ¶ added in v0.2.3
func (pi *PlayerInfo) UndoDiscardTile(tile int, isRedFive bool)
Click to show internal directories.
Click to hide internal directories.