mirror of
https://github.com/FlourishingWorld/hk4e.git
synced 2026-02-04 15:52:27 +08:00
配置表访问接口化,简化常量访问
This commit is contained in:
@@ -54,28 +54,28 @@ func (p *Player) InitAvatar(avatar *Avatar) {
|
||||
|
||||
// InitAvatarFightProp 初始化角色面板
|
||||
func (p *Player) InitAvatarFightProp(avatar *Avatar) {
|
||||
avatarDataConfig, ok := gdconf.CONF.AvatarDataMap[int32(avatar.AvatarId)]
|
||||
if !ok {
|
||||
avatarDataConfig := gdconf.GetAvatarDataById(int32(avatar.AvatarId))
|
||||
if avatarDataConfig == nil {
|
||||
logger.Error("avatarDataConfig error, avatarId: %v", avatar.AvatarId)
|
||||
return
|
||||
}
|
||||
avatar.FightPropMap = make(map[uint32]float32)
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_NONE)] = 0.0
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_NONE)] = 0.0
|
||||
// 白字攻防血
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_BASE_ATTACK)] = float32(avatarDataConfig.GetBaseAttackByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_BASE_DEFENSE)] = float32(avatarDataConfig.GetBaseDefenseByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_BASE_HP)] = float32(avatarDataConfig.GetBaseHpByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_BASE_ATTACK)] = float32(avatarDataConfig.GetBaseAttackByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_BASE_DEFENSE)] = float32(avatarDataConfig.GetBaseDefenseByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_BASE_HP)] = float32(avatarDataConfig.GetBaseHpByLevel(avatar.Level))
|
||||
// 白字+绿字攻防血
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CUR_ATTACK)] = float32(avatarDataConfig.GetBaseAttackByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CUR_DEFENSE)] = float32(avatarDataConfig.GetBaseDefenseByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_MAX_HP)] = float32(avatarDataConfig.GetBaseHpByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CUR_ATTACK)] = float32(avatarDataConfig.GetBaseAttackByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CUR_DEFENSE)] = float32(avatarDataConfig.GetBaseDefenseByLevel(avatar.Level))
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_MAX_HP)] = float32(avatarDataConfig.GetBaseHpByLevel(avatar.Level))
|
||||
// 当前血量
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CUR_HP)] = float32(avatar.CurrHP)
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CUR_HP)] = float32(avatar.CurrHP)
|
||||
// 双暴
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CRITICAL)] = float32(avatarDataConfig.Critical)
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CRITICAL_HURT)] = float32(avatarDataConfig.CriticalHurt)
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CRITICAL)] = float32(avatarDataConfig.Critical)
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CRITICAL_HURT)] = float32(avatarDataConfig.CriticalHurt)
|
||||
// 元素充能
|
||||
avatar.FightPropMap[uint32(constant.FightPropertyConst.FIGHT_PROP_CHARGE_EFFICIENCY)] = 1.0
|
||||
avatar.FightPropMap[uint32(constant.FIGHT_PROP_CHARGE_EFFICIENCY)] = 1.0
|
||||
p.SetCurrEnergy(avatar, avatar.CurrEnergy, true)
|
||||
}
|
||||
|
||||
@@ -89,8 +89,8 @@ func (p *Player) GetAvatarIdByGuid(guid uint64) uint32 {
|
||||
}
|
||||
|
||||
func (p *Player) AddAvatar(avatarId uint32) {
|
||||
avatarDataConfig, exist := gdconf.CONF.AvatarDataMap[int32(avatarId)]
|
||||
if !exist {
|
||||
avatarDataConfig := gdconf.GetAvatarDataById(int32(avatarId))
|
||||
if avatarDataConfig == nil {
|
||||
logger.Error("avatar data config is nil, avatarId: %v", avatarId)
|
||||
return
|
||||
}
|
||||
@@ -103,14 +103,14 @@ func (p *Player) AddAvatar(avatarId uint32) {
|
||||
} else {
|
||||
skillDepotId = avatarDataConfig.SkillDepotId
|
||||
}
|
||||
avatarSkillDepotDataConfig, exist := gdconf.CONF.AvatarSkillDepotDataMap[skillDepotId]
|
||||
if !exist {
|
||||
avatarSkillDepotDataConfig := gdconf.GetAvatarSkillDepotDataById(skillDepotId)
|
||||
if avatarSkillDepotDataConfig == nil {
|
||||
logger.Error("avatar skill depot data config is nil, skillDepotId: %v", skillDepotId)
|
||||
return
|
||||
}
|
||||
avatar := &Avatar{
|
||||
AvatarId: avatarId,
|
||||
LifeState: constant.LifeStateConst.LIFE_ALIVE,
|
||||
LifeState: constant.LIFE_STATE_ALIVE,
|
||||
Level: 1,
|
||||
Exp: 0,
|
||||
Promote: 0,
|
||||
@@ -155,16 +155,16 @@ func (p *Player) AddAvatar(avatarId uint32) {
|
||||
func (p *Player) SetCurrEnergy(avatar *Avatar, value float64, max bool) {
|
||||
var avatarSkillDataConfig *gdconf.AvatarSkillData = nil
|
||||
if avatar.AvatarId == 10000005 || avatar.AvatarId == 10000007 {
|
||||
avatarSkillDepotDataConfig, exist := gdconf.CONF.AvatarSkillDepotDataMap[int32(avatar.SkillDepotId)]
|
||||
if !exist {
|
||||
avatarSkillDepotDataConfig := gdconf.GetAvatarSkillDepotDataById(int32(avatar.SkillDepotId))
|
||||
if avatarSkillDepotDataConfig == nil {
|
||||
return
|
||||
}
|
||||
avatarSkillDataConfig, exist = gdconf.CONF.AvatarSkillDataMap[avatarSkillDepotDataConfig.EnergySkill]
|
||||
if !exist {
|
||||
avatarSkillDataConfig = gdconf.GetAvatarSkillDataById(avatarSkillDepotDataConfig.EnergySkill)
|
||||
if avatarSkillDataConfig == nil {
|
||||
return
|
||||
}
|
||||
} else {
|
||||
avatarSkillDataConfig = gdconf.CONF.GetAvatarEnergySkillConfig(avatar.AvatarId)
|
||||
avatarSkillDataConfig = gdconf.GetAvatarEnergySkillConfig(avatar.AvatarId)
|
||||
}
|
||||
if avatarSkillDataConfig == nil {
|
||||
logger.Error("get avatar energy skill is nil, avatarId: %v", avatar.AvatarId)
|
||||
|
||||
@@ -46,7 +46,7 @@ func (p *Player) GetItemIdByItemAndWeaponGuid(guid uint64) uint32 {
|
||||
}
|
||||
|
||||
func (p *Player) GetItemCount(itemId uint32) uint32 {
|
||||
prop, ok := constant.ItemConstantConst.VIRTUAL_ITEM_PROP[itemId]
|
||||
prop, ok := constant.VIRTUAL_ITEM_PROP[itemId]
|
||||
if ok {
|
||||
value := p.PropertiesMap[prop]
|
||||
return value
|
||||
|
||||
@@ -48,8 +48,8 @@ func (p *Player) AddReliquary(itemId uint32, reliquaryId uint64, mainPropId uint
|
||||
AvatarId: 0,
|
||||
Guid: 0,
|
||||
}
|
||||
itemDataConfig, exist := gdconf.CONF.ItemDataMap[int32(itemId)]
|
||||
if !exist {
|
||||
itemDataConfig := gdconf.GetItemDataById(int32(itemId))
|
||||
if itemDataConfig == nil {
|
||||
logger.Error("reliquary config is nil, itemId: %v", itemId)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -26,35 +26,35 @@ func (s *StaminaInfo) SetStaminaCost(state proto.MotionState) {
|
||||
// 消耗耐力
|
||||
case proto.MotionState_MOTION_DASH:
|
||||
// 快速跑步
|
||||
s.CostStamina = constant.StaminaCostConst.DASH
|
||||
s.CostStamina = constant.STAMINA_COST_DASH
|
||||
case proto.MotionState_MOTION_FLY, proto.MotionState_MOTION_FLY_FAST, proto.MotionState_MOTION_FLY_SLOW:
|
||||
// 滑翔
|
||||
s.CostStamina = constant.StaminaCostConst.FLY
|
||||
s.CostStamina = constant.STAMINA_COST_FLY
|
||||
case proto.MotionState_MOTION_SWIM_DASH:
|
||||
// 快速游泳
|
||||
s.CostStamina = constant.StaminaCostConst.SWIM_DASH
|
||||
s.CostStamina = constant.STAMINA_COST_SWIM_DASH
|
||||
case proto.MotionState_MOTION_SKIFF_DASH:
|
||||
// 浪船加速
|
||||
s.CostStamina = constant.StaminaCostConst.SKIFF_DASH
|
||||
s.CostStamina = constant.STAMINA_COST_SKIFF_DASH
|
||||
// 恢复耐力
|
||||
case proto.MotionState_MOTION_DANGER_RUN, proto.MotionState_MOTION_RUN:
|
||||
// 正常跑步
|
||||
s.CostStamina = constant.StaminaCostConst.RUN
|
||||
s.CostStamina = constant.STAMINA_COST_RUN
|
||||
case proto.MotionState_MOTION_DANGER_STANDBY_MOVE, proto.MotionState_MOTION_DANGER_STANDBY, proto.MotionState_MOTION_LADDER_TO_STANDBY, proto.MotionState_MOTION_STANDBY_MOVE, proto.MotionState_MOTION_STANDBY:
|
||||
// 站立
|
||||
s.CostStamina = constant.StaminaCostConst.STANDBY
|
||||
s.CostStamina = constant.STAMINA_COST_STANDBY
|
||||
case proto.MotionState_MOTION_DANGER_WALK, proto.MotionState_MOTION_WALK:
|
||||
// 走路
|
||||
s.CostStamina = constant.StaminaCostConst.WALK
|
||||
s.CostStamina = constant.STAMINA_COST_WALK
|
||||
case proto.MotionState_MOTION_SKIFF_BOARDING, proto.MotionState_MOTION_SKIFF_NORMAL:
|
||||
// 浪船正常移动或停下
|
||||
s.CostStamina = constant.StaminaCostConst.SKIFF_NORMAL
|
||||
s.CostStamina = constant.STAMINA_COST_SKIFF_NORMAL
|
||||
case proto.MotionState_MOTION_POWERED_FLY:
|
||||
// 滑翔加速 (风圈等)
|
||||
s.CostStamina = constant.StaminaCostConst.POWERED_FLY
|
||||
s.CostStamina = constant.STAMINA_COST_POWERED_FLY
|
||||
case proto.MotionState_MOTION_SKIFF_POWERED_DASH:
|
||||
// 浪船加速 (风圈等)
|
||||
s.CostStamina = constant.StaminaCostConst.POWERED_SKIFF
|
||||
s.CostStamina = constant.STAMINA_COST_POWERED_SKIFF
|
||||
// 缓慢动作将在客户端发送消息后消耗
|
||||
case proto.MotionState_MOTION_CLIMB, proto.MotionState_MOTION_SWIM_MOVE:
|
||||
// 缓慢攀爬 或 缓慢游泳
|
||||
|
||||
@@ -61,7 +61,7 @@ func (t *TeamInfo) UpdateTeam() {
|
||||
t.TeamResonancesConfig = make(map[int32]bool)
|
||||
teamElementTypeCountMap := make(map[uint16]uint8)
|
||||
for _, avatarId := range activeTeam.GetAvatarIdList() {
|
||||
avatarSkillDataConfig := gdconf.CONF.GetAvatarEnergySkillConfig(avatarId)
|
||||
avatarSkillDataConfig := gdconf.GetAvatarEnergySkillConfig(avatarId)
|
||||
if avatarSkillDataConfig == nil {
|
||||
logger.Error("get avatar energy skill is nil, avatarId: %v", avatarId)
|
||||
continue
|
||||
|
||||
@@ -68,8 +68,8 @@ func (p *Player) AddWeapon(itemId uint32, weaponId uint64) {
|
||||
Refinement: 0,
|
||||
Guid: 0,
|
||||
}
|
||||
itemDataConfig, exist := gdconf.CONF.ItemDataMap[int32(itemId)]
|
||||
if !exist {
|
||||
itemDataConfig := gdconf.GetItemDataById(int32(itemId))
|
||||
if itemDataConfig == nil {
|
||||
logger.Error("weapon config is nil, itemId: %v", itemId)
|
||||
return
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user