public OtherPlayer(PlayerInitData init) : base(init)
        {
            prefab = new PrefabManager();
            prefab.LoadPrefab("OtherPlayer");
            prefab.GetInstance().GetComponent <OtherPlayerPrefabScript>().Init(init);

            if (Players.GetPlayer().GetFaction() == init.faction)
            {
                name = new PrefabManager();
                name.LoadPrefab("NamePlate", GameObject.Find("Canvas").transform);
                name.GetInstance().GetComponent <NamePlateScript>().Init(prefab.GetInstance().transform, init.username);
            }
        }
        public void Update(float delta)
        {
            if (init.sync.hp != 0)
            {
                prefab.GetInstance().GetComponent <OtherPlayerPrefabScript>().Interpolation(init.sync, delta);

                if (name != null)
                {
                    Vector3 dir = prefab.GetInstance().transform.position - Players.GetPlayer().GetPosition();
                    if (Vector3.Dot(Players.GetPlayer().GetForward(), dir) >= 0)
                    {
                        name.GetInstance().SetActive(true);
                    }
                    else
                    {
                        name.GetInstance().SetActive(false);
                    }
                }
            }
        }
Exemple #3
0
        void Update()
        {
            if (Input.GetKeyDown(KeyCode.Escape))
            {
                Application.Quit();
            }

            GCli.Receive();

            frameSpan += Time.deltaTime;
            if (frameSpan >= 0.1f)
            {
                frameSpan = 0;

                if (Players.GetPlayer() != null)
                {
                    PushData push = Players.GetPushData();
                    if (push != null)
                    {
                        GCli.Send(MessageType.Push, GCli.Serialize <PushData>(push), NetDeliveryMethod.UnreliableSequenced);
                    }
                }
            }
        }