public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetBool(bool_fieldKey, out _bool_field);
                dict.TryGetInt(int_fieldKey, out _int_field);
                dict.TryGetFloat(float_fieldKey, out _float_field);
                dict.TryGetString(string_fieldKey, out _string_field);
                dict.TryGetVector2(vector2_fieldKey, out _vector2_field);
                dict.TryGetVector3(vector3_fieldKey, out _vector3_field);
                dict.TryGetVector4(vector4_fieldKey, out _vector4_field);
                dict.TryGetColor(color_fieldKey, out _color_field);

                string customDataKey;
                dict.TryGetString(custom_fieldKey, out customDataKey);
                _custom_field = new GDEReadSceneUnityTypesData(customDataKey);

                dict.TryGetBoolList(bool_list_fieldKey, out bool_list_field);
                dict.TryGetIntList(int_list_fieldKey, out int_list_field);
                dict.TryGetFloatList(float_list_fieldKey, out float_list_field);
                dict.TryGetStringList(string_list_fieldKey, out string_list_field);
                dict.TryGetVector2List(vector2_list_fieldKey, out vector2_list_field);
                dict.TryGetVector3List(vector3_list_fieldKey, out vector3_list_field);
                dict.TryGetVector4List(vector4_list_fieldKey, out vector4_list_field);
                dict.TryGetColorList(color_list_fieldKey, out color_list_field);
                LoadFromSavedData(dataKey);
            }
        }
示例#2
0
    //
    // Constructor that takes the data returned by the
    // GDEDataManager.Get() method and will now pull out the
    // individual fields using the TryGet() methods.
    //
    public Character(Dictionary <string, object> data)
    {
        if (data != null)
        {
            // Pull out the individual fields and load our Character stats.
            data.TryGetString("name", out Name);
            data.TryGetInt("hp", out baseHP);
            data.TryGetInt("mana", out baseMana);
            data.TryGetInt("damage", out baseDamage);

            //
            // Get the Buff list
            //
            // First get a string list of the buffs using TryGetStringList
            List <string> buffKeyList;
            if (data.TryGetStringList("buffs", out buffKeyList))
            {
                //
                // Spin through each of the Buff names and pull out
                // the data with the GDEDataManager.Get() method.
                //
                Buffs = new List <Buff>();
                foreach (string buffKey in buffKeyList)
                {
                    //
                    // Pull out Buff data with Get() method and pass
                    // it down to the Buff classes constructor where
                    // it will pull out the individual fields and set
                    // it's properties.
                    //
                    Buff curBuff;
                    Dictionary <string, object> curBuffData;
                    GDEDataManager.Instance.Get(buffKey, out curBuffData);

                    //
                    // For each Buff in the string list create a new
                    // object passing it the data from the Get()
                    // method and add it to the Buff's list.
                    //
                    curBuff = new Buff(curBuffData);
                    Buffs.Add(curBuff);

                    //
                    // Now that the Buff's properties have been set
                    // from the data in the Buff's constructor add the
                    // bonuses to the HP, Mana, and Damage.
                    //
                    bonusHP     += curBuff.HPDelta;
                    bonusMana   += curBuff.ManaDelta;
                    bonusDamage += curBuff.DamageDelta;
                }
            }
        }
    }
示例#3
0
    //
    // Constructor that takes the data returned by the
    // GDEDataManager.Get() method and will now pull out the
    // individual fields using the TryGet() methods.
    //
    public Character(Dictionary<string, object> data)
    {
        if (data != null)
        {
            // Pull out the individual fields and load our Character stats.
            data.TryGetString("name", out Name);
            data.TryGetInt("hp", out baseHP);
            data.TryGetInt("mana", out baseMana);
            data.TryGetInt("damage", out baseDamage);

            //
            // Get the Buff list
            //
            // First get a string list of the buffs using TryGetStringList
            List<string> buffKeyList;
            if (data.TryGetStringList("buffs", out buffKeyList))
            {
                //
                // Spin through each of the Buff names and pull out
                // the data with the GDEDataManager.Get() method.
                //
                Buffs = new List<Buff>();
                foreach(string buffKey in buffKeyList)
                {
                    //
                    // Pull out Buff data with Get() method and pass
                    // it down to the Buff classes constructor where
                    // it will pull out the individual fields and set
                    // it's properties.
                    //
                    Buff curBuff;
                    Dictionary<string, object> curBuffData;
                    GDEDataManager.Instance.Get(buffKey, out curBuffData);

                    //
                    // For each Buff in the string list create a new
                    // object passing it the data from the Get()
                    // method and add it to the Buff's list.
                    //
                    curBuff = new Buff(curBuffData);
                    Buffs.Add(curBuff);

                    //
                    // Now that the Buff's properties have been set
                    // from the data in the Buff's constructor add the
                    // bonuses to the HP, Mana, and Damage.
                    //
                    bonusHP += curBuff.HPDelta;
                    bonusMana += curBuff.ManaDelta;
                    bonusDamage += curBuff.DamageDelta;
                }
            }
        }
    }
        public override void LoadFromDict(string dataKey, Dictionary<string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
                LoadFromSavedData(dataKey);
            else
            {
                dict.TryGetStringList(cust_string_listKey, out cust_string_list);
                LoadFromSavedData(dataKey);
            }
        }
        public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetStringList(cust_string_listKey, out cust_string_list);
                LoadFromSavedData(dataKey);
            }
        }
示例#6
0
        public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetInt(TestIntKey, out _TestInt);
                dict.TryGetString(TestStringKey, out _TestString);

                string customDataKey;
                dict.TryGetString(TestSchemaKey, out customDataKey);
                _TestSchema = new GDETest2SchemaData(customDataKey);

                dict.TryGetStringList(TestListKey, out TestList);
                LoadFromSavedData(dataKey);
            }
        }
