public override void LoadFromResponse(string apiname, dynamic data) { base.LoadFromResponse(apiname, (object)data); NightInitial = new PhaseNightInitial(this, "夜戦開始", false); FriendlySupport = new PhaseFriendlySupport(this, "友軍艦隊援護"); NightSupport = new PhaseSupport(this, "夜間支援攻撃", true); NightBattle = new PhaseNightBattle(this, "第一次夜戦", 1); NightBattle2 = new PhaseNightBattle(this, "第二次夜戦", 2); if (NextToDay) { JetBaseAirAttack = new PhaseJetBaseAirAttack(this, "噴式基地航空隊攻撃"); JetAirBattle = new PhaseJetAirBattle(this, "噴式航空戦"); BaseAirAttack = new PhaseBaseAirAttack(this, "基地航空隊攻撃"); Support = new PhaseSupport(this, "支援攻撃"); AirBattle = new PhaseAirBattle(this, "航空戦"); OpeningASW = new PhaseOpeningASW(this, "先制対潜"); OpeningTorpedo = new PhaseTorpedo(this, "先制雷撃", 0); Shelling1 = new PhaseShelling(this, "第一次砲撃戦", 1, "1"); Shelling2 = new PhaseShelling(this, "第二次砲撃戦", 2, "2"); Torpedo = new PhaseTorpedo(this, "雷撃戦", 3); } foreach (var phase in GetPhases()) { phase.EmulateBattle(_resultHPs, _attackDamages); } }
public override void LoadFromResponse(string apiname, dynamic data) { base.LoadFromResponse(apiname, (object)data); NightInitial = new PhaseNightInitial(this, "夜戦開始", false); NightBattle = new PhaseNightBattle(this, "夜戦", 0); NightBattle.EmulateBattle(_resultHPs, _attackDamages); }
public override void LoadFromResponse(string apiname, dynamic data) { base.LoadFromResponse(apiname, (object)data); NightInitial = new PhaseNightInitial(this, "夜戦開始", false); FriendlySupport = new PhaseFriendlySupport(this, "友軍艦隊援護"); // 支援なし? NightBattle = new PhaseNightBattle(this, "夜戦", 0); foreach (var phase in GetPhases()) { phase.EmulateBattle(_resultHPs, _attackDamages); } }
/// <summary> /// 夜戦における各種表示を設定します。 /// </summary> /// <param name="hp">戦闘開始前のHP。</param> /// <param name="isCombined">連合艦隊かどうか。</param> /// <param name="bd">戦闘データ。</param> private void SetNightBattleEvent(PhaseNightInitial pd) { FleetData fleet = pd.FriendFleet; //味方探照灯判定 { int index = pd.SearchlightIndexFriend; if (index != -1) { ShipData ship = fleet.MembersInstance[index]; AirStage1Friend.Text = "#" + (index + (pd.IsFriendEscort ? 6 : 0) + 1); AirStage1Friend.ForeColor = SystemColors.ControlText; AirStage1Friend.ImageAlign = ContentAlignment.MiddleLeft; AirStage1Friend.ImageIndex = (int)ResourceManager.EquipmentContent.Searchlight; ToolTipInfo.SetToolTip(AirStage1Friend, "探照灯照射: " + ship.NameWithLevel); } else { ToolTipInfo.SetToolTip(AirStage1Friend, null); } } //敵探照灯判定 { int index = pd.SearchlightIndexEnemy; if (index != -1) { AirStage1Enemy.Text = "#" + (index + (pd.IsEnemyEscort ? 6 : 0) + 1); AirStage1Enemy.ForeColor = SystemColors.ControlText; AirStage1Enemy.ImageAlign = ContentAlignment.MiddleLeft; AirStage1Enemy.ImageIndex = (int)ResourceManager.EquipmentContent.Searchlight; ToolTipInfo.SetToolTip(AirStage1Enemy, "探照灯照射: " + pd.SearchlightEnemyInstance.NameWithClass); } else { ToolTipInfo.SetToolTip(AirStage1Enemy, null); } } //夜間触接判定 if (pd.TouchAircraftFriend != -1) { SearchingFriend.Text = "夜間触接"; SearchingFriend.ImageIndex = (int)ResourceManager.EquipmentContent.Seaplane; SearchingFriend.ImageAlign = ContentAlignment.MiddleLeft; ToolTipInfo.SetToolTip(SearchingFriend, "夜間触接中: " + KCDatabase.Instance.MasterEquipments[pd.TouchAircraftFriend].Name); } else { ToolTipInfo.SetToolTip(SearchingFriend, null); } if (pd.TouchAircraftEnemy != -1) { SearchingEnemy.Text = "夜間触接"; SearchingEnemy.ImageIndex = (int)ResourceManager.EquipmentContent.Seaplane; SearchingFriend.ImageAlign = ContentAlignment.MiddleLeft; ToolTipInfo.SetToolTip(SearchingEnemy, "夜間触接中: " + KCDatabase.Instance.MasterEquipments[pd.TouchAircraftEnemy].Name); } else { ToolTipInfo.SetToolTip(SearchingEnemy, null); } //照明弾投射判定 { int index = pd.FlareIndexFriend; if (index != -1) { AirStage2Friend.Text = "#" + (index + 1); AirStage2Friend.ForeColor = SystemColors.ControlText; AirStage2Friend.ImageAlign = ContentAlignment.MiddleLeft; AirStage2Friend.ImageIndex = (int)ResourceManager.EquipmentContent.Flare; ToolTipInfo.SetToolTip(AirStage2Friend, "照明弾投射: " + pd.FlareFriendInstance.NameWithLevel); } else { ToolTipInfo.SetToolTip(AirStage2Friend, null); } } { int index = pd.FlareIndexEnemy; if (index != -1) { AirStage2Enemy.Text = "#" + (index + 1); AirStage2Enemy.ForeColor = SystemColors.ControlText; AirStage2Enemy.ImageAlign = ContentAlignment.MiddleLeft; AirStage2Enemy.ImageIndex = (int)ResourceManager.EquipmentContent.Flare; ToolTipInfo.SetToolTip(AirStage2Enemy, "照明弾投射: " + pd.FlareEnemyInstance.NameWithClass); } else { ToolTipInfo.SetToolTip(AirStage2Enemy, null); } } }