Documentation ¶
Index ¶
- Variables
- func IndicatorsToDoraTiles(in tile.Instances) tile.Tiles
- func TileIndicatorsToDoraTiles(in tile.Tiles) tile.Tiles
- type Context
- type Dictionary
- type Fu
- type FuInfo
- type FuPoints
- type FuPointsRounded
- type Fus
- type HanPoints
- type Limit
- type Result
- type Rules
- type RulesStruct
- func (r *RulesStruct) CheckAka(i tile.Instance) bool
- func (r *RulesStruct) GreenRequired() bool
- func (r *RulesStruct) HaiteiFromLiveOnly() bool
- func (r *RulesStruct) Ipatsu() bool
- func (r *RulesStruct) OpenTanyao() bool
- func (r *RulesStruct) Renhou() Limit
- func (r *RulesStruct) RinshanFu() bool
- func (r *RulesStruct) Ura() bool
- type WindMergeType
- type Yaku
- type YakuPrefs
- type YakuSet
- type Yakuman
- type Yakumans
Constants ¶
This section is empty.
Variables ¶
View Source
var CompactYakuPref = &YakuPrefs{MergeDragons: true, MergeWinds: MergeWindToYakuhai, MergeDora: true}
View Source
var CompactYakuPref2 = &YakuPrefs{MergeDragons: true, MergeWinds: MergeWindToTile, MergeDora: true}
View Source
var CompactYakuPref3 = &YakuPrefs{MergeDragons: true, MergeWinds: MergeWindToType, MergeDora: true}
View Source
var DefaultYakuPref = &YakuPrefs{}
Functions ¶
Types ¶
type Context ¶
type Context struct { Tile tile.Instance SelfWind base.Wind RoundWind base.Wind DoraTiles tile.Tiles UraTiles tile.Tiles Rules Rules IsTsumo bool IsRiichi bool IsIpatsu bool IsDaburi bool IsLastTile bool IsRinshan bool IsFirstTake bool IsChankan bool }
Context is createed to avoid using other game objects in calculations
type Dictionary ¶
func AppendResources16 ¶
func AppendResources16(in Dictionary, str string, indexes []uint16) Dictionary
func AppendResources8 ¶
func AppendResources8(in Dictionary, str string, indexes []uint8) Dictionary
func GetResources ¶
func GetResources() Dictionary
type FuPointsRounded ¶
type FuPointsRounded int
type Limit ¶
type Limit int
const ( LimitNone Limit = 0 LimitMangan Limit = 1 LimitHaneman Limit = 2 LimitBaiman Limit = 3 LimitSanbaiman Limit = 4 LimitYakuman Limit = 5 )
Limit numbers are now fixed and should not be changed
func (Limit) ShortString ¶
type RulesStruct ¶
type RulesStruct struct { IsOpenTanyao bool AkaDoras []tile.Instance RenhouLimit Limit IsHaiteiFromLiveOnly bool IsUra bool IsIpatsu bool IsGreenRequired bool IsRinshanFu bool }
func RulesEMA ¶
func RulesEMA() *RulesStruct
func RulesJPMPLA ¶
func RulesJPMPLA() *RulesStruct
func RulesJPMPLB ¶
func RulesJPMPLB() *RulesStruct
func RulesTenhouRed ¶
func RulesTenhouRed() *RulesStruct
func (*RulesStruct) GreenRequired ¶
func (r *RulesStruct) GreenRequired() bool
func (*RulesStruct) HaiteiFromLiveOnly ¶
func (r *RulesStruct) HaiteiFromLiveOnly() bool
func (*RulesStruct) Ipatsu ¶
func (r *RulesStruct) Ipatsu() bool
func (*RulesStruct) OpenTanyao ¶
func (r *RulesStruct) OpenTanyao() bool
func (*RulesStruct) Renhou ¶
func (r *RulesStruct) Renhou() Limit
func (*RulesStruct) RinshanFu ¶
func (r *RulesStruct) RinshanFu() bool
func (*RulesStruct) Ura ¶
func (r *RulesStruct) Ura() bool
type WindMergeType ¶
type WindMergeType int
const ( MergeWindNoMerge WindMergeType = iota MergeWindToYakuhai MergeWindToTile MergeWindToType // Self/Round )
type Yaku ¶
type Yaku int
const ( YakuNone Yaku = 0 YakuRiichi Yaku = 1 YakuDaburi Yaku = 2 YakuIppatsu Yaku = 3 YakuTsumo Yaku = 4 YakuTanyao Yaku = 5 YakuChanta Yaku = 6 YakuJunchan Yaku = 7 YakuHonrouto Yaku = 8 YakuYakuhai Yaku = 9 YakuHaku Yaku = 10 YakuHatsu Yaku = 11 YakuChun Yaku = 12 YakuWindRound Yaku = 13 YakuWindSelf Yaku = 14 YakuTon Yaku = 15 YakuNan Yaku = 16 YakuSja Yaku = 17 YakuPei Yaku = 18 YakuTonSelf Yaku = 19 YakuNanSelf Yaku = 20 YakuSjaSelf Yaku = 21 YakuPeiSelf Yaku = 22 YakuTonRound Yaku = 23 YakuNanRound Yaku = 24 YakuSjaRound Yaku = 25 YakuPeiRound Yaku = 26 YakuChiitoi Yaku = 27 YakuToitoi Yaku = 28 YakuSanankou Yaku = 29 YakuSankantsu Yaku = 30 YakuSanshoku Yaku = 31 YakuShousangen Yaku = 32 YakuPinfu Yaku = 33 YakuIppeiko Yaku = 34 YakuRyanpeikou Yaku = 35 YakuItsuu Yaku = 36 YakuSanshokuDoukou Yaku = 37 YakuHonitsu Yaku = 38 YakuChinitsu Yaku = 39 YakuDora Yaku = 40 YakuUraDora Yaku = 41 YakuAkaDora Yaku = 42 YakuRenhou Yaku = 43 YakuHaitei Yaku = 44 YakuHoutei Yaku = 45 YakuRinshan Yaku = 46 YakuChankan Yaku = 47 )
Yaku numbers are now fixed and should not be changed
type YakuPrefs ¶
type YakuPrefs struct { MergeDragons bool MergeWinds WindMergeType MergeWindRound bool MergeDora bool }
func (*YakuPrefs) FormatYaku ¶
type Yakuman ¶
type Yakuman int
const ( YakumanNone Yakuman = 0 YakumanKokushi Yakuman = 1 YakumanKokushi13 Yakuman = 2 YakumanSuukantsu Yakuman = 3 YakumanSuuankou Yakuman = 4 YakumanSuuankouTanki Yakuman = 5 YakumanDaisangen Yakuman = 6 YakumanShousuushi Yakuman = 7 YakumanDaisuushi Yakuman = 8 YakumanRyuuiisou Yakuman = 9 YakumanTsuiisou Yakuman = 10 YakumanChinrouto Yakuman = 11 YakumanChuurenpooto Yakuman = 12 YakumanChuurenpooto9 Yakuman = 13 YakumanTenhou Yakuman = 14 YakumanChihou Yakuman = 15 YakumanRenhou Yakuman = 16 )
Yakuman numbers are now fixed and should not be changed
Click to show internal directories.
Click to hide internal directories.