diff --git a/src/server/game/Player.go b/src/server/game/Player.go index df8ebc49..7d639822 100644 --- a/src/server/game/Player.go +++ b/src/server/game/Player.go @@ -359,6 +359,13 @@ func (p *Player) Login() { ItemMod := p.PlayMod.getItemMod() ItemMod.Data = make(map[int]int) } + // TODO : 优化数据 + GuideMod := p.PlayMod.getGuildMod() + if GuideMod.Reward[4] > 0 { + if AvatarMod.List[10] == nil { + AvatarMod.Unlock(10, 0) + } + } // playroom触发 PlayroomMod := p.PlayMod.getPlayroomMod() PlayroomMod.UnLock(BaseMod.GetLevel()) diff --git a/src/server/game/mod/avatar/Avatar.go b/src/server/game/mod/avatar/Avatar.go index b9615498..48e091f4 100644 --- a/src/server/game/mod/avatar/Avatar.go +++ b/src/server/game/mod/avatar/Avatar.go @@ -10,6 +10,7 @@ import ( type AvatarMod struct { List map[int]*Avatar SetId int + Init bool } type Avatar struct { @@ -27,7 +28,8 @@ func (f *AvatarMod) Login(RegisterTime int64) { } func (a *AvatarMod) InitData() { now := GoUtil.Now() - if a.List == nil { + if a.List == nil || !a.Init { + a.Init = true a.List = make(map[int]*Avatar) InitId := avatarCfg.GetInitList() for _, v := range InitId { diff --git a/src/server/game/mod/face/Face.go b/src/server/game/mod/face/Face.go index 8101741c..bc04cd4d 100644 --- a/src/server/game/mod/face/Face.go +++ b/src/server/game/mod/face/Face.go @@ -10,6 +10,7 @@ import ( type FaceMod struct { List map[int]*Face SetId int + Init bool } type Face struct { @@ -28,7 +29,8 @@ func (f *FaceMod) Login(RegisterTime int64) { func (f *FaceMod) InitData() { now := GoUtil.Now() - if f.List == nil { + if f.List == nil || !f.Init { + f.Init = true f.List = make(map[int]*Face) InitId := faceCfg.GetInitList() for _, v := range InitId {