Esempio n. 1
0
        public void SetPlayerInfo(LuaTable table)
        {
            instanceID = table["instanceID"].ToString().ToUInt32();
            LuaTable playerDataTable = (LuaTable)table["playerData"];

            if (playerDataTable != null)
            {
                playerData = PlayerData.GetPlayerData(playerDataTable["id"].ToString().ToUInt32());
                heroData   = HeroData.GetHeroDataByID(playerData.heroId);
                avatarData = AvatarData.GetAvatarData(playerData.avatarID);
            }
            hairCutIndex   = table["hairCutIndex"].ToString().ToUInt32();
            hairColorIndex = table["hairColorIndex"].ToString().ToUInt32();
            faceIndex      = table["faceIndex"].ToString().ToUInt32();
            skinIndex      = table["skinIndex"].ToString().ToInt32();
            //			name = table["name"].ToString();
            exp               = table["exp"].ToString().ToInt32();
            level             = table["level"].ToString().ToInt32();
            advanceLevel      = table["advanceLevel"].ToString().ToInt32();
            strengthenLevel   = table["strengthenLevel"].ToString().ToInt32();
            strengthenExp     = table["strengthenExp"].ToString().ToInt32();
            breakthroughLevel = table["breakthroughLevel"].ToString().ToInt32();
            weaponID          = table["weaponID"].ToString().ToInt32();
            armorID           = table["armorID"].ToString().ToInt32();;
            accessoryID       = table["accessoryID"].ToString().ToInt32();
        }
Esempio n. 2
0
        private void Init()
        {
            hairCutSettingText.text   = Localization.Get("ui.create_role_view.hair_cut_setting");
            hairColorSettingText.text = Localization.Get("ui.create_role_view.hair_color_setting");
            faceSettingText.text      = Localization.Get("ui.create_role_view.face_setting");

            previousStepText.text            = Localization.Get("ui.create_role_view.previous_step");
            createRoleText.text              = Localization.Get("ui.create_role_view.create_role");
            pleaseCustomizeYourRoleText.text = Localization.Get("ui.create_role_view.please_customize_you_role");

            PlayerData selectedPlayerData = PlayerData.GetPlayerData(CreateRoleProxy.instance.selectedPlayerID);
            AvatarData avatarData         = AvatarData.GetAvatarData(selectedPlayerData.avatarID);

            int faceIconCount = skinIconList.Count;

            for (int faceIconIndex = 0; faceIconIndex < faceIconCount; faceIconIndex++)
            {
                skinIconList[faceIconIndex].SetSprite(ResMgr.instance.Load <Sprite>(avatarData.faceIconPaths[faceIconIndex]));
                skinIconList[faceIconIndex].SetNativeSize();
            }

            for (int i = 0, count = hairCutTipsText.Count; i < count; i++)
            {
                hairCutTipsText[i].text = Localization.Get("ui.create_role_view.hairCutTips_" + (i + 1));
            }

            for (int i = 0, count = hairColorTipsText.Count; i < count; i++)
            {
                hairColorTipsText[i].text = Localization.Get("ui.create_role_view.hairColorTips_" + (i + 1));
            }

            Debugger.Log("Create Role");
            _characterEntity = CharacterEntity.CreatePlayerEntityAsUIElement(selectedPlayerData);
            if (_characterEntity == null)
            {
                return;
            }
            TransformUtil.SwitchLayer(_characterEntity.transform, (int)LayerType.UI);
            _characterEntity.transform.SetParent(heroModelRoot, false);
            _characterEntity.transform.localPosition = Vector3.zero;
            _characterEntity.transform.localRotation = Quaternion.Euler(Vector3.zero);
            _characterEntity.transform.localScale    = Vector3.one;

            Logic.Model.View.ModelRotateAndAnim modelRotateAndAnim = _characterEntity.gameObject.AddComponent <Logic.Model.View.ModelRotateAndAnim>();
            modelRotateAndAnim.canClick      = true;
            modelRotateAndAnim.stateNameHash = Common.Animators.AnimatorUtil.VICTORY_02_ID;
            modelRotateAndAnim.ClickBehavior();
            CapsuleCollider capsuleCollider = _characterEntity.gameObject.AddComponent <CapsuleCollider>();

            capsuleCollider.height         = 2.5f;
            capsuleCollider.radius         = 0.5f;
            capsuleCollider.center         = new Vector3(0f, 1.2f, 0f);
            _characterEntity.transform.tag = "Character";

            CreateRoleController.instance.SelectHairCut(0);
            CreateRoleController.instance.SelectHairColor(0);
            CreateRoleController.instance.SelectFace(0);
            CreateRoleController.instance.SelectSkin(0);
        }
