예제 #1
0
        /// <summary>
        /// Constructs a block selector window.
        /// </summary>
        public BlockPlacer(Engine engine, LevelEditor parentEditor)
            : base("Block Selector")
        {
            this.parentEditor = parentEditor;

            ScreenButton _but = new ScreenButton(this, "Back", "<", engine.FontMain);

            _but.Position.X = boarderSize;
            _but.Size.X     = 32;
            ElementList.Add(_but);
            _but            = new ScreenButton(this, "Forward", ">", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize;
            _but.Size.X     = 32;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but            = new ScreenButton(this, "New Block", "New", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize;
            _but.Size.X     = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but            = new ScreenButton(this, "Edit Block", "Edit", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize + 48 + boarderSize;
            _but.Size.X     = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but            = new ScreenButton(this, "Save/Load", "Sv/Ld", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize + 48 + boarderSize + 48 + boarderSize;
            _but.Size.X     = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);

            InputField = new ScreenInput(this, engine.FontMain);
            AddElement(InputField);

            PrevPosition = new Vector2((Size.X - PrevBoxWidth * PrevMaximumColumns) / 2, GetTotalElementHeight());
            this.Size.Y  = PrevPosition.Y + Screen.boarderSize + PrevMaximumRows * PrevBoxHeight;

            FilterBlocks(engine);

            this.Position = new Vector2(engine.windowSize.X - this.Size.X, 0);
        }
예제 #2
0
        public LightSettings(Engine engine, LevelEditor ParentScreen)
            : base("Light Settings")
        {
            this.Size         = new Vector2(256, 256);
            this.ParentScreen = ParentScreen;

            ParentScreen.RestrictZ = false;
            AddCloseButton(engine);
            ParentScreen.StackBlocks     = false;
            ParentScreen.StackButton.Tex = engine.textureManager.Dic["stack_off_button"];
            AddText("Click in 3D space to place sun.", engine.FontMain);
            LightIntensityBox = new ScreenInput(this, engine.FontMain, "IntensityInput");
            AddElement(LightIntensityBox);
            AmbienceBox = new ScreenInput(this, engine.FontMain, "AmbienceInput");
            AddElement(AmbienceBox);
            PictureTop = this.GetTotalElementHeight();
            this.Size  = new Vector2(256, PictureTop + 256);

            LightIntensityBox.InputString = engine.primManager.myEffect.LightIntensity.ToString();
            AmbienceBox.InputString       = engine.primManager.myEffect.Ambience.ToString();
        }
예제 #3
0
        public LightSettings(Engine engine, LevelEditor ParentScreen)
            : base("Light Settings")
        {
            this.Size = new Vector2(256, 256);
            this.ParentScreen = ParentScreen;

            ParentScreen.RestrictZ = false;
            AddCloseButton(engine);
            ParentScreen.StackBlocks = false;
            ParentScreen.StackButton.Tex = engine.textureManager.Dic["stack_off_button"];
            AddText("Click in 3D space to place sun.", engine.FontMain);
            LightIntensityBox = new ScreenInput(this, engine.FontMain, "IntensityInput");
            AddElement(LightIntensityBox);
            AmbienceBox = new ScreenInput(this, engine.FontMain, "AmbienceInput");
            AddElement(AmbienceBox);
            PictureTop = this.GetTotalElementHeight();
            this.Size = new Vector2(256, PictureTop + 256);

            LightIntensityBox.InputString = engine.primManager.myEffect.LightIntensity.ToString();
            AmbienceBox.InputString = engine.primManager.myEffect.Ambience.ToString();
        }
예제 #4
0
        /// <summary>
        /// Constructs a block selector window.
        /// </summary>
        public BlockPlacer(Engine engine, LevelEditor parentEditor)
            : base("Block Selector")
        {
            this.parentEditor = parentEditor;

            ScreenButton _but = new ScreenButton(this, "Back", "<", engine.FontMain);
            _but.Position.X = boarderSize;
            _but.Size.X = 32;
            ElementList.Add(_but);
            _but = new ScreenButton(this, "Forward", ">", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize;
            _but.Size.X = 32;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but = new ScreenButton(this, "New Block", "New", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize;
            _but.Size.X = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but = new ScreenButton(this, "Edit Block", "Edit", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize + 48 + boarderSize;
            _but.Size.X = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);
            _but = new ScreenButton(this, "Save/Load", "Sv/Ld", engine.FontMain);
            _but.Position.X = boarderSize + 32 + boarderSize + 32 + boarderSize + 48 + boarderSize + 48 + boarderSize;
            _but.Size.X = 48;
            _but.Position.Y = headerSize + boarderSize;
            ElementList.Add(_but);

            InputField = new ScreenInput(this, engine.FontMain);
            AddElement(InputField);

            PrevPosition = new Vector2((Size.X - PrevBoxWidth * PrevMaximumColumns) / 2, GetTotalElementHeight());
            this.Size.Y = PrevPosition.Y + Screen.boarderSize + PrevMaximumRows * PrevBoxHeight;

            FilterBlocks(engine);

            this.Position = new Vector2(engine.windowSize.X - this.Size.X, 0);
        }