Beispiel #1
0
    public void ApplySkin(GameType.SkinType newSkin, bool bForceApply = false)
    {
        if ((!bForceApply && (newSkin == MyInfo.instance.currentSkin)) || newSkin >= GameType.SkinType.Max)
        {
            return;
        }

        string clipPath = "Prefabs/Character/Animation/" + newSkin.ToString() + "/";
        bool   bChanged = false;

        foreach (var animData in animation2D.m_animStateInfo)
        {
            AnimationClip clip = Resources.Load(clipPath + animData.state.ToString()) as AnimationClip;

            if (clip != null)
            {
                bChanged = true;
                animData.ChangeClip(clip);
            }
        }

        if (bChanged)
        {
            animation2D.Initialize();
            MyInfo.instance.ChangeSkin(newSkin);
        }
    }
Beispiel #2
0
 /// <summary>
 /// 바꿀 스킨 타입 (밖에서 확인 절차 다끝나고 저장만 한다)
 /// </summary>
 /// <param name="changed"></param>
 public void ChangeSkin(GameType.SkinType changed)
 {
     if (currentSkin != changed)
     {
         currentSkin = changed;
         PlayerPrefs.SetInt("CurrentSkin", (int)currentSkin);
     }
 }