Exemplo n.º 1
0
        private void UpdateEOT(Ship.EOT requestedEOT)
        {
            if (lastEOT != requestedEOT)
            {
                switch (requestedEOT)
                {
                case Ship.EOT.Stop:
                    shipTarget.Stop();
                    StartCoroutine(ChangeSelectorColor(neutral));
                    break;

                case Ship.EOT.FullAhead:
                    shipTarget.FullAhead();
                    StartCoroutine(ChangeSelectorColor(ahead));
                    break;

                case Ship.EOT.HalfAhead:
                    shipTarget.HalfAhead();
                    StartCoroutine(ChangeSelectorColor(ahead));
                    break;

                case Ship.EOT.FullAstern:
                    shipTarget.FullAstern();
                    StartCoroutine(ChangeSelectorColor(astern));
                    break;

                case Ship.EOT.HalfAstern:
                    shipTarget.HalfAstern();
                    StartCoroutine(ChangeSelectorColor(astern));
                    break;

                case Ship.EOT.SlowAhead:
                    shipTarget.SlowAhead();
                    StartCoroutine(ChangeSelectorColor(ahead));
                    break;

                case Ship.EOT.SlowAstern:
                    shipTarget.SlowAstern();
                    StartCoroutine(ChangeSelectorColor(astern));
                    break;

                default:
                    break;
                }

                wheelSetAngle = GetEOTWheelAngle(requestedEOT);
                lastEOT       = requestedEOT;
            }
        }
Exemplo n.º 2
0
        private float GetEOTWheelAngle(Ship.EOT EOT)
        {
            switch (EOT)
            {
            case Ship.EOT.Stop: return(0f);

            case Ship.EOT.SlowAhead: return(-sectionAngle * 1);

            case Ship.EOT.HalfAhead: return(-sectionAngle * 2);

            case Ship.EOT.FullAhead: return(-sectionAngle * 3);

            case Ship.EOT.SlowAstern: return(sectionAngle * 1);

            case Ship.EOT.HalfAstern: return(sectionAngle * 2);

            case Ship.EOT.FullAstern: return(sectionAngle * 3);

            default: return(0f);
            }
        }
Exemplo n.º 3
0
 public Move(Ship ship, Ship.EOT eot)
 {
     this.ship = ship;
     this.eot  = eot;
 }