Esempio n. 1
0
        public void world_SpawnPlayerList(S2GC_PlayerList spawnList)
        {
            foreach (S2GC_PlayerList.PlayerSpawnData p in spawnList.Data)
            {
                if (p.PlayerID != Player_Self.PlayerID)
                {
                    PlayerData_Other newPlayer = GameObject.Instantiate(playerOtherPrefab).GetComponent <PlayerData_Other>();
                    newPlayer.PlayerID        = p.PlayerID;
                    newPlayer.CharacterName   = p.CharacterName;
                    newPlayer.gameObject.name = p.CharacterName;
                    newPlayer.gameObject.transform.position = p.Position.V3;
                    newPlayer.gameObject.transform.rotation = Quaternion.Euler(p.Rotation.V3);
                    newPlayer.Level              = p.Level;
                    newPlayer.Health             = p.HP;
                    newPlayer.maxHealth          = p.MaxHP;
                    newPlayer.Energy             = p.Energy;
                    newPlayer.maxEnergy          = p.MaxEnergy;
                    newPlayer.CharacterGender    = p.CharacterGender;
                    newPlayer.CharacterEyeShape  = p.CharacterEyeShape;
                    newPlayer.CharacterEyeType   = p.CharacterEyeType;
                    newPlayer.CharacterEyeColor  = p.CharacterEyeColor.V4;
                    newPlayer.CharacterFrontHair = p.CharacterFrontHair;
                    newPlayer.CharacterBackHair  = p.CharacterBackHair;
                    newPlayer.CharacterHairColor = p.CharacterHairColor.V4;

                    newPlayer.Init(e);

                    e.getUI().ui_world_CreatePlayerNameplate(newPlayer);

                    e.getUI().ui_chat_CreateMessage(ChatMSGType.System, "", p.CharacterName + " has joined.");

                    PlayerList.Add(newPlayer);
                }
            }
        }
Esempio n. 2
0
        public void world_SpawnSinglePlayer(S2GC_PlayerSpawn s)
        {
            if (s.SpawnData.PlayerID != Player_Self.PlayerID)
            {
                PlayerData_Other newPlayer = GameObject.Instantiate(playerOtherPrefab).GetComponent <PlayerData_Other>();
                newPlayer.PlayerID        = s.SpawnData.PlayerID;
                newPlayer.CharacterName   = s.SpawnData.CharacterName;
                newPlayer.gameObject.name = s.SpawnData.CharacterName;
                newPlayer.gameObject.transform.position = s.SpawnData.Position.V3;
                newPlayer.gameObject.transform.rotation = Quaternion.Euler(s.SpawnData.Rotation.V3);
                newPlayer.Level              = s.SpawnData.Level;
                newPlayer.Health             = s.SpawnData.HP;
                newPlayer.maxHealth          = s.SpawnData.MaxHP;
                newPlayer.Energy             = s.SpawnData.Energy;
                newPlayer.maxEnergy          = s.SpawnData.MaxEnergy;
                newPlayer.CharacterGender    = s.SpawnData.CharacterGender;
                newPlayer.CharacterEyeShape  = s.SpawnData.CharacterEyeShape;
                newPlayer.CharacterEyeType   = s.SpawnData.CharacterEyeType;
                newPlayer.CharacterEyeColor  = s.SpawnData.CharacterEyeColor.V4;
                newPlayer.CharacterFrontHair = s.SpawnData.CharacterFrontHair;
                newPlayer.CharacterBackHair  = s.SpawnData.CharacterBackHair;
                newPlayer.CharacterHairColor = s.SpawnData.CharacterHairColor.V4;

                newPlayer.Init(e);

                e.getUI().ui_world_CreatePlayerNameplate(newPlayer);

                e.getUI().ui_chat_CreateMessage(ChatMSGType.System, "", s.SpawnData.CharacterName + " has joined.");

                PlayerList.Add(newPlayer);
            }

            /*
             * if (spawnInfo.ID == Player_Self.ID)
             *  return;
             * foreach (PlayerData plr in PlayerList)
             * {
             *  if (plr.ID == spawnInfo.ID)
             *      return;
             * }
             * PlayerData newPlayer = new PlayerData
             * {
             *  GObject = (GameObject)GameObject.Instantiate(playerOtherPrefab, spawnInfo.position, spawnInfo.rotation)
             * };
             * newPlayer.GObject.name = spawnInfo.name;
             * newPlayer.Name = spawnInfo.name;
             * newPlayer.ID = spawnInfo.ID;
             * newPlayer.GObject.GetComponent<CapsuleCollider>().enabled = true;
             * //newPlayer.Object.GetComponent<MeshRenderer>().enabled = true;
             * newPlayer.OPController = newPlayer.GObject.GetComponent<Client_OtherPlayerController>();
             * newPlayer.OPController.init(e);
             * e.getUI().ui_world_CreatePlayerNameplate(newPlayer);
             *
             * e.getUI().ui_chat_CreateMessage(ChatMSGType.System, "", spawnInfo.name + " has joined.");
             *
             * PlayerList.Add(newPlayer);
             */
        }
