Beispiel #1
0
 //if we detect player rotation from anyone who isn't the local player
 private void RotationgDetected(NetworkStructs.RotationData data)
 {
     if (data.id != ourClientId && players[data.id] != null)
     {
         NetworkedPlayerAdapter character = players[data.id].avatar.GetComponent <NetworkedPlayerAdapter>();
         float xRot = data.xRot;
         float yRot = data.yRot;
         character.Look(xRot, yRot);
     }
 }
Beispiel #2
0
    //Depricated Function

    /*
     * private void CallAIs()
     * {
     *  GameObject[] enemies = GameObject.FindGameObjectsWithTag("Enemy");
     *  foreach (GameObject enemy in enemies)
     *  {
     *      enemy.GetComponent<AIMineBot>().CheckIsControlled();
     *  }
     * }
     */

    //if we detect player movement from anyone who isn't the local player
    private void MovementDetected(NetworkStructs.PositionVelocityData data)
    {
        if (data.id != ourClientId && players[data.id] != null)
        {
            NetworkedPlayerAdapter character = players[data.id].avatar.GetComponent <NetworkedPlayerAdapter>();
            Vector3 pos = new Vector3(data.xPos, data.yPos, data.zPos);
            Vector3 vel = new Vector3(data.xVel, data.yVel, data.zVel);

            character.Move(pos, vel);
        }
    }
Beispiel #3
0
    //spawn the players in (both local and non-local players)
    private void SpawnPlayer(string playerName, int cnnId)
    {
        GameObject go = Instantiate(playerPrefab) as GameObject;

        //Is this ours?
        if (cnnId == ourClientId)
        {
            //Hook up camera
            GameObject cam = GameObject.Find("Main Camera");
            cam.transform.SetParent(go.transform.GetChild(1));
            cam.transform.position = go.transform.GetChild(1).position;
            cam.transform.rotation = go.transform.GetChild(1).rotation;
            //Set up look script
            MouseLook ml = cam.GetComponent <MouseLook>();
            ml.MouseState(true);
            ml.playerBody = go.transform;
            //attach pointer
            Transform pointer = go.transform.GetChild(1).GetChild(0);
            Debug.Log(pointer.name);
            pointer.SetParent(cam.transform);

            //Hook up movement
            go.AddComponent <PlayerMovement>();

            //Disable connection panel and start game
            GameObject.Find("ClientConnectionPanel").SetActive(false);
            isStarted = true;
        }
        else
        {
            //add networked player adapter
            NetworkedPlayerAdapter ap = go.AddComponent <NetworkedPlayerAdapter>();
            ap.body          = go.transform;
            ap.lookComponent = go.transform.GetChild(1);
        }

        Player p = new Player();

        p.avatar       = go;
        p.playerName   = playerName;
        p.connectionID = cnnId;
        p.avatar.GetComponentInChildren <TextMesh>().text = playerName;
        players.Add(cnnId, p);
    }