using System.ComponentModel; using Framework; using Gameplay.Character; using Gameplay.Common; using Gameplay.Unit; public partial class SROptions { [Category("战斗"), DisplayName("开启战斗音效日志")] public bool EnableAudioLog { get { return CodeDefine.ENABLE_WEAPON_FIRE_AUDIO_LOG; } set { CodeDefine.ENABLE_WEAPON_FIRE_AUDIO_LOG = value; } } [Category("战斗"), DisplayName("己方血量无敌")] public bool SelfUnbeatable { get { return CodeDefine.Fight.HP_NOCOST; } set { CodeDefine.Fight.HP_NOCOST = value; } } [Category("战斗"), DisplayName("敌方血量无敌")] public bool EnemyUnbeatable { get { return CodeDefine.Fight.HP_NOCOST_ENEMY; } set { CodeDefine.Fight.HP_NOCOST_ENEMY = value; } } [Category("战斗"), DisplayName("己方士气无敌")] public bool SelfMoraleUnbeatable { get { return CodeDefine.Fight.MORALE_NOCOST; } set { CodeDefine.Fight.MORALE_NOCOST = value; } } [Category("战斗"), DisplayName("敌方士气无敌")] public bool EnemyMoraleUnbeatable { get { return CodeDefine.Fight.MORALE_NOCOST_ENEMY; } set { CodeDefine.Fight.MORALE_NOCOST_ENEMY = value; } } [Category("战斗"), DisplayName("跳过技能CD检查")] public bool SkipSkillCDCheck { get { return CodeDefine.Fight.SkipSkillCDCheck; } set { CodeDefine.Fight.SkipSkillCDCheck = value; } } // [Category("战斗"), DisplayName("强制显示地图格子")] //public bool ForceShowMapCell //{ // get // { // return CodeDefine.Fight.ForceEnableMapCell; // } // set // { // CodeDefine.Fight.ForceEnableMapCell = value; // } //} // [Category("战斗"), DisplayName("跳过可移动单位占位等级检查")] //public bool SkipMoveUnitStandLevelCheck //{ // get // { // return CodeDefine.Fight.SkipMoveUnitStandLevelCheck; // } // set // { // CodeDefine.Fight.SkipMoveUnitStandLevelCheck = value; // } //} [Category("战斗"), DisplayName("一击逃跑")] public bool OneDamageRetreat { get { return CodeDefine.Fight.ONE_DAMAGE_RETREAT; } set { CodeDefine.Fight.ONE_DAMAGE_RETREAT = value; } } [Category("战斗"), DisplayName("禁止士气恢复")] public bool DisableMoraleRecover { get { return CodeDefine.Fight.DISABLE_MORALE_RECOVER; } set { CodeDefine.Fight.DISABLE_MORALE_RECOVER = value; } } [Category("战斗"), DisplayName("强制清空己方士气")] public void ClearSelfSideMorale() { ClearSideMorale(ETroopsId.Self); } [Category("战斗"), DisplayName("强制清空敌方士气")] public void ClearEnemySideMorale() { ClearSideMorale(ETroopsId.Enemy); } // [Category("战斗"), DisplayName("使用玩家技能")] 25/2/20 关闭DEBUGGER功能 //public void FakeUsePlayerSkill() //{ // var fakeEventData = new EDReadyPlayerSkill() // { // playerSkillId = 91101 // }; // EventManager.Instance.Send(EventManager.EventName.INFIGHT_PLAYER_SKILL_READYUSE, fakeEventData); //} [Category("战斗"), DisplayName("一击死亡-自己")] public bool oneDamageKillSelf { get { return CodeDefine.Fight.ONE_DAMAGE_KILL_SELF; } set { CodeDefine.Fight.ONE_DAMAGE_KILL_SELF = value; } } [Category("战斗"), DisplayName("一击死亡-敌人")] public bool oneDamageKillEnemy { get { return CodeDefine.Fight.ONE_DAMAGE_KILL_ENEMY; } set { CodeDefine.Fight.ONE_DAMAGE_KILL_ENEMY = value; } } public void ClearSideMorale(int sideType) { var oldOneDamageRetreat = OneDamageRetreat; OneDamageRetreat = true; var allUnits = GameUnitManager.instance.infightUnits.unitList; foreach (var unit in allUnits) { if (unit.commonData.troopId == sideType) { unit.TakeMoraleDamage(1, unit); } } OneDamageRetreat = oldOneDamageRetreat; } }