19 lines
1015 B
Go
19 lines
1015 B
Go
package ws
|
|
|
|
// Settler تسویهی اقتصادی میز را انجام میدهد (پیادهسازی در لایه economy).
|
|
// لایه ws از جزئیات سکه/جایزه بیخبر است و فقط tier را پاس میدهد.
|
|
type Settler interface {
|
|
ChargeEntry(userID int64, tier string) error // کسر ورودی هنگام ورود به صف
|
|
Refund(userID int64, tier string) // بازگرداندن ورودی در صورت لغو
|
|
AwardWinner(userID int64, tier string) // جایزه/XP/جام به برنده
|
|
RecordGame(room, playersJSON string, winnerTeam int, kot bool)
|
|
}
|
|
|
|
// noopSettler پیشفرض (برای تستها و حالت بدون اقتصاد).
|
|
type noopSettler struct{}
|
|
|
|
func (noopSettler) ChargeEntry(int64, string) error { return nil }
|
|
func (noopSettler) Refund(int64, string) {}
|
|
func (noopSettler) AwardWinner(int64, string) {}
|
|
func (noopSettler) RecordGame(string, string, int, bool) {}
|