package fight import "fmt" /// /// 战斗类型枚举 /// type FightType int8 const ( FightType_PVE FightType = 1 FightType_PVP FightType = 2 FightType_PVBOSS FightType = 3 ) /// /// 类型枚举 /// type FightGroupType int8 const ( FightGroupType_Friend FightGroupType = 1 FightGroupType_Enemy FightGroupType = 2 ) /// /// 技能类型枚举 /// /// ///主动技 = 玩家可以点击、会出现在UI里 ///被动技 = 玩家不可以点击,会出现在UI里 ///队长技 = 玩家不可以点击,不会出现在UI里 ///其他系统提供的被动技 = 玩家不可以点击,不会出现在UI里 /// type SkillType int8 const ( /// 正常的主动技能 SkillType_Normal SkillType = 1 /// 被动技能 SkillType_Passive SkillType = 2 /// 队长技 SkillType_Captain SkillType = 3 ) /// /// 主技能选敌逻辑枚举 /// type SkillTargetType int8 const ( /// 敌方存活单体 SkillTargetType_SingleLiveEnemy SkillTargetType = 1 /// 敌方存活群体 SkillTargetType_AllLiveEnemy SkillTargetType = 2 /// 己方存活单体 SkillTargetType_SingleLiveFriend SkillTargetType = 3 /// 乙方所有存活目标 SkillTargetType_AllLiveFriend SkillTargetType = 4 /// 己方任意状态单体(含已死亡) SkillTargetType_SingleAnyFriend SkillTargetType = 5 /// 己方已死亡了的单体 SkillTargetType_SingleDeadFriend SkillTargetType = 6 ) type AferSkillFromType int8 const ( /// /// 所有角色 /// AferSkillFromType_All AferSkillFromType = 0 /// /// 友方所有 /// AferSkillFromType_Friend AferSkillFromType = 1 /// /// 敌方所有 /// AferSkillFromType_Enemy AferSkillFromType = 2 /// /// 技能发起者自己 /// AferSkillFromType_Self AferSkillFromType = 3 /// /// 玩家选择的目标 /// AferSkillFromType_PlayerChoose AferSkillFromType = 4 /// /// 除自己外的友方 /// AferSkillFromType_FriendExceptSelf AferSkillFromType = 5 /// /// 除选定目标外的其他敌方 /// AferSkillFromType_EnemyExceptChoose AferSkillFromType = 6 /// /// 除选定目标外的其他友方 /// AferSkillFromType_FriendExceptChoose AferSkillFromType = 7 ) type EventType int8 const ( /// /// 空 /// EventType_None EventType = -1 /// /// 开始战斗时 /// EventType_OnFightStart EventType = iota /// /// 回合行动前 /// EventType_OnRoundStart /// /// 回合结束后 /// EventType_OnRoundEnd /// /// 行动结束前 /// EventType_OnPreActionEnd /// /// 行动结束后 /// EventType_OnPostActionEnd /// /// 效果执行前 /// EventType_OnPreEffect /// /// 受到效果前 /// EventType_OnPreReceiveEffect /// /// 受到伤害计算后 /// EventType_OnCalcDmgEffect /// /// 受到效果时 /// EventType_OnPostReceiveEffect /// /// 施加效果时 /// EventType_OnPostGiveEffect /// /// 暴击时 /// EventType_OnPostGiveCriCal /// /// 被暴击 /// EventType_OnPostReceiveCriCal /// /// 回合行动后 /// EventType_OnStopAction ) type EOrderType int8 const ( Asc EOrderType = iota Desc ) type ComModifyOperate struct { From byte Nv float32 } func (this *ComModifyOperate) Recycle() { this.From = 0 this.Nv = 0 } func (this *ComModifyOperate) ToString() string { str := fmt.Sprintf("修改行动值 rid={%d},nv={%f}", this.From, this.Nv) return str } type ComSetSkillCD struct { From byte Skillid int Nv byte } func (this *ComSetSkillCD) Recycle() { this.From = 0 this.Nv = 0 this.Skillid = 0 } func (this *ComSetSkillCD) ToString() string { str := fmt.Sprintf("修改行动值 rid={%d},skillid={%d},nv={%d}", this.From, this.Skillid, this.Nv) return str } type ComStartFight struct{} func (this *ComStartFight) Recycle() {} func (this *ComStartFight) ToString() string { str := "战斗开始" return str } type ComEndFight struct{} func (this *ComEndFight) Recycle() {} func (this *ComEndFight) ToString() string { var str = "战斗结束" return str } type ComStartAction struct { From byte } func (this *ComStartAction) Recycle() { this.From = 0 } func (this *ComStartAction) ToString() string { var str = "回合开始 rid={from}" return str } type ComStopAction struct { From byte } func (this *ComStopAction) Recycle() { this.From = 0 } func (this *ComStopAction) ToString() string { var str = fmt.Sprintf("回合结束 rid={%d}", this.From) return str } /// /// 主技能命令集合 /// type ComSkillAtk struct { AniName string Skillid int From byte comList []*ComSkillAfterAtk } /// /// 回收到对象池时重设数据 /// func (this *ComSkillAtk) Recycle() { this.AniName = "" this.Skillid = 0 this.From = 0 } /// /// 子技能命令集合 /// type ComSkillAfterAtk struct { //public int skillid; ComList []*ComEffectSkill } type ComEffectSkill struct { To byte } type ComMondifyBuff struct { ComEffectSkill BuffId int Append bool } /// /// 回收到对象池时重设数据 /// func (this *ComMondifyBuff) Recycle() { this.BuffId = 0 this.Append = false this.To = 0 } func (this *ComMondifyBuff) ToString() string { var str = fmt.Sprintf("Buff变化 to={%d} buffId={%d} append={%t}", this.To, this.BuffId, this.Append) return str } /// /// 生命值修改命令 /// type ComModifyHealth struct { ComEffectSkill Baoji bool Miss bool Num float32 Nhp int Mhp int } /// /// 回收到对象池时重设数据 /// func (this *ComModifyHealth) Recycle() { this.Baoji = false this.Miss = false this.Num = 0 this.Nhp = 0 this.Mhp = 0 this.To = 0 } func (this *ComModifyHealth) ToString() string { var str = fmt.Sprintf("血量修改 to={%d} num={%f} nhp={%d} mhp={%d}", this.To, this.Num, this.Nhp, this.Mhp) return str }