This commit is contained in:
aozhiwei 2024-03-22 17:33:36 +08:00
parent 254aa958b1
commit 347f9e4458
2 changed files with 0 additions and 118 deletions

View File

@ -51,38 +51,14 @@ type PlayerMgr interface {
ProcessCMMsg(*cs.CsNetMsgHandler, *f5.MsgHdr) ProcessCMMsg(*cs.CsNetMsgHandler, *f5.MsgHdr)
GetPlayerBySocket(f5.WspCliConn) Player GetPlayerBySocket(f5.WspCliConn) Player
GetPlayerByAccountId(string) Player GetPlayerByAccountId(string) Player
GetOnlineStatus(string) int32
OnSocketClose(f5.WspCliConn) OnSocketClose(f5.WspCliConn)
GetPlayers() map[string]Player
UnBindSocket(f5.WspCliConn)
BindSocket(f5.WspCliConn, Player)
}
type Friendship interface {
IsFriendship() int32
FriendAccountId() string
}
type FriendBlackList interface {
GetAccountId() string
IsRemoved() int32
}
type User interface {
GetFriendships() map[string]Friendship
GetFriendBlackList() map[string]FriendBlackList
} }
type FriendMgr interface { type FriendMgr interface {
GetFriendByAccountId(account1Id, account2Id string) User
AddUser(string, User)
GetUser(string) User
LoadUserFriendships(user User, where [][]string)
} }
type Guild interface { type Guild interface {
GetGuildId() int64 GetGuildId() int64
GetMembers() map[string]GuildMember
} }
type GuildMember interface { type GuildMember interface {
@ -91,8 +67,6 @@ type GuildMember interface {
type GuildMgr interface { type GuildMgr interface {
GetGuildByAccountId(string) Guild GetGuildByAccountId(string) Guild
GetGuildIdByAccountId(string) int64
RandomGuilds() []*Guild
} }
type CacheMgr interface { type CacheMgr interface {

View File

@ -1,92 +0,0 @@
package friend
import (
"main/constant"
"main/common"
)
type User struct {
AccountId string
FriendBlackList map[string]*FriendBlackList // BlockedAccountId -> FriendBlackList
Friendships map[string]*Friendship // FriendAccountId -> Friendship
}
type Friendship struct {
FriendAccountId string // friend's account id
IsFriendship int32 // 0 pending, 1 ok, 2 reject, 3 disband
RequestTime int64 // send time
}
// FriendBlackList 直接存列表, 黑名单上限50个
type FriendBlackList struct {
AccountId string
IsRemoved int32 // default: 0, isRemoved
}
func NewUser(accountId string) *User {
user := &User{
AccountId: accountId,
//FriendRequest: make(map[string]*FriendRequest),
FriendBlackList: make(map[string]*FriendBlackList),
Friendships: make(map[string]*Friendship, constant.MaxFriendMembers),
}
return user
}
func (u *User) GetFriendships() map[string]common.Friendship {
return nil
}
func (u *User) GetFriendBlackList() map[string]common.FriendBlackList {
return nil
}
func (u *User) AddFriendRequest(account2Id string, IsFriendship int32, requestTime int64) {
friendShip := &Friendship{
FriendAccountId: account2Id,
IsFriendship: IsFriendship,
RequestTime: requestTime,
}
u.Friendships[account2Id] = friendShip
}
func (u *User) RemoveFriendRequest(account2Id string) {
delete(u.Friendships, account2Id)
}
func (u *User) RemoveFriendShip(account2Id string) {
delete(u.Friendships, account2Id)
}
func (u *User) IsInReq(FriendAccountId string) bool {
friendRequest, exists := u.Friendships[FriendAccountId]
return exists && friendRequest.IsFriendship == 0
}
// AddBlacklist 加入黑名单
func (u *User) AddBlacklist(b *FriendBlackList) {
u.FriendBlackList[b.AccountId] = b
}
// GetBlacklist 获取黑名单
func (u *User) GetBlacklist(account2Id string) *FriendBlackList {
if friendBlackList, exists := u.FriendBlackList[account2Id]; exists {
return friendBlackList
}
return nil
}
// IsInBlacklist 在黑名单中
func (u *User) IsInBlacklist(account2Id string) bool {
friendBlackList, exists := u.FriendBlackList[account2Id]
return exists && friendBlackList.IsRemoved == 0
}
func (u *User) RemoveBlacklist(account2Id string) {
delete(u.FriendBlackList, account2Id)
}
// GetBlacklistCount 获取黑名单
func (u *User) GetBlacklistCount() int {
return len(u.FriendBlackList)
}