Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public override void KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
            case Keys.D1:
                currentShip = shipList.ElementAtOrDefault(0);
                break;

            case Keys.D2:
                currentShip = shipList.ElementAtOrDefault(1);
                break;

            case Keys.Q:
                currentShip.EfficientLoading = !currentShip.EfficientLoading;
                break;

            case Keys.Insert:
                currentShip = controllablesManager.CreateShip("D2RP", $"F4P");

                shipList.Add(currentShip);

                currentShip.TryContinue();
                break;

            case Keys.Tab:
                showScoreBoard = !showScoreBoard;
                break;
            }
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        public GameScreen(GameUI parent)
            : base(parent)
        {
            this.parent          = parent;
            universeSession      = parent.Session;
            universeGroup        = universeSession.UniverseGroup;
            mapManager           = universeSession.MapManager;
            controllablesManager = universeSession.ControllablesManager;

            foreach (Flattiverse.Team team in universeGroup.Teams)
            {
                SolidColorBrush teamColor = new SolidColorBrush(parent.WindowRenderTarget, new SharpDX.Color4(team.Red, team.Green, team.Blue, 1f));

                if (!Brushes.SolidColorBrushes.TeamColors.ContainsKey(team.Name))
                {
                    Brushes.SolidColorBrushes.TeamColors.Add(team.Name, teamColor);
                }
            }

            dashedStrokeStyle = new StrokeStyle(parent.Direct2DFactory, new StrokeStyleProperties()
            {
                DashStyle = DashStyle.Dash, DashCap = CapStyle.Flat
            });
            missionTargetTextFormat = new SharpDX.DirectWrite.TextFormat(parent.DirectWriteFactory, "Arial", SharpDX.DirectWrite.FontWeight.Normal, SharpDX.DirectWrite.FontStyle.Normal, 12f);

            scoreBoard = new UniverseTable(this, universeGroup, Brushes.SolidColorBrushes.BlackHalfTransparent);

            scoreBoard.AddColumn(" ", "SmallAvatar", 40f, UniverseTeamTable.MAX_COLUMN_HEIGHT);
            scoreBoard.AddColumn("Name", "Name", UniverseTeamTable.MAX_COLUMN_WIDTH, UniverseTeamTable.MAX_COLUMN_HEIGHT);
            scoreBoard.AddColumn("Score", "Score", UniverseTeamTable.MAX_COLUMN_WIDTH, UniverseTeamTable.MAX_COLUMN_HEIGHT);
            scoreBoard.AddColumn("Kills", "Kills", UniverseTeamTable.MAX_COLUMN_WIDTH, UniverseTeamTable.MAX_COLUMN_HEIGHT);
            scoreBoard.AddColumn("Deaths", "Deaths", UniverseTeamTable.MAX_COLUMN_WIDTH, UniverseTeamTable.MAX_COLUMN_HEIGHT);
            scoreBoard.AddColumn("Avg. Commit Time", "AverageCommitTime", 250f, UniverseTeamTable.MAX_COLUMN_HEIGHT);

            currentShip = controllablesManager.CreateShip("D2RP", $"R1P");

            shipList.Add(currentShip);

            currentShip.TryContinue();
        }