public bool GetProperty(RealmPropertyBool property) { if (PropertiesBool.TryGetValue(property, out var value)) { return(value.Value); } return(RealmConverter.PropertyDefinitionsBool[property].DefaultValue); }
protected void CopyDicts(RulesetTemplate copyFrom) { if (copyFrom.Realm.PropertyCountRandomized.HasValue) { var count = copyFrom.Realm.PropertyCountRandomized.Value; var props = TakeRandomProperties(count, copyFrom); foreach (var prop in props) { if (prop is AppliedRealmProperty <bool> a) { PropertiesBool.Add((RealmPropertyBool)a.PropertyKey, new AppliedRealmProperty <bool>(a)); } else if (prop is AppliedRealmProperty <int> b) { PropertiesInt.Add((RealmPropertyInt)b.PropertyKey, new AppliedRealmProperty <int>(b)); } else if (prop is AppliedRealmProperty <double> c) { PropertiesFloat.Add((RealmPropertyFloat)c.PropertyKey, new AppliedRealmProperty <double>(c)); } else if (prop is AppliedRealmProperty <long> d) { PropertiesInt64.Add((RealmPropertyInt64)d.PropertyKey, new AppliedRealmProperty <long>(d)); } else if (prop is AppliedRealmProperty <string> e) { PropertiesString.Add((RealmPropertyString)e.PropertyKey, new AppliedRealmProperty <string>(e)); } } } else { foreach (var item in copyFrom.PropertiesBool) { PropertiesBool.Add(item.Key, new AppliedRealmProperty <bool>(item.Value)); } foreach (var item in copyFrom.PropertiesFloat) { PropertiesFloat.Add(item.Key, new AppliedRealmProperty <double>(item.Value)); } foreach (var item in copyFrom.PropertiesInt) { PropertiesInt.Add(item.Key, new AppliedRealmProperty <int>(item.Value)); } foreach (var item in copyFrom.PropertiesInt64) { PropertiesInt64.Add(item.Key, new AppliedRealmProperty <long>(item.Value)); } foreach (var item in copyFrom.PropertiesString) { PropertiesString.Add(item.Key, new AppliedRealmProperty <string>(item.Value)); } } }