Esempio n. 3
0
 public PlayerInfo(uint playerID)
 {
     this.instanceID     = playerID;
     this.playerData     = PlayerData.GetPlayerData(playerID);
     this.heroData       = HeroData.GetHeroDataByID(playerData.heroId);
     this.avatarData     = AvatarData.GetAvatarData(this.playerData.avatarID);
     this.hairCutIndex   = 0;
     this.hairColorIndex = 0;
     this.faceIndex      = 0;
     this.skinIndex      = 0;
     this.advanceLevel   = (int)heroData.starMin;
 }
Esempio n. 4
0
        private void ChangeHairColor(int index)
        {
            Debugger.Log("ChangeHairColor:" + index);
            PlayerData selectedPlayerData = PlayerData.GetPlayerData(CreateRoleProxy.instance.selectedPlayerID);
            AvatarData avatarData         = AvatarData.GetAvatarData(selectedPlayerData.avatarID);

            for (int i = 0, count = hairColorIconList.Count; i < count; i++)
            {
                int pathIndex = index * 4 + i;
                hairColorIconList[i].sprite = ResMgr.instance.Load <Sprite>(avatarData.hairColorIconPaths[pathIndex]);
            }
        }
Esempio n. 5
0
 public PlayerInfo(uint instanceID, uint playerID, uint hairCutIndex, uint hairColorIndex, uint faceIndex, int skinIndex, string playerName)
 {
     this.instanceID     = instanceID;
     this.playerData     = PlayerData.GetPlayerData(playerID);
     this.heroData       = HeroData.GetHeroDataByID(playerData.heroId);
     this.avatarData     = AvatarData.GetAvatarData(this.playerData.avatarID);
     this.hairCutIndex   = hairCutIndex;
     this.hairColorIndex = hairColorIndex;
     this.faceIndex      = faceIndex;
     this.skinIndex      = skinIndex;
     //            this.name = playerName;
     this.advanceLevel = (int)heroData.starMin;
 }
Esempio n. 6
0
        public void SetPlayerInfo(PlayerProtoData playerProtoData)
        {
            if (playerProtoData == null)
            {
                return;
            }
            this.instanceID = (uint)playerProtoData.id;
            if (playerProtoData.modelId != 0)
            {
                this.playerData = PlayerData.GetPlayerData((uint)playerProtoData.modelId);
                this.heroData   = HeroData.GetHeroDataByID(playerData.heroId);
            }

            this.avatarData = AvatarData.GetAvatarData(this.playerData.avatarID);
            if (playerProtoData.hairCutId != 0)
            {
                this.hairCutIndex = (uint)playerProtoData.hairCutId;
            }
            if (playerProtoData.hairColorId != 0)
            {
                this.hairColorIndex = (uint)playerProtoData.hairColorId;
            }
            if (playerProtoData.faceId != 0)
            {
                this.faceIndex = (uint)playerProtoData.faceId;
            }
            if (playerProtoData.skinId != 0)
            {
                this.skinIndex = playerProtoData.skinId;
            }
            this.exp   = (playerProtoData.exp > 0 || this.level != playerProtoData.lv) ? playerProtoData.exp : this.exp;
            this.level = playerProtoData.lv != 1 ? playerProtoData.lv : this.level;
            if (playerProtoData.star != 0)
            {
                this.advanceLevel = playerProtoData.star;
            }
            if (playerProtoData.aggrLv != -1)
            {
                this.strengthenLevel = playerProtoData.aggrLv;
            }
            if (playerProtoData.aggrExp != -1)
            {
                this.strengthenExp = playerProtoData.aggrExp;
            }
            if (playerProtoData.breakLayer != 0)
            {
                this.breakthroughLevel = playerProtoData.breakLayer;
            }
        }
