public void AddProperty(string name, NetLogoObject value) { if (!properties.ContainsKey(name)) { properties.Add(name, value); } }
public void SetProperty(string name, NetLogoObject value) { if (protectedValue.Contains(name)) { throw new RTException("property " + name + " value is protected"); } if (protectedType.ContainsKey(name) && protectedType[name] != value.GetType()) { throw new RTException("property " + name + " type protected "); } try { properties[name] = value; if (Events.ContainsKey(name)) { Events[name].Invoke(value); } valueChanged = true; } catch (Exception e) { throw new RTException(name + " PROPERTY NOT FOUND"); } }