Example #1
0
    public void Init(CostumeController costume)
    {
        if (null == costume)
        {
            Log.Error("not found costume");
            return;
        }

        _costume = costume;
        init();
    }
Example #2
0
    private MainCharacter loadMainCharacter(Nurture.Calendar calendar)
    {
        if (null == calendar)
        {
            Log.Error("not found calendar");
            return(null);
        }

        string name = CustomPlayerPrefs.GetString(PlayerPrefsKey.NAME, null);

        if (null == name)
        {
            Log.Error(string.Format("not found Player's '{0}'", PlayerPrefsKey.NAME));
            return(null);
        }

        int zodiac = CustomPlayerPrefs.GetInt(PlayerPrefsKey.ZODIAC, -1);

        if (false == Enum.IsDefined(typeof(EZodiac), zodiac))
        {
            Log.Error(string.Format("not found '{0}'", PlayerPrefsKey.ZODIAC));
            return(null);
        }

        int age = Def.INIT_AGE + (calendar.Year - Def.INIT_YEAR);

        int condition = CustomPlayerPrefs.GetInt(PlayerPrefsKey.CONDITION, -1);

        if (false == Enum.IsDefined(typeof(Nurture.ECondition), condition))
        {
            Log.Error(string.Format("not found '{0}'", PlayerPrefsKey.CONDITION));
            return(null);
        }

        int[] actionCount = new int[Manager.Instance.DT.Action.Count];
        int   numAction   = actionCount.Length;

        for (int id = 0; id < numAction; ++id)
        {
            string key   = PlayerPrefsKey.GetKey(PlayerPrefsKey.ACTION_COUNT, id);
            int    value = CustomPlayerPrefs.GetInt(key, -1);
            if (value < 0)
            {
                Log.Error(string.Format("not found '{0}'", key));
                return(null);
            }

            actionCount[id] = value;
        }

        int constitution = CustomPlayerPrefs.GetInt(PlayerPrefsKey.CONSTITUTION, -1);

        if (false == Enum.IsDefined(typeof(EConstitution), constitution))
        {
            Log.Error(string.Format("not found '{0}'", PlayerPrefsKey.CONSTITUTION));
            return(null);
        }

        int money = CustomPlayerPrefs.GetInt(PlayerPrefsKey.MONEY, -1);

        if (money < Def.MIN_MONEY)
        {
            Log.Error(string.Format("not found '{0}'", PlayerPrefsKey.MONEY));
            return(null);
        }

        int wearingCostumeId = CustomPlayerPrefs.GetInt(PlayerPrefsKey.WEARING_COSTUME, -1);

        if (false == ExtMainCharacterCostume.IsValid(wearingCostumeId))
        {
            Log.Error(string.Format("not found '{0}'", PlayerPrefsKey.WEARING_COSTUME));
            return(null);
        }

        Wardrobe wardrobe     = new Wardrobe();
        int      costumeCount = Manager.Instance.DT.MainCharacterCostume.Count;

        for (int id = 0; id < costumeCount; ++id)
        {
            string key   = PlayerPrefsKey.GetKey(PlayerPrefsKey.ISBUY_COSTUME, id);
            int    value = CustomPlayerPrefs.GetInt(key, -1);
            if (-1 == value)
            {
                Log.Error(string.Format("not found '{0}'", key));
                return(null);
            }

            bool isBuy = PlayerPrefsKey.GetIntToBool(value);
            CostumeController costume = new CostumeController(id, isBuy);
            wardrobe.CostumeList.Add(costume);
        }

        EZodiac z = (EZodiac)zodiac;

        Nurture.ECondition c  = (Nurture.ECondition)condition;
        EConstitution      cs = (EConstitution)constitution;

        MainCharacter mc = new MainCharacter(name, z, age, c, actionCount, cs, money, wardrobe, wearingCostumeId);

        return(mc);
    }