多人世界队伍bug

This commit is contained in:
huangxiaolei
2022-12-11 02:06:09 +08:00
parent 1f43048d4a
commit 7fa4cd7f10
2 changed files with 14 additions and 5 deletions

View File

@@ -154,12 +154,13 @@ func (w *World) AddPlayer(player *model.Player, sceneId uint32) {
// 将玩家自身当前的队伍角色信息复制到世界的玩家本地队伍 // 将玩家自身当前的队伍角色信息复制到世界的玩家本地队伍
team := player.TeamConfig.GetActiveTeam() team := player.TeamConfig.GetActiveTeam()
if player.PlayerID == w.owner.PlayerID { if player.PlayerID == w.owner.PlayerID {
w.SetPlayerLocalTeam(player, team.AvatarIdList) w.SetPlayerLocalTeam(player, team.GetAvatarIdList())
w.SetPlayerLocalAvatarIndex(player, int(player.TeamConfig.CurrAvatarIndex))
} else { } else {
// 非房主最多复制前两个角色 activeAvatarId := player.TeamConfig.GetActiveAvatarId()
w.SetPlayerLocalTeam(player, team.AvatarIdList[0:2]) w.SetPlayerLocalTeam(player, []uint32{activeAvatarId})
w.SetPlayerLocalAvatarIndex(player, 0) }
for _, worldPlayer := range w.playerMap {
w.SetPlayerLocalAvatarIndex(worldPlayer, 0)
} }
w.UpdateMultiplayerTeam() w.UpdateMultiplayerTeam()
scene := w.GetSceneById(sceneId) scene := w.GetSceneById(sceneId)

View File

@@ -105,3 +105,11 @@ func (t *TeamInfo) SetTeamAvatar(teamIndex uint8, avatarIdList []uint32) {
} }
team.AvatarIdList = avatarIdList team.AvatarIdList = avatarIdList
} }
func (t *TeamInfo) GetActiveAvatarId() uint32 {
team := t.GetActiveTeam()
if team == nil {
return 0
}
return team.AvatarIdList[t.CurrAvatarIndex]
}