using UnityEngine; using System.Collections; using System.Collections.Generic; namespace YLBattle { /// /// 战斗环境 /// public class BattleParam { #region 配置信息 /// /// 单场战斗总时间, 单位毫秒 /// public int BattleShowTime = 0; #endregion #region 战场变量 /// /// 万一是打副本呢? 副本的ID 502000开始 /// public int carbonId = 0; /// /// 关卡模式 [0=普通关卡 【1=无穷尽】 2=pvp 3=test 4=guide] /// public int levelMode = 0; /// /// 当前关卡编号 /// public int levelID = 0; /// /// 关卡(波次)进度 /// public int levelStatus = 0; /// /// 关卡总数 /// public int levelTotalStatus = 0; /// /// 当前关卡的难度 /// public int levelDifficity; /// /// 地图名称 /// public string levelSenceBundle = ""; /// /// 地图名称 /// public string levelSenceBGBundle = ""; /// /// 关卡名称 /// public string levelName = string.Empty; /// /// Boss警告id /// public string warningFighterId = string.Empty; /// /// 必杀警告id /// public string criticalFighterId = string.Empty; /// /// 己方技能释放者id /// public string mBlueSkillFighterId = string.Empty; /// /// 敌方技能释放者id /// public string mRedSkillFighterId = string.Empty; /// /// (当前波次)是否有boss出场 /// public bool IsBossArrival = false; /// /// 是否释放了队长技能 /// public bool IsCastLeaderSkill = false; /// /// 当前boss.Fighter.ID() /// public string bossId = string.Empty; /// /// 暂停标志 /// public bool IsPause = false; /// /// 蓝队数据重新加载标志 /// public bool reloadBlue = false; /// /// 是否双倍速 /// public bool isSecSpeed = false; /// /// 连击伤害倍率 (X/100) /// public int BattleLianJiDamageRate = 50; /// /// 连击 /// 1、只要是攻击,就+1是吧,普通,技能,连击,都算 /// 2、上一次的更新(+1)超过2秒没更新,就重置 /// public int BattleLianJiIndex = 0; /// /// 上一次连击时间 /// public long LastBattleLianJiTime = 0; /// /// 己方上一次TeamPower值 /// public long LastCOMBOTime = 0; /// /// 己方上一次Power值 /// public long LastPowerTime = 0; /// /// 当前己方(连击)能量值值 /// private long BlueCOMBOPower = 0; /// /// 当前己方(连击)能量值上限 /// public long BlueTeamMaxPower = 0; /// /// 当前己方(技能)能量值值 /// private long BlueTeamSkillPower = 0; /// /// 当前敌方(技能)能量值值 /// private long RedTeamSkillPower = 0; /// /// 当前己方(技能)能量值上限 /// public long BlueTeamMaxSkillPower = 0; /// /// 当前敌方(技能)能量值上限 /// public long RedTeamMaxSkillPower = 0; /// /// 己方必杀时间 /// public long BlueCriticalTime = 0; /// /// 释放技能恢复值 /// public int IncreasePowerByCastSkill = 0; /// /// 战斗队伍最大人数 /// public int BattleTeamMaxFighter = 0; /// /// 是否有友情支援 /// public bool isFriendHelp = false; /// /// 好友playerID /// public string mFriendUID = string.Empty; /// /// 对手UID /// public string mPVP_PlayerUID = string.Empty; /// /// 对手类型 /// public string mPVP_Type = string.Empty; /// /// 无穷尽关卡模式, 战斗结束,玩家离开战斗时的状态 /// 0 = 未通关 1= 通关 /// public int mBattleForever_LeaveState = 0; /// /// 己方当前正在攻击的角色ID /// public string mBlueCurrentCenterAttacker = string.Empty; /// /// 敌方当前正在攻击的角色ID /// public string mRedCurrentCenterAttacker = string.Empty; #endregion #region 关卡数据 /// /// 己方 /// public List blueteam = new List(); /// /// 敌方 /// public List redteam = new List(); /// /// 友方 /// public IFighterAdapter friend = null; #endregion #region 数据提供及通用适配器 /// /// 显示适配器 /// public IShowAdapter mShowAdapter; /// /// 地图数据适配器 /// public IFieldAdapter mFieldAdapter; /// /// 技能适配器 /// public ISkillAdapter mSkillAdapter; /// /// 调试输出适配 /// public IDebug mDebugHelper; /// /// 时间中心 /// public TimeHelper mTimeHelper; /// /// 随机数发生器 /// public RandomHelper mRandom; #endregion #region 数据及逻辑处理适配器 /// /// 战斗全局接口 /// public IBattleGlobalOper mBattleGlobalOper; /// /// 战场交互接口 /// public IBattleInnerOper mBattleInnerOper; /// /// 事件中心 /// public IEventDispatcher mEventDisp; /// /// 战斗对象操作接口 /// public ILogicFighterOper mLogicFighterOper; /// /// 子弹管理操作 /// public X2Battle.BulletManager mBulletManagerOpr; /// /// buff管理操作 /// public IBuffOper mBuffManagerOpr; #endregion #region (get) /// /// (连击)能量值 /// public long BattleCOMBOPower { set { BlueCOMBOPower = value; if (BlueCOMBOPower >= BlueTeamMaxPower) { BlueCOMBOPower = BlueTeamMaxPower; } if (BlueCOMBOPower < 0) { BlueCOMBOPower = 0; } } get { return BlueCOMBOPower; } } /// /// (技能槽)能量值 /// public long BattleBlueTeamSkillPower { set { BlueTeamSkillPower = value; if (BlueTeamSkillPower >= BlueTeamMaxSkillPower) { BlueTeamSkillPower = BlueTeamMaxSkillPower; } if (BlueTeamSkillPower < 0) { BlueTeamSkillPower = 0; } } get { return BlueTeamSkillPower; } } /// /// (技能槽)能量值 /// public long BattleRedTeamSkillPower { set { RedTeamSkillPower = value; if (RedTeamSkillPower >= RedTeamMaxSkillPower) { RedTeamSkillPower = RedTeamMaxSkillPower; } if (RedTeamSkillPower < 0) { RedTeamSkillPower = 0; } } get { return RedTeamSkillPower; } } /// /// 无穷尽关卡模式, 战斗结束,玩家离开战斗时的状态 /// 0 = 未通关 1= 通关 /// /// 关卡编号 public int BattleForever_LeaveState() { return this.mBattleForever_LeaveState; } /// /// 当前战斗关卡编号 /// /// 关卡编号 public int BattleLevelID() { return this.levelID; } /// /// 当前战斗关卡所 归属的副本编号 /// /// public int BattleCarbonID() { return this.carbonId; } /// /// 获取当前关卡场景进度 /// /// 进度值 public int BattleLevelStatus() { return this.levelStatus; } /// /// 获取战斗场景背景图名称 /// /// 背景图名称 public string BattleSceneBundle() { return this.levelSenceBundle; } /// /// 获取战斗场景背景图名称 /// /// 背景图名称 public string BattleSceneBgBundle() { return this.levelSenceBGBundle; } /// /// 获取调试信息适配器 /// /// 适配器对象 public IDebug DebugHelper() { return this.mDebugHelper; } /// /// 获取显示适配器 /// /// 适配器信息 public IShowAdapter ShowAdapter() { return this.mShowAdapter; } /// /// 获取战场地图模板数据适配器 /// /// 适配器信息 public IFieldAdapter FieldAdapter() { return this.mFieldAdapter; } /// /// 获取技能数据适配器 /// /// 适配器信息 public ISkillAdapter SkillAdapter() { return this.mSkillAdapter; } /// /// 时间辅助类 /// /// 时间对象 public TimeHelper TimeCenter() { return this.mTimeHelper; } /// /// 随机数发生器 /// /// 随机数对象 public RandomHelper Random() { return this.mRandom; } /// /// 事件中心 /// /// public IEventDispatcher EventDisp() { return this.mEventDisp; } /// /// 外部数据交互接口 /// /// 接口信息 public IBattleGlobalOper BattleGlobalOper() { return this.mBattleGlobalOper; } /// /// 获取内部交互接口 /// /// 接口信息 public IBattleInnerOper BattleInnerOper() { return this.mBattleInnerOper; } /// /// 获取蓝队重新加载标志 /// /// true重新加载, false不重新加载 public bool RealodBule() { return this.reloadBlue; } /// /// 己方成员列表 /// /// 己方成员列表 public List BlueTeam() { return this.blueteam; } /// /// 敌方成员列表 /// /// 敌方成员列表 public List RedTeam() { return this.redteam; } /// /// 朋友 /// /// public string FriendUID { set { mFriendUID = value; if (mFriendUID.Trim().Length > 0) { isFriendHelp = true; } } get { return mFriendUID; } } #endregion /// /// 购买buff,所花费的金币 /// public int BuyBuffCostGold { get; set; } /// /// 战前已购买并配置的buff /// public List TeamBuffs { get; set; } } }