Example #1
0
        Texture2D GetModeIcon(CentrifugeMode mode)
        {
            switch (mode)
            {
            case CentrifugeMode.TurnLeft: return(TextureCache.turnLeft);

            case CentrifugeMode.TurnRight: return(TextureCache.turnRight);

            case CentrifugeMode.Turn180: return(TextureCache.turn180);

            default: return(null);
            }
        }
Example #2
0
        public static ChemicalSignature MakeRotation(CentrifugeMode mode, ChemicalSignature signature)
        {
            if (signature == null)
            {
                return(null);
            }

            switch (mode)
            {
            case CentrifugeMode.TurnRight: return(signature.Rotate());

            case CentrifugeMode.Turn180: return(signature.Rotate().Rotate());

            case CentrifugeMode.TurnLeft: return(signature.Rotate().Rotate().Rotate());

            default: throw new InvalidOperationException();
            }
        }
Example #3
0
        void Init()
        {
            ui = new UIContainer();

            mode = CentrifugeMode.TurnRight;
            if (inputSignature != null)
            {
                UpdateOutputSignature();
            }

            UIButtonStyle centrifuge_button = new UIButtonStyle(new UIButtonAppearance(Game1.font, Color.Black, new RichImage(TextureCache.centrifuge_button_highlight), Color.Black, new Vector2(1, 0)),
                                                                new UIButtonAppearance(Game1.font, Color.Black, new RichImage(TextureCache.centrifuge_button_highlight), Color.Yellow, new Vector2(1, 0)),
                                                                new UIButtonAppearance(Game1.font, Color.Black, new RichImage(TextureCache.centrifuge_button_highlight), Color.Orange, new Vector2(1, 0)),
                                                                new UIButtonAppearance(Game1.font, Color.Black, new RichImage(TextureCache.centrifuge_button_highlight), Color.Black, new Vector2(1, 0)));

            ui.Add(new UIButton("", TextureCache.turnLeft, new Rectangle(-4, 42, 18, 18), centrifuge_button, button_SelectTurnLeft));
            ui.Add(new UIButton("", TextureCache.turn180, new Rectangle(14, 42, 18, 18), centrifuge_button, button_SelectTurn180));
            ui.Add(new UIButton("", TextureCache.turnRight, new Rectangle(33, 42, 18, 18), centrifuge_button, button_SelectTurnRight));

            SetPipeSocket(new Vector2(24, 13), 1);
            AddOutputPipe(new Vector2(14, 44));
            unlimitedPipes = true;
        }
Example #4
0
 void button_SelectTurnRight()
 {
     mode  = CentrifugeMode.TurnRight;
     state = CentrifugeState.EMPTY;
 }
Example #5
0
 void button_SelectTurn180()
 {
     mode  = CentrifugeMode.Turn180;
     state = CentrifugeState.EMPTY;
 }