Esempio n. 7
0
 public static void ChangeSkin(uint playerID, int skinIndex, CharacterEntity characterEntity)
 {
     if (characterEntity != null)
     {
         PlayerData playerData  = PlayerData.GetPlayerData(playerID);
         AvatarData avatarData  = AvatarData.GetAvatarData(playerData.avatarID);
         string     skinPath    = avatarData.GetSkinPathByIndex(skinIndex);
         string     wpPath      = avatarData.GetWPPathByIndex(skinIndex);
         Texture    skinTexture = ResMgr.instance.Load <Texture>(skinPath);
         Texture    wpTexture   = ResMgr.instance.Load <Texture>(wpPath);
         if (!skinTexture || !wpTexture)
         {
             return;
         }
         Renderer[] renderers      = characterEntity.gameObject.GetComponentsInChildren <Renderer>();
         Renderer   renderer       = null;
         int        rendererLength = renderers.Length;
         for (int i = 0; i < rendererLength; i++)
         {
             renderer = renderers[i];
             //#if UNITY_EDITOR
             Material[] materials = renderer.materials;
             //#else
             //                        Material[] materials = renderer.sharedMaterials;
             //#endif
             Material material        = null;
             int      materialsLength = materials.Length;
             for (int materialIndex = 0; materialIndex < materialsLength; materialIndex++)
             {
                 material = materials[materialIndex];
                 if (material.name.Contains(SKIN_NODE_NAME))
                 {
                     material.mainTexture = skinTexture;
                     string  skinInfoPath    = skinPath + "_info";
                     Texture skinInfoTexture = ResMgr.instance.Load <Texture>(skinInfoPath);
                     if (skinInfoTexture)
                     {
                         material.SetTexture("_InfoTex", skinInfoTexture);
                     }
                 }
                 if (material.name.Contains(WP_NODE_NAME))
                 {
                     material.mainTexture = wpTexture;
                 }
             }
         }
     }
 }
Esempio n. 8
0
 public static void ChangeFace(uint playerID, uint faceIndex, CharacterEntity characterEntity)
 {
     if (characterEntity != null)
     {
         PlayerData playerData  = PlayerData.GetPlayerData(playerID);
         AvatarData avatarData  = AvatarData.GetAvatarData(playerData.avatarID);
         string     facePath    = avatarData.GetFacePathByIndex(faceIndex);
         Texture    faceTexture = ResMgr.instance.Load <Texture>(facePath);
         if (!faceTexture)
         {
             return;
         }
         Renderer[] renderers      = characterEntity.gameObject.GetComponentsInChildren <Renderer>();
         Renderer   renderer       = null;
         int        rendererLength = renderers.Length;
         bool       alreadyFind    = false;
         for (int i = 0; i < rendererLength; i++)
         {
             renderer = renderers[i];
             //#if UNITY_EDITOR
             Material[] materials = renderer.materials;
             //#else
             //                        Material[] materials = renderer.sharedMaterials;
             //#endif
             Material material        = null;
             int      materialsLength = materials.Length;
             for (int materialIndex = 0; materialIndex < materialsLength; materialIndex++)
             {
                 material = materials[materialIndex];
                 if (material.name.Contains(FACE_NODE_NAME))
                 {
                     material.mainTexture = faceTexture;
                     alreadyFind          = true;
                     break;
                 }
             }
             if (alreadyFind)
             {
                 break;
             }
         }
     }
 }
Esempio n. 9
0
 public PlayerInfo(TeamPlayerProtoData data)
 {
     instanceID      = (uint)data.id;
     this.playerData = PlayerData.GetPlayerData((uint)data.playerNo);
     this.heroData   = HeroData.GetHeroDataByID(playerData.heroId);
     this.avatarData = AvatarData.GetAvatarData(this.playerData.avatarID);
     advanceLevel    = data.star;
     if (data.lv != 1)
     {
         level = data.lv;
     }
     if (data.aggrLv != -1)
     {
         strengthenLevel = data.aggrLv;
     }
     if (data.breakLayer != 0)
     {
         breakthroughLevel = data.breakLayer;
     }
 }
Esempio n. 10
0
        public static void ChangeHairColor(uint playerID, uint hairCutIndex, uint hairColorIndex, CharacterEntity characterEntity)
        {
            if (characterEntity == null)
            {
                return;
            }

            PlayerData playerData    = PlayerData.GetPlayerData(playerID);
            AvatarData avatarData    = AvatarData.GetAvatarData(playerData.avatarID);
            string     hairColorPath = avatarData.GetHairColorPathByIndex(hairColorIndex);
            Texture    hairTexture   = ResMgr.instance.Load <Texture>(hairColorPath);

            if (!hairTexture)
            {
                return;
            }
            Texture   hairInfoTexture = ResMgr.instance.Load <Texture>(hairColorPath + "_info");
            string    hairName        = HEAD_NODE_NAMES[hairCutIndex];
            Transform t = TransformUtil.Find(hairName, characterEntity.transform, true);

            if (t)
            {
                Renderer renderer = t.GetComponentInChildren <Renderer>();
                if (renderer)
                {
                    //#if UNITY_EDITOR
                    renderer.material.mainTexture = hairTexture;
                    if (hairInfoTexture)
                    {
                        renderer.material.SetTexture("_InfoTex", hairInfoTexture);
                    }
                    //#else
                    //                            renderer.material.mainTexture = hairTexture;
                    //                            renderer.material.SetTexture("_InfoTex", hairInfoTexture);
                    //#endif
                }
            }
        }