public void SetProperties(RealmPropertyJsonModel model) { model.ValidateValuePresent(); this.Value = bool.Parse(model.value); this.Locked = model.locked ?? false; this.Probability = model.probability; }
public void SetProperties(RealmPropertyJsonModel model) { if (model.value != null) { this.Value = int.Parse(model.value); } if (model.low != null) { this.RandomLowRange = int.Parse(model.low); this.RandomHighRange = int.Parse(model.high); if (RandomLowRange > RandomHighRange) { throw new Exception("high must be > low"); } if (!model.reroll.HasValue) { model.reroll = RealmPropertyRerollType.landblock; } } this.Locked = model.locked ?? false; this.Probability = model.probability; this.RandomType = (byte)model.reroll; this.CompositionType = (byte)model.compose; }
private static void SetProperty_Complex(Realm realm, RealmPropertyFloat property, RealmPropertyJsonModel pobj) { var result = realm.RealmPropertiesFloat.FirstOrDefault(x => x.Type == (ushort)property); if (result != null) { result.SetProperties(pobj); } else { var entity = new RealmPropertiesFloat { RealmId = realm.Id, Type = (ushort)property }; entity.SetProperties(pobj); realm.RealmPropertiesFloat.Add(entity); } }
public static void SetPropertyByName_Complex(this Realm realm, string propertyName, RealmPropertyJsonModel pobj) { pobj.ValidateAll(); if (Enum.TryParse <RealmPropertyBool>(propertyName, out var boolprop)) { SetProperty_Complex(realm, boolprop, pobj); } else if (Enum.TryParse <RealmPropertyInt>(propertyName, out var intprop)) { SetProperty_Complex(realm, intprop, pobj); } else if (Enum.TryParse <RealmPropertyString>(propertyName, out var stringprop)) { SetProperty_Complex(realm, stringprop, pobj); } else if (Enum.TryParse <RealmPropertyFloat>(propertyName, out var floatprop)) { SetProperty_Complex(realm, floatprop, pobj); } else if (Enum.TryParse <RealmPropertyInt64>(propertyName, out var longprop)) { SetProperty_Complex(realm, longprop, pobj); } else { throw new Exception("Realm property not found: " + propertyName); } }