Exemplo n.º 1
0
    public void Destroy()
    {
        allSize = Mathf.Min(allSize, 1);
        Scale(allSize);
        instance = null;

        if (onEnd != null)
        {
            onEnd();
        }

        UpdateController.RemoveFixedUpdatable("BankMenu");
        UpdateController.AddFixedUpdatable("BankMenuDestroying", (f) => {
            allSize -= f * 2f;

            if (allSize <= 0)
            {
                foreach (var w in objects)
                {
                    w.Destroy();
                }

                black.Destroy();

                UpdateController.RemoveFixedUpdatable("BankMenuDestroying");
                return;
            }

            Scale(allSize);

            black.color            = new Color(1, 1, 1, allSize * 0.84f);
            black.positionInMeters = CameraController.cameraPosition;
        });
    }
Exemplo n.º 2
0
    public BankMenu(Actions.VoidVoid onMoneyChange = null, Actions.VoidVoid _onEnd = null, float deltaLayer = 0)
    {
        new SlideController(0, 0, SlideController.Mode.ReadOnly, 3);

        objects   = new List <GUIObject> ();
        sizes     = new List <Vector2> ();
        positions = new List <Vector2> ();

        onEnd = _onEnd;

        instance = this;

        objects.Add(new GUIImage("Textures/SelectLevel/Interface/" + (Settings.diamonds / 1000) % 10, -0.5f + deltaLayer
                                 , new Vector2(-0.1f, 5.54f), new Vector2(-1, -1)));
        objects.Add(new GUIImage("Textures/SelectLevel/Interface/" + (Settings.diamonds / 100) % 10, -0.5f + deltaLayer
                                 , new Vector2(0.4f, 5.54f), new Vector2(-1, -1)));
        objects.Add(new GUIImage("Textures/SelectLevel/Interface/" + (Settings.diamonds / 10) % 10, -0.5f + deltaLayer
                                 , new Vector2(0.9f, 5.54f), new Vector2(-1, -1)));
        objects.Add(new GUIImage("Textures/SelectLevel/Interface/" + (Settings.diamonds / 1) % 10, -0.5f + deltaLayer
                                 , new Vector2(1.39f, 5.54f), new Vector2(-1, -1)));

        objects.Add(new GUIImage("Textures/SelectLevel/Interface/DiamondsBar", -0.4f + deltaLayer, new Vector2(0.64f, 5.54f), new Vector2(-1, -1)));


        black = new GUIImageAlpha("Textures/Black", -1.2f + deltaLayer, new Vector2(0, 0) + CameraController.cameraPosition
                                  , new Vector2(CameraController.widthInMeters, CameraController.heightInMeters));
        black.color       = new Color(1, 1, 1, 0);
        black.isClickable = true;

        objects.Add(new GUIImage("Textures/Bank/Background", -1.1f + deltaLayer, new Vector2(0, 0), new Vector2(-1, -1)));

        var back = new GUIButton("Textures/Back", -1.0f + deltaLayer, new Vector2(7.31f, 5.58f), new Vector2(-1, -1));

        back.OnButtonDown = (b) => {
            back += "Pressed";
        };
        back.OnButtonUp = (b) => {
            back -= "Pressed";
        };
        back.OnClick = (b) => {
            Destroy();
        };

        objects.Add(back);


        //moneyText = new GUIText (Settings.money.ToString (), -0.5f + deltaLayer, new Vector2 (0.5f, 13f)
        //    , new Vector2 (0.3f, 0.3f), GUIText.FontName.Font5);

        //objects.Add (moneyText);

        CreateLine(onMoneyChange, onMoneyChange, new Vector2(-4f, 1.9f), 30, 0.99f, "USD", deltaLayer, "Textures/Bank/Video", true);
        CreateLine(onMoneyChange, onMoneyChange, new Vector2(4f, 1.9f), 100, 2.99f, "USD", deltaLayer);
        CreateLine(onMoneyChange, onMoneyChange, new Vector2(-4f, -2.99f), 200, 4.99f, "USD", deltaLayer);
        CreateLine(onMoneyChange, onMoneyChange, new Vector2(4f, -2.99f), 500, 9.99f, "USD", deltaLayer);
        //CreateLine (onMoneyChange, 1, 150, 1.5f, "USD", deltaLayer);
        //CreateLine (onMoneyChange, 2, 300, 3, "USD", deltaLayer);
        //CreateLine (onMoneyChange, 3, 750, 4.5f, "USD", deltaLayer);

        foreach (var w in objects)
        {
            sizes.Add(w.sizeInMeters);
            positions.Add(w.positionInMeters);
        }

        allSize = 0;
        bool isScaled = false;

        Scale(0);

        UpdateController.AddFixedUpdatable("BankMenu", (f) => {
            allSize += f * 2f;

            if (!isScaled)
            {
                if (allSize > 1)
                {
                    allSize  = 1f;
                    isScaled = true;
                }

                Scale(allSize);
            }

            if (!isScaled)
            {
                black.color = new Color(1, 1, 1, allSize * 0.84f);
            }

            black.positionInMeters = CameraController.cameraPosition;
        });
    }