示例#7
0
        public override void LoadFromDict(string dataKey, Dictionary<string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
                LoadFromSavedData(dataKey);
            else
            {
                dict.TryGetBoolList(bool_list_fieldKey, out bool_list_field);
                dict.TryGetIntList(int_list_fieldKey, out int_list_field);
                dict.TryGetFloatList(float_list_fieldKey, out float_list_field);
                dict.TryGetStringList(string_list_fieldKey, out string_list_field);
                dict.TryGetVector2List(vector2_list_fieldKey, out vector2_list_field);
                dict.TryGetVector3List(vector3_list_fieldKey, out vector3_list_field);
                dict.TryGetVector4List(vector4_list_fieldKey, out vector4_list_field);
                dict.TryGetColorList(color_list_fieldKey, out color_list_field);

                dict.TryGetCustomList(custom_list_fieldKey, out custom_list_field);
                LoadFromSavedData(dataKey);
            }
        }
        public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetBoolList(bool_list_fieldKey, out bool_list_field);
                dict.TryGetIntList(int_list_fieldKey, out int_list_field);
                dict.TryGetFloatList(float_list_fieldKey, out float_list_field);
                dict.TryGetStringList(string_list_fieldKey, out string_list_field);
                dict.TryGetVector2List(vector2_list_fieldKey, out vector2_list_field);
                dict.TryGetVector3List(vector3_list_fieldKey, out vector3_list_field);
                dict.TryGetVector4List(vector4_list_fieldKey, out vector4_list_field);
                dict.TryGetColorList(color_list_fieldKey, out color_list_field);

                dict.TryGetCustomList(custom_list_fieldKey, out custom_list_field);
                LoadFromSavedData(dataKey);
            }
        }
        public static bool TryGetCustomList <TKey, TValue, T>(this Dictionary <TKey, TValue> variable, TKey key, out List <T> value) where T : IGDEData
        {
            bool result = true;

            value = new List <T>();

            try
            {
                List <string> customDataKeys;
                if (variable.TryGetStringList(key, out customDataKeys))
                {
                    for (int x = 0; x < customDataKeys.Count; x++)
                    {
                        value.Add((T)Activator.CreateInstance(typeof(T), new object[] { customDataKeys[x] }));
                    }
                }
            }
            catch
            {
                result = false;
            }

            return(result);
        }
示例#10
0
        public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetBool(NotNormalPoolKey, out _NotNormalPool);
                dict.TryGetBool(UnableKey, out _Unable);
                dict.TryGetInt(AltarTimesKey, out _AltarTimes);
                dict.TryGetInt(PoolCapacityKey, out _PoolCapacity);
                dict.TryGetInt(GetSNumKey, out _GetSNum);
                dict.TryGetFloat(lasttimeKey, out _lasttime);
                dict.TryGetString(NameKey, out _Name);
                dict.TryGetString(IDKey, out _ID);
                dict.TryGetString(starttimeKey, out _starttime);

                dict.TryGetStringList(AllHeroesKey, out AllHeroes);
                LoadFromSavedData(dataKey);
            }
        }
示例#11
0
        public override void LoadFromDict(string dataKey, Dictionary <string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
            {
                LoadFromSavedData(dataKey);
            }
            else
            {
                dict.TryGetBool(keepWorkingKey, out _keepWorking);
                dict.TryGetBool(isEmptyKey, out _isEmpty);
                dict.TryGetInt(timeTypeKey, out _timeType);
                dict.TryGetInt(oldDataKey, out _oldData);
                dict.TryGetInt(newDataKey, out _newData);
                dict.TryGetInt(itemHashcodeKey, out _itemHashcode);
                dict.TryGetString(itemIdKey, out _itemId);
                dict.TryGetString(startTimeKey, out _startTime);
                dict.TryGetString(taskIdKey, out _taskId);

                dict.TryGetStringList(taskRewardsKey, out taskRewards);
                LoadFromSavedData(dataKey);
            }
        }
示例#12
0
        public override void LoadFromDict(string dataKey, Dictionary<string, object> dict)
        {
            _key = dataKey;

            if (dict == null)
                LoadFromSavedData(dataKey);
            else
            {
                dict.TryGetBool(bool_fieldKey, out _bool_field);
                dict.TryGetInt(int_fieldKey, out _int_field);
                dict.TryGetFloat(float_fieldKey, out _float_field);
                dict.TryGetString(string_fieldKey, out _string_field);
                dict.TryGetVector2(vector2_fieldKey, out _vector2_field);
                dict.TryGetVector3(vector3_fieldKey, out _vector3_field);
                dict.TryGetVector4(vector4_fieldKey, out _vector4_field);
                dict.TryGetColor(color_fieldKey, out _color_field);

                string customDataKey;
                dict.TryGetString(custom_fieldKey, out customDataKey);
                GDEDataManager.DataDictionary.TryGetCustom(customDataKey, out _custom_field);

                dict.TryGetBoolList(bool_list_fieldKey, out bool_list_field);
                dict.TryGetIntList(int_list_fieldKey, out int_list_field);
                dict.TryGetFloatList(float_list_fieldKey, out float_list_field);
                dict.TryGetStringList(string_list_fieldKey, out string_list_field);
                dict.TryGetVector2List(vector2_list_fieldKey, out vector2_list_field);
                dict.TryGetVector3List(vector3_list_fieldKey, out vector3_list_field);
                dict.TryGetVector4List(vector4_list_fieldKey, out vector4_list_field);
                dict.TryGetColorList(color_list_fieldKey, out color_list_field);
                LoadFromSavedData(dataKey);
            }
        }