Exemplo n.º 1
0
        protected override void OnGamepadPluggedIn(SocketGamepad gamepad)
        {
            //Temporary until Acquire Caleb's menu system to select player


            if (PlayerSpawn.Count > 0)
            {
                //Debug.Log("Next Player: " + NextSpawn.ToString());
                if (NextSpawn < PlayerSpawn.Count)
                {
                    GameObject PlayerObj = PlayerSpawn[NextSpawn].Spawn(PlayerSpawn[NextSpawn].transform.position, PlayerSpawn[NextSpawn].transform.rotation);

                    SurvivorPlayer Player = PlayerObj.AddComponent <SurvivorPlayer>();
                    Player.Gamepad  = gamepad;
                    Player.FyoApp   = this;
                    Player.PlayerId = LocalPlayers.Count;

                    LocalPlayers.Add(Player);
                    ActiveGamepads.Add(gamepad, Player);

                    Framing.TrackedObjects.Add(Player.gameObject);
                }

                //Advance Spawn Point
                if (++NextSpawn >= PlayerSpawn.Count)
                {
                    NextSpawn = 0;
                }
            }
            else
            {
                Debug.LogError("Negative Spawn Index");
            }
        }
Exemplo n.º 2
0
        protected override void OnGamepadPluggedIn(SocketGamepad gamepad)
        {
            if (!ActiveGamepads.ContainsKey(gamepad))
            {
                GameObject PlayerObj = Instantiate(PlayerPrefab, transform);
                Paddle     Player    = PlayerObj.GetComponent <Paddle>();
                Player.FyoApp   = this;
                Player.Gamepad  = gamepad;
                Player.PlayerId = ActiveGamepads.Count;
                ActiveGamepads.Add(gamepad, Player);

                if (Player.PlayerId < PlayerStart.Count)
                {
                    RectTransform t  = PlayerStart[Player.PlayerId];
                    RectTransform pt = Player.GetComponent <RectTransform>();

                    //Set Player Color
                    UnityEngine.UI.Image PlayerStartImg = PlayerStart[Player.PlayerId].GetComponent <UnityEngine.UI.Image>();
                    UnityEngine.UI.Image PlayerImg      = pt.GetComponent <UnityEngine.UI.Image>();
                    PlayerImg.color = PlayerStartImg.color;

                    pt.position   = t.position;
                    pt.rotation   = t.rotation;
                    pt.localScale = t.localScale;
                    pt.SetParent(transform);

                    SGUpdateMsg ControllerUpdate = new SGUpdateMsg(gamepad);
                    ControllerUpdate.Data = new JSONObject();
                    ControllerUpdate.Data.AddField("MessageType", JSONObject.CreateStringObject("PlayerColor"));
                    ControllerUpdate.Data.AddField("Color", JSONObject.CreateStringObject(PlayerImg.color.ToString()));

                    PlayerStart[Player.PlayerId].gameObject.SetActive(false);
                }
            }
        }
Exemplo n.º 3
0
        protected override void OnGamepadPluggedIn(SocketGamepad gamepad)
        {
            if (!ActiveGamepads.ContainsKey(gamepad))
            {
                GameObject      PlayerObj = Instantiate(PlayerPrefab);
                InputTestPlayer Player    = PlayerObj.GetComponent <InputTestPlayer>();
                Player.FyoApp   = this;
                Player.Gamepad  = gamepad;
                Player.PlayerId = ActiveGamepads.Count;
                ActiveGamepads.Add(gamepad, Player);

                if (Player.PlayerId < PlayerStart.Count)
                {
                    Transform t = PlayerStart[Player.PlayerId];
                    Player.transform.position   = t.position;
                    Player.transform.rotation   = t.rotation;
                    Player.transform.localScale = t.localScale;
                }
            }
        }
Exemplo n.º 4
0
        protected override void OnGamepadPluggedIn(SocketGamepad gamepad)
        {
            if (XPlayer.Gamepad == null)
            {
                XPlayer.Xs      = true;
                XPlayer.FyoApp  = this;
                XPlayer.Gamepad = gamepad;
                XPlayer.PlayerIcon.SetActive(true);
                ActiveGamepads.Add(gamepad, XPlayer);
                XPlayer.InputWait = DateTime.Now.Ticks + (InputWaitMs * TimeSpan.TicksPerMillisecond);
                Debug.Log("X Connected");
            }
            else if (OPlayer.Gamepad == null)
            {
                OPlayer.Xs      = false;
                OPlayer.FyoApp  = this;
                OPlayer.Gamepad = gamepad;
                OPlayer.PlayerIcon.SetActive(true);
                Debug.Log("O Connected");
                ActiveGamepads.Add(gamepad, OPlayer);
                OPlayer.InputWait = DateTime.Now.Ticks + (InputWaitMs * TimeSpan.TicksPerMillisecond);
            }
            else
            {
                //Reconnected?
                if (CurrentMode == CurrentModeType.Playing && (XPlayer.Gamepad == gamepad || OPlayer.Gamepad == gamepad))
                {
                    SendGameState(gamepad);
                }
            }

            if (XPlayer.Gamepad != null && OPlayer.Gamepad != null && CurrentMode == CurrentModeType.WaitForPlayers)
            {
                CurrentMode = CurrentModeType.WaitForReady;
                Debug.Log("Waiting for Players to Ready");
            }
        }