Beispiel #1
0
        public Movement.ManeuverColor GetLastManeuverColor()
        {
            Movement.ManeuverColor result = Movement.ManeuverColor.None;

            result = AssignedManeuver.ColorComplexity;
            return(result);
        }
Beispiel #2
0
        private void RegisterK4SecurityDroid(GenericShip hostShip)
        {
            Movement.ManeuverColor movementColor = HostShip.GetLastManeuverColor();
            if (movementColor != Movement.ManeuverColor.Green)
            {
                return;
            }

            RegisterAbilityTrigger(
                TriggerTypes.OnShipMovementFinish,
                AssignK4TargetingLock
                );
        }
        private void RegisterTargetingAstromech(GenericShip hostShip)
        {
            Movement.ManeuverColor movementColor = HostShip.GetLastManeuverColor();
            if (movementColor != Movement.ManeuverColor.Red)
            {
                return;
            }

            RegisterAbilityTrigger(
                TriggerTypes.OnShipMovementFinish,
                AssignAstromechTargetingLock
                );
        }
    public Movement.MovementStruct ManeuverFromString(string parameters)
    {
        string[] arrParameters = parameters.Split('.');

        Movement.ManeuverSpeed speed = Movement.ManeuverSpeed.Speed1;

        switch (arrParameters[0])
        {
        case "1":
            speed = Movement.ManeuverSpeed.Speed1;
            break;

        case "2":
            speed = Movement.ManeuverSpeed.Speed2;
            break;

        case "3":
            speed = Movement.ManeuverSpeed.Speed3;
            break;

        case "4":
            speed = Movement.ManeuverSpeed.Speed4;
            break;

        case "5":
            speed = Movement.ManeuverSpeed.Speed5;
            break;
        }

        Movement.ManeuverDirection direction = Movement.ManeuverDirection.Forward;

        switch (arrParameters[1])
        {
        case "F":
            direction = Movement.ManeuverDirection.Forward;
            break;

        case "L":
            direction = Movement.ManeuverDirection.Left;
            break;

        case "R":
            direction = Movement.ManeuverDirection.Right;
            break;
        }

        Movement.ManeuverBearing bearing = Movement.ManeuverBearing.Straight;

        switch (arrParameters[2])
        {
        case "S":
            bearing = Movement.ManeuverBearing.Straight;
            break;

        case "R":
            bearing = Movement.ManeuverBearing.KoiogranTurn;
            break;

        case "B":
            bearing = Movement.ManeuverBearing.Bank;
            break;

        case "T":
            bearing = Movement.ManeuverBearing.Turn;
            break;
        }

        Movement.ManeuverColor color = Selection.ThisShip.GetColorComplexityOfManeuver(parameters);

        Movement.MovementStruct result = new Movement.MovementStruct();
        result.Speed           = speed;
        result.Direction       = direction;
        result.Bearing         = bearing;
        result.ColorComplexity = color;

        return(result);
    }