Documentation ¶
Index ¶
- Constants
- Variables
- func SpellLevel(id uint32) uint32
- func SpellType(id uint32) uint32
- type AuraEntry
- type AuraInfo
- type AuraTriggerEntry
- type CostLootObj
- type EAttackType
- type EAuraAddResult
- type EAuraCastingType
- type EAuraEffectForDmg
- type EAuraEffectStep
- type EAuraEffectType
- type EAuraEventConditionType
- type EAuraEventExType
- type EAuraEventType
- type EAuraRemoveMode
- type EAuraSlotGroup
- type EAuraSyncStep
- type EAuraTriggerType
- type EAuraWrapResult
- type EBehaviourType
- type EChooseUnitType
- type EDmgInfoType
- type EEffectTargetLimitType
- type EEnterCombatType
- type EHeroRaceType
- type EHeroState
- type EImmunityType
- type ESchoolType
- type ESelectTargetType
- type ESpellCastType
- type ESpellCostType
- type ESpellEffectModType
- type ESpellEffectType
- type ESpellPurposeMaskType
- type ESpellStateType
- type ESpellType
- type ESpellValueType
- type EStateChangeMode
- type ETargetChooseType
- type PlayerLevelupEntry
- type PluginObj
- type SceneEntry
- type SpellBase
- type SpellCDData
- type SpellEntry
- type UnitEntry
- type UnitGroupEntry
Constants ¶
const ( Att_Begin = 0 // 32位属性开始 Att_FirstBegin = 0 // 一级属性开始 Att_Str = 0 // 0 力量 Att_Agl = 1 // 1 敏捷 Att_Con = 2 // 2 耐力 Att_Int = 3 // 3 智力 Att_AtkSpeed = 4 // 4 攻击速度 Att_FirstEnd = 5 // 一级属性结束 Att_SecondBegin = 5 // 二级属性开始 Att_Atk = 5 // 5 攻击力 Att_Def = 6 // 6 防御力 Att_CriProb = 7 // 7 暴击率 Att_CriDmg = 8 // 8 暴击伤害 Att_EffectHit = 9 // 9 效果命中 Att_EffectResist = 10 // 10 效果抵抗 Att_ConPercent = 11 // 11 体力加层 Att_AtkPercent = 12 // 12 攻击力加层 Att_DefPercent = 13 // 13 防御力加层 Att_Rage = 14 // 14 怒气 Att_Hit = 15 // 15 命中 Att_Dodge = 16 // 16 闪避 Att_Block = 17 // 17 格挡 Att_Broken = 18 // 18 破击 Att_DmgInc = 19 // 19 伤害加层 Att_DmgDec = 20 // 20 伤害减免 Att_SecondEnd = 21 // 二级属性结束 Att_End = 21 // 32位属性结束 Att_Plus_Begin = 21 // 64位属性开始 Att_Plus_CurHP = 21 // 当前血量 Att_Plus_CurMP = 22 // 当前蓝量 Att_Plus_MaxHP = 23 // 23 血量 Att_Plus_MaxMP = 24 // 24 蓝量 Att_Plus_End = 25 // 64位属性结束 )
一级属性
const ( AttNum int = Att_End - Att_Begin // 32位属性数量 PlusAttNum int = Att_Plus_End - Att_Plus_Begin // 64位属性数量 )
const ( Aura_HeroSyncNum = 30 + 30 // hero增益+减益aura数量 Aura_MaxPassive = 5 // 被动aura数量 Aura_MaxDuration = 20 * 24 * time.Hour // aura持续最多20天 )
Positive + Negative
const ( Combat_MaxSpell = 50 // 战斗管理器最多50个技能 Combat_MaxAura = 50 // 战斗管理器最多50个buff Combat_DmgModTypeNum = 3 )
const ( ImmunityType_Begin EImmunityType = iota ImmunityType_Damage = iota - 1 // 0 伤害免疫 ImmunityType_Mechanic // 1 状态免疫 ImmunityType_Dispel // 2 免疫驱散 ImmunityType_End )
const ( CostLoot_Item = iota CostLoot_Token CostLoot_Hero CostLoot_Player CostLoot_Blade CostLoot_Rune CostLoot_End )
const ( Item_TypeItem = iota // 普通物品 Item_TypeEquip // 装备 Item_TypePresent // 礼包 Item_TypeRune // 御魂(未鉴定) )
const ( Item_Effect_Null = -1 // 无效果 Item_Effect_Loot = 0 // 掉落 Item_Effect_RuneDefine = 1 // 鉴定御魂 Item_Effect_End = 2 )
const ( Player_MaxPlayer = 10 // how many players can be created per client Player_MaxLevel = 60 )
const ( Plugin_Player = iota Plugin_Hero Plugin_Item Plugin_Blade Plugin_Rune Plugin_End )
const ( Rune_TypeBegin = iota // 魂石类型 Rune_TypeA = iota - 1 Rune_TypeB Rune_TypeC Rune_TypeEnd )
const ( Rune_PositionBegin = iota // 魂石位置 Rune_Position1 = iota - 1 // 1号位 Rune_Position2 // 2号位 Rune_Position3 // 3号位 Rune_Position4 // 4号位 Rune_Position5 // 5号位 Rune_Position6 // 6号位 Rune_PositionEnd )
const ( Rune_MaxStar = 6 // 魂石最高星级 Rune_MainAtt = 1 // 魂石主属性一条 Rune_ViceAtt = 5 // 魂石副属性五条 Rune_AttNum = Rune_MainAtt + Rune_ViceAtt )
const ( Scene_TypeBegin = iota Scene_TypeStage = iota - 1 // 关卡场景 Scene_TypeArena // 竞技场场景 Scene_TypeEnd )
const ( Scene_MaxNumPerCombat = 5000 // 每台combat最多跑5000个场景 Scene_MaxUnitPerScene = 1000 // 每个scene最多跑1000个unit )
const ( SnowFlake_Account = iota SnowFlake_Player SnowFlake_Hero SnowFlake_Item SnowFlake_Blade SnowFlake_Rune SnowFlake_Scene SnowFlake_End )
const ( SpellEffectNum = 3 // 技能效果数量 SpellEffectParamNum = 6 AuraFlagNum = 32 MaxChargeNum = 6 MaxFormSpellNum = 20 )
const ( SpellCostType_Begin ESpellCostType = iota SpellCostType_Null = iota - 1 // 0 无 SpellCostType_HP // 1 生命 SpellCostType_MP // 2 法力 SpellCostType_End )
const ( TargetChooseType_Begin = iota TargetChooseType_Null = iota - 1 // 0 不需要选取 TargetChooseType_SingleTarget // 1 选取单个目标 TargetChooseType_Area // 2 选取地面范围 TargetChooseType_End )
const ( SpellPurposeMask_Begin = iota SpellPurposeMask_None = iota - 1 // 0 无目的 SpellPurposeMask_Positive // 1 有益技能 SpellPurposeMask_Negative // 2 有害技能 )
const ( EnterCombatType_Begin = iota EnterCombatType_None = iota - 1 // 0 不会进入战斗状态 EnterCombatType_TargetHit // 1 命中目标进入战斗状态 EnterCombatType_TargetCombat // 2 根据目标是否在战斗状态 EnterCombatType_End )
const ( ChooseUnit_Begin = iota ChooseUnit_Caster = iota - 1 // 0 技能施放者 ChooseUnit_Owner // 1 技能拥有者 ChooseUnit_Target // 2 目标 ChooseUnit_End )
const ( EffectTargetLimit_Begin = iota EffectTargetLimit_Null = iota - 1 // 0 无限制 EffectTargetLimit_Self // 1 效果只能作用于技能施放者 EffectTargetLimit_UnSelf // 2 效果不会作用于技能施放者 EffectTargetLimit_Caster_State // 3 施放者只有处于某种状态效果才会作用 EffectTargetLimit_Target_State // 4 目标只有处于某种状态效果才会作用 EffectTargetLimit_Caster_HP_Low // 5 施放者当前血量低于最大血量百分比时触发 EffectTargetLimit_Target_HP_Low // 6 目标当前血量低于最大血量百分比时触发 EffectTargetLimit_Target_HP_High // 7 目标当前血量高于最大血量百分比时触发 EffectTargetLimit_Pct // 8 百分比几率触发(1-10000) EffectTargetLimit_Target_AuraNot // 9 目标处于某个aura,效果不会作用 EffectTargetLimit_Target_Aura // 10 目标处于某个aura,效果会作用 EffectTargetLimit_Target_Race // 11 效果目标种族类型限制 EffectTargetLimit_Caster_AuraState // 12 释放者AuraState限制 EffectTargetLimit_Target_AuraState // 13 目标AuraState限制 EffectTargetLimit_Target_GT_Level // 14 大于目标等级限制 EffectTargetLimit_Target_LT_Level // 15 小于等于目标等级限制 EffectTargetLimit_Caster_AuraPN // 16 释放者增益减益Buff限制 EffectTargetLimit_Target_AuraPN // 17 目标增益减益Buff限制 EffectTargetLimit_End )
const ( SpellValue_Begin ESpellValueType = iota SpellValue_FLAT = iota - 1 // 0 平值加成 SpellValue_PCT // 1 百分比加成 SpellValue_MASK // 2 掩码 )
const ( StoreType_Begin = iota StoreType_User = iota - 1 StoreType_Account StoreType_LitePlayer StoreType_Player StoreType_Item StoreType_Hero StoreType_Blade StoreType_Token StoreType_Rune StoreType_Talent StoreType_End )
const ( Token_Gold = iota Token_Diamond Token_Honour Token_End )
const (
Account_OnlineTimeout = 20 * time.Second
)
const AuraRemoveMode_Removed = 1<<AuraRemoveMode_Default | 1<<AuraRemoveMode_Replace | 1<<AuraRemoveMode_Cancel | 1<<AuraRemoveMode_Dispel | 1<<AuraRemoveMode_Consume | 1<<AuraRemoveMode_Delete | 1<<AuraRemoveMode_Interrupt | 1<<AuraRemoveMode_Destroy
const (
Blade_MaxBlade = 4
)
const (
Hero_MaxEquip = 4 // how many equips can put on per hero
)
Variables ¶
var ( ErrSpellCooldown = errors.New("spell cool down") ErrSpellCasterStateLimit = errors.New("spell caster state limit") ErrSpellCasterCostLimit = errors.New("spell caster cost limit") ErrSpellTargetNotExist = errors.New("spell target not exist") ErrSpellTargetInvalid = errors.New("spell target invalid") ErrSpellTargetStateLimit = errors.New("spell target state limit") )
------------------------------------------------------------------------------- 技能释放失败错误返回值 -------------------------------------------------------------------------------
var Combat_DmgModType = [Combat_DmgModTypeNum]EAuraEffectType{ AuraEffectType_DmgMod, AuraEffectType_DmgFix, AuraEffectType_AbsorbAllDmg, }
Functions ¶
func SpellLevel ¶
Types ¶
type AuraEntry ¶
type AuraEntry struct { SpellBase `json:",inline"` DispelFlags uint32 `json:"dispel_flags"` // 技能效果的所属驱散类型 DurationFlags uint32 `json:"duration_flags"` // 技能效果所属强化buff时间类型 OwnerStateCheckFlag uint32 `json:"owner_state_check_flag"` // 是否判断所有者状态标示 OwnerStateCheckBitSet *bitset.BitSet `json:"-"` OwnerStateLimit uint32 `json:"owner_state_limit"` // 所有者状态限制 OwnerStateLimitBitSet *bitset.BitSet `json:"-"` AuraCastType EAuraCastingType `json:"aura_cast_type"` // aura效果施放类型 AuraState int32 `json:"aura_state"` // aura state Duration int32 `json:"duration"` EffectTimes int32 `json:"effect_times"` DependCaster bool `json:"depend_caster"` // 依赖施法者 EffectPriority int32 `json:"effect_priority"` // 同类效果作用优先 MultiWrap bool `json:"multi_wrap"` DecByTarget bool `json:"dec_by_target"` // 是否根据目标等级衰减效果 RoundUpdateMask uint32 `json:"round_update_mask"` // aura更新回合数掩码(0-31回合) Effects [SpellEffectNum]EAuraEffectType `json:"effects"` // 技能效果类型 TriggerId [SpellEffectNum]uint32 `json:"trigger_id"` // 触发器ID RemoveEffect [SpellEffectNum]uint32 `json:"remove_effect"` // aura按删除方式作用移除时效果 TriggerCount [SpellEffectNum]uint32 `json:"trigger_count"` // 可触发次数 TriggerCd [SpellEffectNum]int32 `json:"trigger_cd"` // 触发CD }
------------------------------------------------------------------------------- aura静态属性 -------------------------------------------------------------------------------
type AuraInfo ¶
type AuraInfo struct { CasterID int64 `json:"caster_id"` AuraID uint32 `json:"aura_id"` CurTime int32 `json:"cur_time"` TotalTime int32 `json:"total_time"` WrapTimes uint32 `json:"wrap_times"` }
------------------------------------------------------------------------------- aura同步属性 -------------------------------------------------------------------------------
type AuraTriggerEntry ¶
type AuraTriggerEntry struct { ID uint32 `json:"_id"` // 触发器ID SpellId uint32 `json:"spell_id"` // 触发技能ID FamilyMask uint32 `json:"family_mask"` // 技能所属分组 FamilyRace EHeroRaceType `json:"family_race"` // 触发技能种族 DmgInfoType uint32 `json:"dmg_info_type"` // 伤害方式掩码 SchoolType ESchoolType `json:"school_type"` // 伤害类型 SpellTypeMask uint32 `json:"spell_type_mask"` // 技能类型掩码 TriggerType EAuraTriggerType `json:"trigger_type"` // 触发器类型 TriggerMisc1 uint32 `json:"trigger_misc1"` // 触发器参数1 TriggerMisc2 uint32 `json:"trigger_misc2"` // 触发器参数2 EventProp int32 `json:"event_prop"` // 触发几率 ConditionType EAuraEventConditionType `json:"condition_type"` // 状态条件类型 ConditionMisc1 int32 `json:"condition_misc1"` // 条件参数1 ConditionMisc2 int32 `json:"condition_misc2"` // 条件参数2 AddHead bool `json:"add_head"` // 触发器添加到队列头部,不再继续相应相同事件的触发(防止死循环) }
------------------------------------------------------------------------------- 触发器 -------------------------------------------------------------------------------
type CostLootObj ¶
type EAttackType ¶
type EAttackType int32
------------------------------------------------------ 攻击类型 ------------------------------------------------------
const ( AttackType_Begin EAttackType = iota AttackType_Melee EAttackType = iota - 1 // 0 物理攻击 AttackType_Magic // 1 魔法攻击 AttackType_End )
type EAuraAddResult ¶
type EAuraAddResult int32
------------------------------------------------------------------------------- aura添加结果 -------------------------------------------------------------------------------
const ( AuraAddResult_Null EAuraAddResult = -1 // 无效 AuraAddResult_Begin EAuraAddResult = iota AuraAddResult_Success EAuraAddResult = iota - 1 // 0 成功 AuraAddResult_Inferior // 1 有更强的Aura AuraAddResult_Full // 2 没有空位 AuraAddResult_Immunity // 3 免疫 AuraAddResult_Resistance // 4 抵抗 AuraAddResult_End )
type EAuraCastingType ¶
type EAuraCastingType int32
------------------------------------------------------------------------------- aura施放类型 -------------------------------------------------------------------------------
const ( AuraCasting_Begin EAuraCastingType = iota AuraCasting_Inter EAuraCastingType = iota - 1 // 0 间隔作用 AuraCasting_Persist // 1 持续作用 AuraCasting_Times // 2 作用次数限量 AuraCasting_End )
type EAuraEffectForDmg ¶
type EAuraEffectForDmg int32
------------------------------------------------------------------------------- aura对伤害的影响 -------------------------------------------------------------------------------
const ( AuraEffectForDmg_Begin EAuraEffectForDmg = iota AuraEffectForDmg_Null EAuraEffectForDmg = iota - 1 // 0 无 AuraEffectForDmg_Transform // 1 伤害类型转化 AuraEffectForDmg_ValueMod // 2 伤害值加成减免 AuraEffectForDmg_Absorb // 3 伤害吸收 AuraEffectForDmg_End )
type EAuraEffectStep ¶
type EAuraEffectStep int32
------------------------------------------------------------------------------- Aura作用阶段 -------------------------------------------------------------------------------
const ( AuraEffectStep_Begin EAuraEffectStep = iota AuraEffectStep_Apply EAuraEffectStep = iota - 1 // 0 获得Aura AuraEffectStep_Effect // 1 Aura作用 AuraEffectStep_Remove // 2 移除Aura AuraEffectStep_Check // 3 检查效果 AuraEffect_End )
type EAuraEffectType ¶
type EAuraEffectType int32
------------------------------------------------------------------------------- aura效果类型 -------------------------------------------------------------------------------
const ( AuraEffectType_Begin EAuraEffectType = iota AuraEffectType_Null EAuraEffectType = iota - 1 // 0 无效果 AuraEffectType_PeriodDamage // 1 周期伤害 AuraEffectType_ModAtt // 2 属性改变 AuraEffectType_Spell // 3 施放技能 AuraEffectType_State // 4 状态变更 AuraEffectType_Immunity // 5 免疫变更 AuraEffectType_DmgMod // 6 伤害转换(总量一定) AuraEffectType_NewDmg // 7 生成伤害(原伤害不变) AuraEffectType_DmgFix // 8 限量伤害(改变原伤害) AuraEffectType_ChgMelee // 9 替换普通攻击 AuraEffectType_Shield // 10 血盾 AuraEffectType_DmgAttMod // 11 改变伤害属性 AuraEffectType_AbsorbAllDmg // 12 全伤害吸收 AuraEffectType_DmgAccumulate // 13 累计伤害 AuraEffectType_MeleeSpell // 14 释放普通攻击 AuraEffectType_LimitAttack // 15 限制攻击力 AuraEffectType_PerioHeal // 16 周期治疗 AuraEffectType_ModAttByAlive // 17 根据当前友方存活人数,计算属性改变 AuraEffectType_ModAttByEnemyAlive // 18 根据当前敌方存活人数,计算属性改变 AuraEffectType_End )
type EAuraEventConditionType ¶
type EAuraEventConditionType int32
------------------------------------------------------------------------------- 触发技能效果所需状态的类型 -------------------------------------------------------------------------------
const ( AuraEventCondition_None EAuraEventConditionType = -1 AuraEventCondition_Begin EAuraEventConditionType = iota AuraEventCondition_HPLowerFlat EAuraEventConditionType = iota - 1 // 0 体力平值低于 AuraEventCondition_HPLowerPct // 1 体力百分比低于 AuraEventCondition_HPHigherFlat // 2 体力平值高于 AuraEventCondition_HPHigherPct // 3 体力百分比高于 AuraEventCondition_AnyUnitState // 4 处于任一状态 AuraEventCondition_AllUnitState // 5 处于所有状态 AuraEventCondition_AuraState // 6 处于Aura状态 AuraEventCondition_WeaponMask // 7 穿着武器类型 AuraEventCondition_HaveShield // 8 穿着盾牌 AuraEventCondition_TargetClass // 9 目标类型 AuraEventCondition_StrongTarget // 10 目标血量比自己多 AuraEventCondition_TargetAuraState // 11 目标处于Aura状态 AuraEventCondition_TargetAllUnitState // 12 目标处于所有状态 AuraEventCondition_TargetAnyUnitState // 13 目标处于任意状态 AuraEventCondition_End )
type EAuraEventExType ¶
type EAuraEventExType int32
------------------------------------------------------ 技能结果 ------------------------------------------------------
type EAuraEventType ¶
type EAuraEventType int32
------------------------------------------------------------------------------- 技能效果相应的事件类型 -------------------------------------------------------------------------------
const ( AuraEventEx_Begin EAuraEventType = iota AuraEventEx_Null EAuraEventType = iota - 1 // 0 无 AuraEventEx_Normal_Hit // 1 普通命中 AuraEventEx_Critical_Hit // 2 暴击 AuraEventEx_Miss // 3 未命中 AuraEventEx_Dodge // 4 躲闪 AuraEventEx_Block // 5 格挡 AuraEventEx_Immnne // 6 免疫 AuraEventEx_Absorb // 7 吸收 AuraEventEx_Not_Active_Spell // 8 无伤害/治疗技能 AuraEventEx_Only_Active_Spell // 9 伤害/治疗技能 AuraEventEx_Trigger_Always // 10 无条件触发 AuraEventEx_IgnoreArmor // 11 忽略伤害减免 AuraEventEx_RageResume // 12 恢复目标怒气(恢复目标25点怒气) AuraEventEx_EnergyResume // 13 恢复目标能量(恢复目标30点能量) AuraEventEx_Killed // 14 被击杀 AuraEventEx_Invalid // 15 技能无效 AuraEventEx_UnDead // 16 不死状态触发 AuraEventEx_GroupDmg // 17 群体伤害技能 // 内部标识 AuraEventEx_Internal_Cant_Trigger // 18 不可触发 AuraEventEx_Internal_Triggered // 19 已触发过 AuraEventEx_End )
const ( AuraEvent_Begin EAuraEventType = iota AuraEvent_None EAuraEventType = iota - 1 AuraEvent_Killed // 1 被杀 AuraEvent_Kill // 2 击杀 AuraEvent_Hit // 3 普通攻击命中 AuraEvent_Taken_Hit // 4 被普通攻击命中 AuraEvent_On_Do_Periodic // 5 造成周期伤害/治疗 AuraEvent_On_Take_Periodic // 6 受到周期伤害/治疗 AuraEvent_Rage_Hit // 7 怒气技能命中 AuraEvent_Taken_RageHit // 8 被怒气技能命中 AuraEvent_Rune_Hit // 9 符文技能命中 AuraEvent_Taken_Rune_Hit // 10 被符文技能命中 AuraEvent_Taken_Aura_Trigger // 11 被buff触发技能命中 AuraEvent_Pet_Hit // 12 宠物技能命中 AuraEvent_Taken_Pet_Hit // 13 被宠物技能命中 AuraEvent_Taken_Any_Damage // 14受到任意伤害 EAET_End )
type EAuraRemoveMode ¶
type EAuraRemoveMode int32
------------------------------------------------------------------------------- aura删除方式 -------------------------------------------------------------------------------
const ( AuraRemoveMode_Begin EAuraRemoveMode = iota AuraRemoveMode_Null EAuraRemoveMode = iota - 1 // 0 无 AuraRemoveMode_Running AuraRemoveMode_Default AuraRemoveMode_Replace AuraRemoveMode_Cancel AuraRemoveMode_Dispel AuraRemoveMode_Consume AuraRemoveMode_Delete AuraRemoveMode_Interrupt AuraRemoveMode_Destroy AuraRemoveMode_Registered AuraRemoveMode_Hangup AuraRemoveMode_End )
type EAuraSlotGroup ¶
type EAuraSlotGroup int32
------------------------------------------------------------------------------- aura slot -------------------------------------------------------------------------------
const ( AuraSlotGroup_Begin EAuraSlotGroup = iota AuraSlotGroup_Positive EAuraSlotGroup = iota - 1 // 0 增益aura AuraSlotGroup_Negative // 1 减益aura AuraSlotGroup_Passive // 2 被动aura AuraSlotGroup_End )
type EAuraSyncStep ¶
type EAuraSyncStep int32
------------------------------------------------------------------------------- aura sync step -------------------------------------------------------------------------------
const ( AuraSyncStep_Begin EAuraSyncStep = iota AuraSyncStep_Add EAuraSyncStep = iota - 1 AuraSyncStep_Update AuraSyncStep_Remove AuraSyncStep_End )
type EAuraTriggerType ¶
type EAuraTriggerType int32
------------------------------------------------------------------------------- 触发器类型 -------------------------------------------------------------------------------
const ( AuraTrigger_Begin EAuraTriggerType = iota AuraTrigger_SpellResult EAuraTriggerType = iota - 1 AuraTrigger_State AuraTrigger_Behaviour AuraTrigger_AuraState AuraTrigger_End )
type EAuraWrapResult ¶
type EAuraWrapResult int32
------------------------------------------------------------------------------- Aura叠加结果 -------------------------------------------------------------------------------
const ( AuraWrapResult_Begin EAuraWrapResult = iota AuraWrapResult_Add EAuraWrapResult = iota - 1 // 0 追加 AuraWrapResult_Replace // 1 替换 AuraWrapResult_Wrap // 2 叠加 AuraWrapResult_Invalid // 3 加不上 AuraWrapResult_End )
type EBehaviourType ¶
type EBehaviourType int32
------------------------------------------------------------------------------- 行为类型 -------------------------------------------------------------------------------
const ( BehaviourType_Null EBehaviourType = -1 BehaviourType_Begin EBehaviourType = iota BehaviourType_SpellFinish EBehaviourType = iota - 1 // 0 技能结束触发 BehaviourType_Start // 1 战斗开始触发 BehaviourType_BeforeMelee // 2 普通前触发 BehaviourType_End )
type EChooseUnitType ¶
type EChooseUnitType int32
----------------------------------------------------------------------------- 选择方式 -----------------------------------------------------------------------------
type EDmgInfoType ¶
type EDmgInfoType int32
------------------------------------------------------ 伤害方式 ------------------------------------------------------
const ( DmgInfo_Begin EDmgInfoType = iota DmgInfo_Null EDmgInfoType = iota - 1 // 0 无 DmgInfo_Damage // 1 伤害 DmgInfo_Heal // 2 治疗 DmgInfo_Placate // 3 安抚 DmgInfo_Enrage // 4 激怒 DmgInfo_AverageHP // 5 平均血量 DmgInfo_End )
type EEffectTargetLimitType ¶
type EEffectTargetLimitType int32
------------------------------------------------------------------------------- 效果的目标限制 -------------------------------------------------------------------------------
type EEnterCombatType ¶
type EEnterCombatType int32
----------------------------------------------------------------------------- 技能进入战斗类型 -----------------------------------------------------------------------------
type EHeroRaceType ¶
type EHeroRaceType int32
------------------------------------------------------------------------------------------ 英雄种族 ------------------------------------------------------------------------------------------
const ( HeroRace_Begin EHeroRaceType = iota HeroRace_Kindom EHeroRaceType = iota - 1 // 王国 HeroRace_forest // 森林 HeroRace_End )
type EHeroState ¶
type EHeroState int32
------------------------------------------------------------------------------- 状态类型 -------------------------------------------------------------------------------
const ( HeroState_Begin EHeroState = iota HeroState_Dead EHeroState = iota - 1 // 0 死亡 HeroState_Solid // 1 石化 HeroState_Freeze // 2 冻结 HeroState_Stun // 3 眩晕 HeroState_Fire // 4 灼烧 HeroState_Seal // 5 封印 HeroState_UnBeat // 6 无敌 HeroState_UnDead // 7 不死 HeroState_Anger // 8 风怒 HeroState_DoubleAttack // 9 连击 HeroState_Stealth // 10 隐匿 HeroState_Injury // 11 重伤 HeroState_Poison // 12 中毒 HeroState_Chaos // 13 混乱 HeroState_AntiHidden // 14 鹰眼 HeroState_ImmunityGroupDmg // 15 免疫群体伤害 HeroState_Paralyzed // 16 麻痹 HeroState_Taunt // 17 嘲讽 HeroState_End )
type EImmunityType ¶
type EImmunityType int32
------------------------------------------------------------------------------- 免疫类型 -------------------------------------------------------------------------------
type ESchoolType ¶
type ESchoolType int32
------------------------------------------------------ 伤害类型 ------------------------------------------------------
const ( SchoolType_Null ESchoolType = -1 SchoolType_Begin ESchoolType = iota SchoolType_Physics ESchoolType = iota - 1 // 0 物理伤害 SchoolType_Magic // 1 魔法伤害 SchoolType_End )
type ESelectTargetType ¶
type ESelectTargetType int32
------------------------------------------------------ 技能选中类型 ------------------------------------------------------
const ( SelectTarget_Begin ESelectTargetType = iota SelectTarget_Null ESelectTargetType = iota - 1 // 0 无目标 SelectTarget_Self // 1 自己 SelectTarget_Enemy_Single // 2 敌方单体目标 SelectTarget_Enemy_Single_Back // 3 敌方后排单体目标 SelectTarget_Friend_HP_Min // 4 友方血量最少目标 SelectTarget_Enemy_HP_Max // 5 敌方血量最多目标 SelectTarget_Enemy_Rage_Max // 6 敌方怒气最多目标 SelectTarget_Enemy_Column // 7 敌方直线目标 SelectTarget_Enemy_Frontline // 8 敌方横排目标 SelectTarget_Enemy_Supporter // 9 敌方后排目标 SelectTarget_Friend_Random // 10 友方随机目标 SelectTarget_Enemy_Random // 11 敌方随机目标 SelectTarget_Friend_All // 12 友方全体目标 SelectTarget_Enemy_All // 13 敌方全体目标 SelectTarget_Enemy_Rune // 14 敌方符文携带者 SelectTarget_Friend_Rune // 15 友方符文携带者 SelectTarget_Next_Attack // 16 下一个将要行动的敌人 SelectTarget_Friend_Rage_Min // 17 友方怒气最低 SelectTarget_Enemy_Frontline_Random // 18 敌放前横排随机 SelectTarget_Enemy_Backline_Random // 19 敌放后横排随机 SelectTarget_Friend_Frontline_Random // 20 友方前横排随机 SelectTarget_Friend_Backline_Random // 21 友方后横排随机 SelectTarget_Next_Attack_Row // 22 下一个将要行动的敌人所在横排 SelectTarget_Next_Attack_Column // 23 下一个将要行动的敌人所在竖排 SelectTarget_Next_Attack_Border // 24 下一个将要行动的敌人相邻 SelectTarget_Next_Attack_Explode // 25 将要行动的敌人周围所在目标 SelectTarget_Caster_Max_Attack // 26 有方攻击力最大目标 SelectTarget_Target_Max_Attack // 27 敌方攻击力最大目标 SelectTarget_Enemy_HP_Min // 28 地方血量最少的目标 SelectTarget_End )
type ESpellCastType ¶
type ESpellCastType int32
------------------------------------------------------ 技能施放方式 ------------------------------------------------------
const ( SpellCast_Begin ESpellCastType = iota SpellCast_Melee ESpellCastType = iota - 1 // 0 普通攻击 SpellCast_Instant // 1 瞬发施放技能 SpellCast_Channel // 2 引导技能 SpellCast_End )
type ESpellCostType ¶
type ESpellCostType int32
------------------------------------------------------------------------------- 技能效果消耗类型 -------------------------------------------------------------------------------
type ESpellEffectModType ¶
type ESpellEffectModType int32
------------------------------------------------------------------------------- 被动技能或buff对主动技能的影响类型 -------------------------------------------------------------------------------
const ( SpellEffectMod_Begin ESpellEffectModType = iota SpellEffectMod_DmgPct ESpellEffectModType = iota - 1 // 0 伤害百分比加成 // misc1 伤害 SpellEffectMod_Duration // 1 技能效果作用时间加成 // misc1 引导时间 SpellEffectMod_Threat // 2 仇恨加成 // misc1 仇恨 SpellEffectMod_Cost // 3 消耗(需要同步客户端) SpellEffectMod_Range // 4 技能效果作用距离加成(需要同步客户端) // misc1 距离 SpellEffectMod_Radius // 5 技能效果作用半径加成(需要同步客户端, 功能暂时未提供) // misc1 半径 SpellEffectMod_Crit_Pct // 6 暴击率加成(1-10000) // misc1 暴击率 SpellEffectMod_Not_Delay // 7 被攻击时起手时间不会被延长 // misc1==1 起手时间不会被延长 SpellEffectMod_Prepare_Time // 8 起手时间 // misc 吟唱时间 SpellEffectMod_Cooldown // 9 冷却时间 // misc 冷却时间 SpellEffectMod_Hit // 10 命中加成 // 命中率 SpellEffectMod_Charge // 11 材料消耗(功能暂时未提供) // misc1==1 不会消耗材料 SpellEffectMod_EffectTimes // 12 作用次数 // misc1 aura作用次数 SpellEffectMod_PassiveDuration // 13 被动持续时间加成 // misc1 aura持续时间 SpellEffectMod_EffectPct // 14 spell效果触发几率 // misc1 百分比增加量 SpellEffectMod_CritDmgPct // 15 暴击伤害百分比加成 // misc1 暴击伤害加成百分比 SpellEffectMod_CategoryCooldown // 16 组冷却时间 // misc 冷却时间 SpellEffectMod_IgnoreCasterStateCheck // 17 无视释放者状态限制判断 SpellEffectMod_End )
type ESpellEffectType ¶
type ESpellEffectType int32
------------------------------------------------------ 技能效果类型 ------------------------------------------------------
const ( SpellEffectType_Begin ESpellEffectType = iota SpellEffectType_Null ESpellEffectType = iota - 1 // 0 无 SpellEffectType_Damage // 1 伤害 SpellEffectType_Heal // 2 治疗 SpellEffectType_AddAura // 3 添加aura SpellEffectType_Placate // 4 安抚 SpellEffectType_Enrage // 5 激怒 SpellEffectType_CastSpell // 6 施放技能 SpellEffectType_Dispel // 7 驱散 SpellEffectType_ModAuraDuration // 8 强化aura作用时间 SpellEffectType_AverageHP // 9 平均血量 SpellEffectType_AuraNumDmg // 10 根据buff数量计算伤害 SpellEffectType_TargetAttDamage // 11 根据目标某一属性计算伤害 SpellEffectType_CasterAttDamage // 12 根据施放者某一属性计算伤害 SpellEffectType_DamageRaceMod // 13 种族加成伤害 SpellEffectType_DispelAndWeak // 14 驱散虚弱 SpellEffectType_AddLevelAura // 15 根据目标等级添加Aura SpellEffectType_LevelEnrage // 16 根据目标等级激怒 SpellEffectType_AddStateAura // 17 添加状态类Aura,并计算状态抗性 SpellEffectType_RandAura // 18 添加随机buff SpellEffectType_PetDamage // 19 宠物伤害 SpellEffectType_PetHeal // 20 宠物治疗 SpellEffectType_ChangeRageSpell // 21 替换英雄怒气技能 SpellEffectType_AddWrapAura // 22 添加可叠加buff SpellEffectType_ModPctCurHP // 23 百分比修改目标当前血量 SpellEffectType_End )
type ESpellPurposeMaskType ¶
type ESpellPurposeMaskType int32
----------------------------------------------------------------------------- 技能目的类型 -----------------------------------------------------------------------------
type ESpellStateType ¶
type ESpellStateType int32
------------------------------------------------------------------------------- 技能效果状态类型 -------------------------------------------------------------------------------
const ( SpellState_Begin ESpellStateType = iota SpellState_Prepare ESpellStateType = iota - 1 // 0 吟唱 SpellState_Casting // 1 施放 SpellState_Finish // 2 结束 SpellState_Idle // 3 空闲 SpellState_End )
type ESpellType ¶
type ESpellType int32
------------------------------------------------------ 技能类型 ------------------------------------------------------
const ( SpellType_Begin ESpellType = iota SpellType_Null ESpellType = iota - 1 // 0 无 SpellType_Melee // 1 普通攻击 SpellType_Rage // 2 怒气攻击 SpellType_Rune // 3 符文攻击 SpellType_TriggerNull // 4 以下皆为触发技能 SpellType + SpellType_TriggerNull SpellType_TriggerMelee // 5 普通攻击触发技能 SpellType_TriggerRage // 6 怒气攻击触发技能 SpellType_TriggerRune // 7 符文触发技能 SpellType_TriggerAura // 8 aura触发技能 SpellType_TriggerBeatBack // 9 反击 SpellType_TriggerAuraTwice // 10 buff第二次触发 SpellType_End )
type ESpellValueType ¶
type ESpellValueType int32
------------------------------------------------------------------------------- 被动技能或buff对主动技能的影响方式 -------------------------------------------------------------------------------
type EStateChangeMode ¶
type EStateChangeMode int32
------------------------------------------------------------------------------- 状态转换 -------------------------------------------------------------------------------
const ( StateChangeMode_Begin EStateChangeMode = iota StateChangeMode_Add EStateChangeMode = iota - 1 StateChangeMode_Remove StateChangeMode_End )
type ETargetChooseType ¶
type ETargetChooseType int32
------------------------------------------------------------------------------- 客户端目标选取方式 -------------------------------------------------------------------------------
type PlayerLevelupEntry ¶
player level up entry
type SceneEntry ¶
type SceneEntry struct { ID int32 `json:"_id"` Name string `json:"Name"` Type int32 `json:"Type"` UnitGroupID int32 `json:"UnitGroupID"` }
场景属性表
type SpellBase ¶
type SpellBase struct { ID uint32 `json:"_id"` // 技能id FamilyMask uint32 `json:"family_mask"` // 技能所属分组 FamilyRace EHeroRaceType `json:"family_race"` // 技能对应英灵种族 SchoolType ESchoolType `json:"school_type"` // 伤害类型 HaveVisual bool `json:"have_visual"` // 是否有特效 Passive bool `json:"passive"` MechanicFlags uint32 `json:"mechanic_flags"` // 技能效果的所属控制类型 AmountEffects [SpellEffectNum]int32 `json:"amount_effects"` // 传递用值影响系数 MiscID [SpellEffectNum]uint32 `json:"misc_id"` // ID参数 MiscType1 [SpellEffectNum]int32 `json:"misc_type1"` // 类型参数1 MiscType2 [SpellEffectNum]int32 `json:"misc_type2"` // 类型参数2 MiscValue1 [SpellEffectNum]int32 `json:"misc_value1"` // 参数值1 MiscValue2 [SpellEffectNum]int32 `json:"misc_value2"` // 参数值2 MiscValue3 [SpellEffectNum]int32 `json:"misc_value3"` // 参数值3 BasePoints [SpellEffectNum]int32 `json:"base_point"` // 效果动态参数基础值 LevelPoints [SpellEffectNum]int32 `json:"level_point"` // 效果动态参数随机范围基础值 Multiple [SpellEffectNum]int32 `json:"multiple"` // 效果百分比加成(1-10000) }
------------------------------------------------------------------------------- spell base静态属性 -------------------------------------------------------------------------------
type SpellCDData ¶
type SpellCDData struct { Entry *SpellEntry // 技能 CDTime float32 // 冷却时间 }
------------------------------------------------------------------------------- 冷却时间同步结构 -------------------------------------------------------------------------------
type SpellEntry ¶
type SpellEntry struct { SpellBase `json:",inline"` SelectType ESelectTargetType `json:"select_type"` // 目标选取方式 TargetNum int32 `json:"target_num"` // 目标数量 IncludeSelf bool `json:"include_self"` // 目标是否包括自己 TargetRace uint32 `json:"target_race"` // 目标种族 CasterStateCheckFlag uint64 `json:"caster_state_check_flag"` // 是否判断施放者状态标示(用来标示是否需要判断施放者某个状态的限制) CasterStateLimit uint64 `json:"caster_state_limit"` // 施放者状态限制 TargetStateCheckFlag uint64 `json:"target_state_check_flag"` // 是否判断目标状态标示(用来标示是否需要判断某个状态的限制) TargetStateLimit uint64 `json:"target_state_limit"` // 目标状态限制 TriggerSpellId uint32 `json:"trigger_spell_id"` // 技能释放完成后,触发的技能id TriggerSpellProp int32 `json:"trigger_spell_prop"` // 触发技能的几率[0-10000] PurposeTypeMask uint32 `json:"purpose_type_mask"` // 技能目的类型 TargetAuraState uint32 `json:"target_aura_state"` // 目标拥有该aura状态才可使用 TargetAuraStateNot uint32 `json:"target_aura_state_not"` // 目标不拥有该aura状态才可使用 CasterAuraState uint32 `json:"caster_aura_state"` // 释放者拥有该aura状态才可使用 CasterAuraStateNot uint32 `json:"caster_aura_state_not"` // 释放者不拥有该aura状态才可使用 HitCertainly bool `json:"hit_certainly"` // 该技能是否必命中(如果不是则根据技能攻击方式计算命中率) NotCrit bool `json:"not_crit"` // 技能不暴击 NotBlock bool `json:"not_block"` // 技能不被格挡 CanNotArmor bool `json:"can_not_armor"` // 该技能是否不计算伤害加成减免 BeatBack bool `json:"beat_back"` // 该技能是否能被反击 GroupDmg bool `json:"group_dmg"` // 是否是群体伤害 SpellHit int32 `json:"spell_hit"` // 技能命中加成 SpellCrit int32 `json:"spell_crit"` // 技能暴击加成 SpellBroken int32 `json:"spell_broken"` // 技能破击加成 Effects [SpellEffectNum]ESpellEffectType `json:"effects"` // 技能效果类型 EffectsMechanic [SpellEffectNum]uint32 `json:"effects_mechanic"` // 效果所属控制类型 EffectsTargetLimit [2][SpellEffectNum]uint32 `json:"effects_target_limit"` // 效果的目标限制 EffectsValidMiscValue [2][SpellEffectNum]uint32 `json:"effects_valid_misc_value"` // 效果的目标限制所需参数 EffectsRaceLimit [SpellEffectNum]uint32 `json:"effects_race_limit"` // 效果的目标限制对应种族 EffectsLimitRaceMod [SpellEffectNum]uint32 `json:"effects_limit_race_mod"` // 效果的目标限制所需参数种族加成 EnergyCost int32 `json:"energy_cost"` // 消耗能量 RuneCD int32 `json:"rune_cd"` // 符文技能CD DecayLevel int32 `json:"decay_level"` // 技能概率衰减等级 DecayRate int32 `json:"decay_rate"` // 技能等级衰减系数(1-10000) RoundCastMask uint32 `json:"round_cast_mask"` // 技能可释放回合数掩码(0-31回合) }
------------------------------------------------------------------------------- spell静态属性 -------------------------------------------------------------------------------