增加房主修改功能

This commit is contained in:
kercylan98 2023-05-05 17:55:26 +08:00
parent 4f1ea8d667
commit 2038117c3b
2 changed files with 9 additions and 0 deletions

View File

@ -57,6 +57,13 @@ func (slf *Room[PlayerID, Player]) IsOwner(id PlayerID) bool {
return !slf.noMaster && slf.owner == id return !slf.noMaster && slf.owner == id
} }
func (slf *Room[PlayerID, Player]) ChangeOwner(id PlayerID) {
if slf.noMaster || slf.owner == id {
return
}
slf.owner = id
}
func (slf *Room[PlayerID, Player]) Join(player Player) error { func (slf *Room[PlayerID, Player]) Join(player Player) error {
if slf.players.Size() >= slf.playerLimit && slf.playerLimit > 0 { if slf.players.Size() >= slf.playerLimit && slf.playerLimit > 0 {
return ErrWorldPlayerLimit return ErrWorldPlayerLimit

View File

@ -18,6 +18,8 @@ type Room[PlayerID comparable, P Player[PlayerID]] interface {
IsExistPlayer(id PlayerID) bool IsExistPlayer(id PlayerID) bool
// IsOwner 检查玩家是否是房主 // IsOwner 检查玩家是否是房主
IsOwner(id PlayerID) bool IsOwner(id PlayerID) bool
// ChangeOwner 设置玩家为房主
ChangeOwner(id PlayerID)
// Join 使特定玩家加入房间 // Join 使特定玩家加入房间
Join(player P) error Join(player P) error