Example #1
0
    void CreatRoleMode(PvpRoleInfo Char, int VocationID, Transform point)
    {
        var pvpConfigData = PlayerDataManager.Instance.GetPVPItemData(VocationID);

        Char.pvpConfigData            = pvpConfigData;
        Char.playerGenerateConfigData = PlayerDataManager.Instance.GetUIItemData((byte)VocationID);
        if (Char.playerGenerateConfigData.PlayerId == 1)
        {
            if (Char.RoleMode_Char01 == null)
            {
                Char.RoleMode_Char01 = RoleGenerate.GenerateRole(Char.playerGenerateConfigData.PlayerName, Char.playerGenerateConfigData.DefaultAvatar, true);
                Char.RoleMode_Char01.transform.parent           = point;
                Char.RoleMode_Char01.transform.localPosition    = Vector3.zero;
                Char.RoleMode_Char01.transform.localEulerAngles = new Vector3(0, 180, 0);
                RoleGenerate.AttachAnimation(Char.RoleMode_Char01, pvpConfigData.PlayerName, pvpConfigData.DefaultAnim, pvpConfigData.Animations);
                Char.RoleControl = Char.RoleMode_Char01.AddComponent <PvpRoleControl>();
            }
            else
            {
                Char.RoleMode_Char01.SetActive(true);
                Char.RoleControl = Char.RoleMode_Char01.GetComponent <PvpRoleControl>();
            }
            Char.currentRoleMode = Char.RoleMode_Char01;
        }
        else
        {
            if (Char.RoleMode_Char04 == null)
            {
                Char.RoleMode_Char04 = RoleGenerate.GenerateRole(Char.playerGenerateConfigData.PlayerName, Char.playerGenerateConfigData.DefaultAvatar, true);
                Char.RoleMode_Char04.transform.parent           = point;
                Char.RoleMode_Char04.transform.localPosition    = Vector3.zero;
                Char.RoleMode_Char04.transform.localEulerAngles = new Vector3(0, 180, 0);
                RoleGenerate.AttachAnimation(Char.RoleMode_Char04, pvpConfigData.PlayerName, pvpConfigData.DefaultAnim, pvpConfigData.Animations);
                Char.RoleControl = Char.RoleMode_Char04.AddComponent <PvpRoleControl>();
            }
            else
            {
                Char.RoleMode_Char04.SetActive(true);
                Char.RoleControl = Char.RoleMode_Char04.GetComponent <PvpRoleControl>();
            }
            Char.currentRoleMode = Char.RoleMode_Char04;
        }
    }
Example #2
0
    /// <summary>
    /// Plaies the animation.
    /// </summary>
    /// <param name="roleInfo">Role info.</param>
    /// <param name="isopening">只有在show方法中isopening=true <c>true</c> isopening.</param>
    void PlayAnimation(PvpRoleInfo roleInfo, bool isopening)
    {
        if (PvpDataManager.Instance.CurrentViewState == PVPViewState.InPage)
        {
            var Config = roleInfo.pvpConfigData;
            switch (PvpDataManager.Instance.CurrentMatchState)
            {
            case PVPMatchState.defult:

                roleInfo.RoleControl.PlayAnimation(Config.In_WeaponPos, Config.In_Ani, Config.In_Eff, Config.NotAdapIdle_WeaponPos, Config.NotAdapIdle_Ani, Config.NotAdapIdle_Eff);
                break;

            case PVPMatchState.Team:
                if (isopening)
                {
                    roleInfo.RoleControl.PlayAnimation(null, null, null, Config.NotAdapIdle_WeaponPos, Config.NotAdapIdle_Ani, Config.NotAdapIdle_Eff);
                }
                else
                {
                    roleInfo.RoleControl.PlayAnimation(Config.EnterGroup_WeaponPos, Config.EnterGroup_Ani, Config.EnterGroup_Eff, Config.NotAdapIdle_WeaponPos, Config.NotAdapIdle_Ani, Config.NotAdapIdle_Eff);
                }
                break;

            case PVPMatchState.Match:
                if (isopening)
                {
                    roleInfo.RoleControl.PlayAnimation(null, null, null, Config.AdapIdle_WeaponPos, Config.AdapIdle_Ani, Config.AdapIdle_Eff);
                }
                else
                {
                    roleInfo.RoleControl.PlayAnimation(Config.AdapStar_WeaponPos, Config.AdapStar_Ani, Config.AdapStar_Eff, Config.AdapIdle_WeaponPos, Config.AdapIdle_Ani, Config.AdapIdle_Eff);
                }
                break;
            }
        }
    }