public override void AskAssignManeuver() { Selection.ThisShip.Ai.TimeManeuverAssigned = Time.time; ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, AI.Aggressor.NavigationSubSystem.BestManeuver); AssignManeuverRecursive(); }
private void FinishAdaptiveAileronsAbility() { doAilerons = false; HostShip.CanPerformActionsWhenBumped = false; HostShip.CanPerformActionsWhenOverlapping = false; RestoreManuverColors(HostShip); Phases.CurrentSubPhase.IsReadyForCommands = true; //ship may have flown off the board; only assign saved maneuver if ship is exists if (Roster.GetShipById("ShipId:" + Selection.ThisShip.ShipId) != null) { ManeuverSelectionSubphase subphase = Phases.StartTemporarySubPhaseNew <ManeuverSelectionSubphase>( "Select a maneuver", Triggers.FinishTrigger ); subphase.RequiredPlayer = Selection.ThisShip.Owner.PlayerNo; subphase.Start(); subphase.IsReadyForCommands = true; ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, SavedManeuver.ToString()); } else { Triggers.FinishTrigger(); } }
private void ManeuverSelected(string maneuverString) { if (maneuverString != TargetShip.AssignedManeuver.ToString()) { HostShip.State.Force--; } ShipMovementScript.SendAssignManeuverCommand(maneuverString); }
private void FinishAdaptiveAileronsAbility() { RestoreManuverColors(HostShip); Phases.CurrentSubPhase.IsReadyForCommands = true; ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, SavedManeuver.ToString()); //GameMode.CurrentGameMode.AssignManeuver(SavedManeuver.ToString()); // It calls Triggers.FinishTrigger }
public override void AskAssignManeuver() { base.AskAssignManeuver(); if (DebugManager.DebugStraightToCombat) { ShipMovementScript.SendAssignManeuverCommand("2.F.S"); AssignManeuversRecursive(); } }
private void AskChangeManeuver(object sender, System.EventArgs e) { Messages.ShowInfoToHuman(HostShip.PilotInfo.PilotName + " : You can change your maneuver"); HostShip.Owner.ChangeManeuver( (maneuverCode) => { ShipMovementScript.SendAssignManeuverCommand(maneuverCode); }, Triggers.FinishTrigger, IsSpeedPlusMinus1 ); }
public override void AskAssignManeuver() { if (!DebugManager.DebugStraightToCombat) { AI.Aggressor.NavigationSubSystem.AssignPlannedManeuver(AssignManeuversRecursive); } else { ShipMovementScript.SendAssignManeuverCommand("2.F.S"); AssignManeuversRecursive(); } }
private void AssignManeuverWithIncreasedComplexity(string maneuverCode) { if (maneuverCode != HostShip.AssignedManeuver.ToString()) { Messages.ShowInfo(HostUpgrade.UpgradeInfo.Name + ": The difficulty of the maneuver has been increased"); HostShip.AfterGetManeuverColorIncreaseComplexity += ChangeComplexity; HostShip.OnMovementFinish += ClearAbility; } ShipMovementScript.SendAssignManeuverCommand(maneuverCode); }
private void ManeuverSelected(string maneuverString) { if (maneuverString != TargetShip.AssignedManeuver.ToString()) { HostShip.State.SpendForce( 1, delegate { ShipMovementScript.SendAssignManeuverCommand(maneuverString); } ); } else { ShipMovementScript.SendAssignManeuverCommand(maneuverString); } }
public override void AssignManeuversStart() { base.AssignManeuversStart(); foreach (var ship in Ships.Values) { if (ship.State.IsIonized) { continue; } ShipMovementScript.SendAssignManeuverCommand(ship.ShipId, "2.F.S"); } GameMode.CurrentGameMode.ExecuteCommand(UI.GenerateNextButtonCommand()); }
public override void AssignManeuver() { base.AssignManeuver(); foreach (var shipHolder in Ships) { if (RulesList.IonizationRule.IsIonized(shipHolder.Value)) { continue; } ShipMovementScript.SendAssignManeuverCommand(shipHolder.Value.ShipId, "2.F.S"); } GameMode.CurrentGameMode.ExecuteCommand(UI.GenerateNextButtonCommand()); }
private void ShowChangeManeuver(object sender, EventArgs e) { SubPhases.DecisionSubPhase.ConfirmDecisionNoCallback(); ModifyManeuversComplexity(); HostShip.Owner.ChangeManeuver( (maneuverCode) => { Messages.ShowInfo(HostUpgrade.UpgradeInfo.Name + ": Maneuver was changed"); ShipMovementScript.SendAssignManeuverCommand(maneuverCode); HostShip.OnMovementFinish += RestoreManuvers; }, Triggers.FinishTrigger, IsNextHigherSpeedBasic ); }
protected void AskChangeManeuver(object sender, System.EventArgs e) { Messages.ShowInfoToHuman("Countess Ryad: You can change your maneuver to Koiogran turn"); maneuverKey = HostShip.AssignedManeuver.Speed + ".F.R"; originalColor = (HostShip.Maneuvers.ContainsKey(maneuverKey)) ? HostShip.Maneuvers[maneuverKey] : MovementComplexity.None; HostShip.Maneuvers[maneuverKey] = GetNewManeuverComplexity(); HostShip.Owner.ChangeManeuver( (maneuverCode) => { ShipMovementScript.SendAssignManeuverCommand(maneuverCode); HostShip.OnMovementFinish += RestoreManuvers; }, Triggers.FinishTrigger, StraightOrKoiogran ); }
private void AskChangeManeuver(object sender, System.EventArgs e) { Messages.ShowInfoToHuman("Tetran Cowall: Select speed of Koiogran turn"); //To mantain Adrenalin Rush color change HostShip.Maneuvers["1.F.R"] = HostShip.AssignedManeuver.ColorComplexity; HostShip.Maneuvers["3.F.R"] = HostShip.AssignedManeuver.ColorComplexity; HostShip.Maneuvers["5.F.R"] = HostShip.AssignedManeuver.ColorComplexity; HostShip.Owner.ChangeManeuver( (maneuverCode) => { ShipMovementScript.SendAssignManeuverCommand(maneuverCode); HostShip.OnMovementFinish -= RestoreManuvers; }, Triggers.FinishTrigger, allowedKoiogranFilter ); }
private void AskChangeManeuver(object sender, System.EventArgs e) { Messages.ShowInfoToHuman("Servomotor S-foils: You can change your maneuver to red Tallon roll"); string tallonCode = HostShip.AssignedManeuver.ToString().Replace('T', 'E'); HostShip.Maneuvers[tallonCode] = MovementComplexity.Complex; allowedMovements.Clear(); allowedMovements.Add(HostShip.AssignedManeuver.ToString()); allowedMovements.Add(tallonCode); HostShip.Owner.ChangeManeuver( (maneuverCode) => { ShipMovementScript.SendAssignManeuverCommand(maneuverCode); HostShip.OnMovementFinish += RestoreManuvers; }, Triggers.FinishTrigger, TurnOrTallonRoll ); }
private void AskChangeManeuver(object sender, System.EventArgs e) { Messages.ShowInfoToHuman(HostShip.PilotInfo.PilotName + " : You can increase or decrease your maneuver speed"); allowedMovements.Clear(); string key = HostShip.AssignedManeuver.ToString(); int speed = HostShip.AssignedManeuver.Speed; allowedMovements.Add(key); //Generate key for maneuvre + 1. If exist backups old color, and change to actual keyPlus = key.Replace(speed.ToString()[0], (speed + 1).ToString()[0]); plusColor = MovementComplexity.None; if (HostShip.Maneuvers.ContainsKey(keyPlus)) { allowedMovements.Add(keyPlus); plusColor = HostShip.Maneuvers[keyPlus]; HostShip.Maneuvers[keyPlus] = HostShip.AssignedManeuver.ColorComplexity; } //Generate key for maneuvre - 1. If exist backups old color, and change to actual keyMinus = key.Replace(speed.ToString()[0], (speed - 1).ToString()[0]); minusColor = MovementComplexity.None; if (HostShip.Maneuvers.ContainsKey(keyMinus)) { allowedMovements.Add(keyMinus); minusColor = HostShip.Maneuvers[keyMinus]; HostShip.Maneuvers[keyMinus] = HostShip.AssignedManeuver.ColorComplexity; } HostShip.Owner.ChangeManeuver( (maneuverCode) => { ShipMovementScript.SendAssignManeuverCommand(maneuverCode); HostShip.OnMovementFinish += RestoreManuvers; }, Triggers.FinishTrigger, StraightOrKoiogran ); }
private void RpcAssignManeuver(int shipId, string maneuverCode) { ShipMovementScript.SendAssignManeuverCommand(shipId, maneuverCode); }
private void FinishAssignManeuver() { ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, AI.Aggressor.NavigationSubSystem.BestManeuver); AssignManeuverRecursive(); }
private void FinishAdaptiveAileronsAbility() { ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, SavedManeuver.ToString()); //GameMode.CurrentGameMode.AssignManeuver(SavedManeuver.ToString()); // It calls Triggers.FinishTrigger }
public override void AssignManeuver(string maneuverCode) { ShipMovementScript.SendAssignManeuverCommand(Selection.ThisShip.ShipId, maneuverCode); }
public static void AssignPlannedManeuver(Action callBack) { ShipMovementScript.SendAssignManeuverCommand(VirtualBoard.Ships[Selection.ThisShip].PlannedManeuverCode); GameManagerScript.Wait(0.2f, delegate { callBack(); }); }