mirror of
https://github.com/FlourishingWorld/hk4e.git
synced 2026-02-09 05:02:27 +08:00
完善文档
This commit is contained in:
@@ -43,6 +43,16 @@ func Run(ctx context.Context, configFile string) error {
|
||||
return err
|
||||
}
|
||||
APPID = rsp.GetAppId()
|
||||
go func() {
|
||||
ticker := time.NewTicker(time.Second * 15)
|
||||
for {
|
||||
<-ticker.C
|
||||
_, _ = client.Discovery.KeepaliveServer(context.TODO(), &api.KeepaliveServerReq{
|
||||
ServerType: api.GS,
|
||||
AppId: APPID,
|
||||
})
|
||||
}
|
||||
}()
|
||||
GSID = rsp.GetGsId()
|
||||
defer func() {
|
||||
_, _ = client.Discovery.CancelServer(context.TODO(), &api.CancelServerReq{
|
||||
|
||||
@@ -263,6 +263,9 @@ func (g *GameManager) ClientAbilityChangeNotify(player *model.Player, payloadMsg
|
||||
if worldAvatar == nil {
|
||||
continue
|
||||
}
|
||||
if abilityMetaAddAbility.Ability == nil {
|
||||
continue
|
||||
}
|
||||
worldAvatar.abilityList = append(worldAvatar.abilityList, abilityMetaAddAbility.Ability)
|
||||
case proto.AbilityInvokeArgument_ABILITY_INVOKE_ARGUMENT_META_MODIFIER_CHANGE:
|
||||
abilityMetaModifierChange := new(proto.AbilityMetaModifierChange)
|
||||
|
||||
@@ -174,6 +174,7 @@ func (u *UserManager) OfflineUser(player *model.Player, changeGsInfo *ChangeGsIn
|
||||
logger.Error("deep copy player error: %v", err)
|
||||
return
|
||||
}
|
||||
playerCopy.DbState = player.DbState
|
||||
go func() {
|
||||
u.SaveUserToDbSync(playerCopy)
|
||||
u.SaveUserToRedisSync(playerCopy)
|
||||
@@ -342,6 +343,7 @@ func (u *UserManager) SaveTempOfflineUser(player *model.Player) {
|
||||
logger.Error("deep copy player error: %v", err)
|
||||
return
|
||||
}
|
||||
playerCopy.DbState = player.DbState
|
||||
go func() {
|
||||
u.SaveUserToDbSync(playerCopy)
|
||||
}()
|
||||
@@ -384,10 +386,20 @@ func (u *UserManager) LoadUserFromDbSync(userId uint32) *model.Player {
|
||||
}
|
||||
|
||||
func (u *UserManager) SaveUserToDbSync(player *model.Player) {
|
||||
err := u.dao.UpdatePlayer(player)
|
||||
if err != nil {
|
||||
logger.Error("update player error: %v", err)
|
||||
return
|
||||
if player.DbState == model.DbInsert {
|
||||
err := u.dao.InsertPlayer(player)
|
||||
if err != nil {
|
||||
logger.Error("insert player error: %v", err)
|
||||
return
|
||||
}
|
||||
} else if player.DbState == model.DbNormal {
|
||||
err := u.dao.UpdatePlayer(player)
|
||||
if err != nil {
|
||||
logger.Error("update player error: %v", err)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
logger.Error("invalid player db state: %v", player.DbState)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user