private void RedrawState(Engine.ThrustDirection nd)
    {
        if (nd != showingDirection)
        {
            switch (nd)
            {
            case Engine.ThrustDirection.Clockwise: buttonLeft.color = disabledColor; break;

            case Engine.ThrustDirection.CounterclockWise: buttonRight.color = disabledColor; break;

            case Engine.ThrustDirection.Inside: buttonUp.color = disabledColor; break;

            case Engine.ThrustDirection.Outward: buttonDown.color = disabledColor; break;

            case Engine.ThrustDirection.StabilityManeuver: centralButton.color = disabledColor; break;
            }
            showingDirection = nd;
        }
        switch (showingDirection)
        {
        case Engine.ThrustDirection.Clockwise: buttonLeft.color = enabledColor; break;

        case Engine.ThrustDirection.CounterclockWise: buttonRight.color = enabledColor; break;

        case Engine.ThrustDirection.Inside: buttonUp.color = enabledColor; break;

        case Engine.ThrustDirection.Outward: buttonDown.color = enabledColor; break;

        case Engine.ThrustDirection.StabilityManeuver: centralButton.color = enabledColor; break;

        case Engine.ThrustDirection.Offline: centralButton.color = disabledColor; break;
        }
        if (gmap.engineControlCenterBuilt)
        {
            buttonUp.transform.parent.gameObject.SetActive(true);
            buttonDown.transform.parent.gameObject.SetActive(true);
        }
        else
        {
            buttonUp.transform.parent.gameObject.SetActive(false);
            buttonDown.transform.parent.gameObject.SetActive(false);
        }
    }
 public void ChangeThrustDirection(Engine.ThrustDirection etd)
 {
     engineThrustDirection = etd;
 }