コード例 #1
0
ファイル: MainWindow.xaml.cs プロジェクト: adriik/SWP
 private void SetSystemBoxFocus()
 {
     SystemBox.Dispatcher.Invoke(new Action(() =>
     {
         SystemBox.Focus();
         SystemBox.Effect = (DropShadowEffect)MainGrid.Resources["glowEffect"];
         UserBox.Effect   = null;
     }));
 }
コード例 #2
0
        public void SetShipGenerator(Library.ShipGenerator gen, int layout = 0)
        {
            if (lstSystems != null)
            {
                foreach (var system in lstSystems)
                {
                    system.Remove();
                }
                lstSystems.Clear();
                lstSystems = null;
            }

            // Set current ship
            currentShipGen = gen;
            currentShip    = gen.Generate(layout);

            // Update ship renderer
            shipRenderer.Ship = currentShip;

            // Update layout buttons
            btnLayoutA.Enabled = (currentShipGen.NumberOfLayouts >= 1);
            btnLayoutA.Toggled = (layout == 0);
            btnLayoutA.UpdateImage();
            btnLayoutB.Enabled = (currentShipGen.NumberOfLayouts >= 2);
            btnLayoutB.Toggled = (layout == 1);
            btnLayoutB.UpdateImage();

            // Create new UI
            tbShipName.Text = currentShip.Name;

            lstSystems = new List <ImageButton>();
            var systems = currentShip.Systems;

            for (int i = 0; i < systems.Count; i++)
            {
                var system    = systems[i];
                var btnSystem = new ImageButton();
                btnSystem.Image         = Root.Singleton.Material("img/customizeUI/box_system_on.png");
                btnSystem.HoveredImage  = Root.Singleton.Material("img/customizeUI/box_system_select2.png");
                btnSystem.DisabledImage = Root.Singleton.Material("img/customizeUI/box_system_off.png");
                btnSystem.Enabled       = true;
                //btnSystem.HoverSound = Root.Singleton.Sound("audio/waves/ui/select_light1.wav");
                Util.LayoutControl(btnSystem, 370 + (i * 38), 380, 38, 96, rctScreen);
                btnSystem.Parent = Root.Singleton.Canvas;
                btnSystem.Init();

                var systembox = new SystemBox();
                systembox.SystemIcon = Root.Singleton.Material(system.IconGraphics["green"]);
                systembox.PowerLevel = system.MinPower;
                systembox.Width      = btnSystem.Width - 2;
                systembox.Height     = btnSystem.Height - 2;
                systembox.Parent     = btnSystem;
                systembox.Init();

                lstSystems.Add(btnSystem);
            }
        }
コード例 #3
0
        private void CreateSystems()
        {
            ISystem newSystem;

            newSystem = new SystemRender(shaderManager.FindShader("pbrShader"));
            systemManager.AddSystem(newSystem);

            newSystem = new SystemPhysics(entityManager.Entities());
            systemManager.AddSystem(newSystem);

            newSystem = new SystemBox(entityManager.Entities());
            systemManager.AddSystem(newSystem);

            newSystem = new SystemDoomSphere(entityManager.Entities());
            systemManager.AddSystem(newSystem);

            newSystem = new SystemCollsion(entityManager.Entities());
            systemManager.AddSystem(newSystem);

            systemManager.StartTimer();
        }