client

package
v0.0.0-...-c9741e9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 27, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultRatingScale = "" /* 161-byte string literal not displayed */

Variables

This section is empty.

Functions

func ProcessUserList

func ProcessUserList(node *parser.Node, c UNController) error

func ProcessXMLMessage

func ProcessXMLMessage(message string, c Controller) (err error)

func ProcessXMLNode

func ProcessXMLNode(node *parser.Node, c Controller) (err error)

Types

type Chat

type Chat struct {
	Name    string
	Message string
}

type Controller

type Controller interface {
	UNController

	Drop(Drop)
	Take(Take)
	Reach(Reach)
	Declare(Declare)
	Init(Init)
	Reinit(Reinit)
	LogInfo(LogInfo)
	Go(Go)
	Hello(Hello)

	// TODO: research
	LobbyStats(LobbyStats)
	Agari(tbase.Agari)
	Indicator(WithInstance)
	// TODO: research add
	EndButton(EndButton)
	Furiten(Furiten)
	Ryuukyoku(tbase.Ryuukyoku)
	Rejoin(Rejoin)
	Disconnect(WithOpponent)
	Chat(Chat)
	// TODO: research
	Ranking(Ranking)
	Recover(Recover)
}

This is how client looks from server's point of view

type Declare

type Declare struct {
	WithOpponent
	WithSuggest
	Meld tbase.Meld
}

type Drop

type Drop struct {
	WithOpponent
	WithInstance
	WithSuggest
	IsTsumogiri bool
}

type EndButton

type EndButton struct {
	WithLobby
	Add string
}

type Furiten

type Furiten struct {
	Furiten bool
}

type Go

type Go struct {
	WithLobby
	GpID string
}

type Hello

type Hello struct {
	Name string
	Auth string

	RatingScale string
	// TODO: research
	PF4 string
	RR  string

	// TODO: change to date
	Expire     int
	ExpireDays int
	// nintei
	// TODO: check what is possible to display for client
	Message string
}

type Init

type Init struct {
	tbase.Init
	Hand tile.Instances
}

type LobbyStats

type LobbyStats struct {
	N string
	J string
	G string
}

type LogInfo

type LogInfo struct {
	WithDealer
	Hash string
}

type Ranking

type Ranking struct {
	V2 string
}

type Reach

type Reach struct {
	WithOpponent
	Score []score.Money
	Step  int
}

type Reconnect

type Reconnect struct {
	WithOpponent
	Name string
}

type Recover

type Recover struct {
	WithDealer
	Status  tbase.TableStatus
	Changes tbase.ScoreChanges
}

type Reinit

type Reinit struct {
	Init
	Melds   []tbase.Melds
	Discard []tile.Instances
	Riichi  []int
}

type Rejoin

type Rejoin struct {
	WithLobby
	Rejoin bool
}

type Suggest

type Suggest int
const (
	SuggestKan      Suggest = 1 << iota
	SuggestPon              // 2
	SuggestChi              // 4
	SuggestRon              // 8
	SuggestTsumo            // 16
	SuggestRiichi           // 32
	SuggestDraw             // 64
	SuggetSanmaDora         // 128
)
const (
	SuggestNone Suggest = 0
)

func (Suggest) Check

func (s Suggest) Check(x Suggest) bool

type Take

type Take struct {
	WithOpponent
	WithInstance
	WithSuggest
}

type UNController

type UNController interface {
	UserList(UserList)
	Reconnect(Reconnect)
}

type UserList

type UserList struct {
	Users tbase.UserList
}

type WithDealer

type WithDealer struct {
	Dealer tbase.Opponent
}

func GetWithDealer

func GetWithDealer(node *parser.Node) WithDealer

type WithInstance

type WithInstance struct {
	Instance tile.Instance
}

type WithLobby

type WithLobby struct {
	LobbyNumber int
	LobbyType   int

	// TODO: parse deeper
	Title   *string
	Rule    *string
	Ranking *string
	CSRule  *string
}

func GetWithLobby

func GetWithLobby(node *parser.Node) WithLobby

type WithOpponent

type WithOpponent struct {
	Opponent tbase.Opponent
}

func GetWithOpponent

func GetWithOpponent(node *parser.Node) WithOpponent

type WithSuggest

type WithSuggest struct {
	Suggest Suggest
}

type XMLWriter

type XMLWriter struct {
	util.XMLWriter
}

func NewXMLWriter

func NewXMLWriter() XMLWriter

func (XMLWriter) Agari

func (w XMLWriter) Agari(a tbase.Agari)

func (XMLWriter) Chat

func (w XMLWriter) Chat(params Chat)

func (XMLWriter) Declare

func (w XMLWriter) Declare(params Declare)

func (XMLWriter) Disconnect

func (w XMLWriter) Disconnect(params WithOpponent)

func (XMLWriter) Drop

func (w XMLWriter) Drop(params Drop)

func (XMLWriter) EndButton

func (w XMLWriter) EndButton(params EndButton)

func (XMLWriter) Furiten

func (w XMLWriter) Furiten(params Furiten)

func (XMLWriter) Go

func (w XMLWriter) Go(params Go)

func (XMLWriter) Hello

func (w XMLWriter) Hello(params Hello)

func (XMLWriter) Indicator

func (w XMLWriter) Indicator(params WithInstance)

func (XMLWriter) Init

func (w XMLWriter) Init(params Init)

func (XMLWriter) LobbyStats

func (w XMLWriter) LobbyStats(params LobbyStats)

func (XMLWriter) LogInfo

func (w XMLWriter) LogInfo(params LogInfo)

func (XMLWriter) Ranking

func (w XMLWriter) Ranking(params Ranking)

func (XMLWriter) Reach

func (w XMLWriter) Reach(params Reach)

func (XMLWriter) Reconnect

func (w XMLWriter) Reconnect(params Reconnect)

func (XMLWriter) Recover

func (w XMLWriter) Recover(params Recover)

func (XMLWriter) Reinit

func (w XMLWriter) Reinit(params Reinit)

func (XMLWriter) Rejoin

func (w XMLWriter) Rejoin(params Rejoin)

func (XMLWriter) Ryuukyoku

func (w XMLWriter) Ryuukyoku(a tbase.Ryuukyoku)

func (XMLWriter) Take

func (w XMLWriter) Take(params Take)

func (XMLWriter) UserList

func (w XMLWriter) UserList(params UserList)

func (XMLWriter) WriteAgari

func (w XMLWriter) WriteAgari(a *tbase.Agari)

func (XMLWriter) WriteRyuukyoku

func (w XMLWriter) WriteRyuukyoku(a *tbase.Ryuukyoku)

func (XMLWriter) WriteTake

func (w XMLWriter) WriteTake(o tbase.Opponent, t tile.Instance, suggest Suggest, hideOthers bool)

func (XMLWriter) WriteUserList

func (w XMLWriter) WriteUserList(ul tbase.UserList)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL