Example #1
0
        protected override void Initialize()
        {
            base.Initialize();
            //health = maxHealth;

            conditions = Owner.FindComponents <VictoryCondition>(isExactType: false);
            finished   = false;
            ns         = Owner.Scene as NetworkedScene;
        }
Example #2
0
        /**
         * <summary>
         * Adds all the UI regarding this player (including a kick button for the host)
         * </summary>
         */
        public void Set(string playerID, string playerName, bool isLocalPlayer, int number, NetworkedScene networkedScene)
        {
            serverDispatcher    = networkedScene.serverDispatcher;
            playerIdentifier    = playerID;
            this.playerName     = playerName;
            this.networkService = networkedScene.networkService;
            pName = new TextBlock {
                Text = playerName, Margin = new Thickness(0, firstGUILine + (distanceBetweenPlayers * number), 0, 0)
            };
            networkedScene.EntityManager.Add(pName);


            nextColor = new Button {
                IsBorder = isLocalPlayer, Text = "Change", Width = 100, Margin = new Thickness(300, firstGUILine + (distanceBetweenPlayers * number), 10, 10)
            };
            networkedScene.EntityManager.Add(nextColor);

            toggleReady = new CustomButton()
            {
                IsBorder = isLocalPlayer, Text = "Not ready", Margin = new Thickness(450, firstGUILine + (distanceBetweenPlayers * number), 10, 10)
            };
            networkedScene.EntityManager.Add(toggleReady);

            if (isLocalPlayer)
            {
                toggleReady.Click += ChangeReady;
                previousTeam       = new Button {
                    Text = "<", Width = 30, Height = 30, Margin = new Thickness(110, firstGUILine + (distanceBetweenPlayers * number), 0, 0)
                };
                nextTeam = new Button {
                    Text = ">", Width = 30, Height = 30, Margin = new Thickness(230, firstGUILine + (distanceBetweenPlayers * number), 0, 0)
                };

                previousTeam.Click += PreviousTeam;
                nextTeam.Click     += NextTeam;

                networkedScene.EntityManager.Add(previousTeam);
                networkedScene.EntityManager.Add(nextTeam);

                nextColor.Click += NextColor;
            }
            textTeam = new TextBlock {
                Text = "No team", Margin = new Thickness(150, firstGUILine + (distanceBetweenPlayers * number), 10, 10)
            };
            networkedScene.EntityManager.Add(textTeam);


            if (networkedScene.isHost)
            {
                playerColor           = networkedScene.serverDispatcher.FindNextColor(-1);
                nextColor.Text        = ClientDispatcher.colorNames[playerColor];
                nextColor.Foreground  = ClientDispatcher.colors[playerColor];
                nextColor.BorderColor = ClientDispatcher.colors[playerColor];

                kickButton = new Button {
                    IsVisible = !isLocalPlayer, Text = "Kick", Margin = new Thickness(600, firstGUILine + (distanceBetweenPlayers * number), 10, 10)
                };
                kickButton.Click += Kick;
                networkedScene.EntityManager.Add(kickButton);
            }
            WaveServices.Layout.PerformLayout();
        }
Example #3
0
 protected override void Initialize()
 {
     base.Initialize();
     this.scene = (Owner.Scene as NetworkedScene);
 }