Esempio n. 3
0
        public void Create(Client_Engine eng, PlayerData_Other n)
        {
            e               = eng;
            isPlayer        = true;
            gameObject.name = n.CharacterName + "_Nameplate";
            Vector3 viewPos = Camera.main.WorldToViewportPoint(n.gameObject.transform.position);

            transform.position = new Vector3((viewPos.x - 0.5f) * Camera.main.pixelWidth, (viewPos.y - 0.5f) * Camera.main.pixelHeight, 0f);
            playerTarget       = n.gameObject;
            setNameplateName(n.CharacterName);
            setNameplateColor(3);
            setNameplateHealthValues(n.Health, n.maxHealth);
            setNameplateEnergyValues(n.Energy, n.maxEnergy);
            targetOffset.y = 3.25f;
            ID             = n.PlayerID;
        }
Esempio n. 4
0
        public static GameObject BuildPlayerModel(PlayerData_Other p)
        {
            GameObject Model;

            if (p.CharacterGender == 0)
            {
                Model = GameObject.Instantiate(MaleModel);
            }
            else
            {
                Model = GameObject.Instantiate(FemaleModel);
            }

            GameObject HairF = GameObject.Instantiate(HairFront[p.CharacterFrontHair], Model.transform);
            GameObject HairB = GameObject.Instantiate(HairBack[p.CharacterBackHair], Model.transform);

            Material HairM = new Material(HairMaterial);

            HairM.SetColor("_MainColor", p.CharacterHairColor);
            HairF.GetComponent <SkinnedMeshRenderer>().material = HairM;
            HairB.GetComponent <SkinnedMeshRenderer>().material = HairM;

            Material EyeM      = new Material(EyeMaterial);
            Material EyeBlendM = new Material(EyeBlendMaterial);

            EyeBlendM.SetTexture("_MainTex", EyeTextures[p.CharacterEyeType]);
            EyeBlendM.SetTexture("_MaskTex", EyeMaskTextures[p.CharacterEyeType]);
            EyeBlendM.SetColor("_Color", p.CharacterEyeColor);
            RenderTexture RendTex = new RenderTexture(512, 512, 32);

            RendTex.Create();
            Graphics.Blit(EyeTextures[p.CharacterEyeType], RendTex, EyeBlendM);
            EyeM.mainTexture = RendTex;
            SkinnedMeshRenderer r = Model.transform.GetChild(1).gameObject.GetComponent <SkinnedMeshRenderer>();

            Material[] mats = r.sharedMaterials;
            mats[2]           = EyeM;
            r.sharedMaterials = mats;


            mesh_AttachHair(Model, HairF, "Hair_F");
            mesh_AttachHair(Model, HairB, "Hair_R");

            return(Model);
        }
        /*public void ui_lobby_SelectCharacter(int index)
         * {
         *  lobby_SelectedCharacterIndex = index;
         *  // Change character preview here later on....
         *  lobby_EnterWorldButton.interactable = true;
         *  lobby_DeleteCharacterButton.interactable = true;
         * }
         *
         * public void ui_lobby_AskDeleteCharacter()
         * {
         *  if(lobby_SelectedCharacterIndex != -1)
         *  {
         *      e.getNetwork().net_lobbyAskDeleteCharacter(lobby_SelectedCharacterIndex);
         *  }
         * }
         *
         * public void ui_lobby_LogoutToTitle()
         * {
         *  lobby_CharacterList = null;
         *  e.getNetwork().net_FullClientDisconnect();
         *  ui_login_Disconnected("Logged out.");
         * }
         *
         * public void ui_lobby_AskWorldEnter()
         * {
         *  if (lobby_SelectedCharacterIndex != -1)
         *      e.getNetwork().net_lobbyAskWorldConnect(lobby_SelectedCharacterIndex);
         * }*/

        public void ui_world_CreatePlayerNameplate(PlayerData_Other parent)
        {
            parent.Nameplate = GameObject.Instantiate(nameplate_Prefab, nameplate_Parent.transform).GetComponent <Nameplate>();
            parent.Nameplate.Create(e, parent);
        }