/// <summary> /// Property oriented instruction /// Set Property to value /// </summary> /// <param name="property">Property name</param> /// <param name="value">new value</param> /// <returns>Instruction</returns> public static Instruction PropSet(PropertyTag property, int value) { return((sim, cycle) => { if (sim.Behavior.Properties.IsPropertyIn(property)) { sim.Behavior.Properties.ChangeValue(property, value); } else { sim.Behavior.Properties.AddProperty(property, value); } }); }
public bool IsPropertyIn(PropertyTag name) { return(Props.ContainsKey(name)); }
public void IncrementValue(PropertyTag name, int increment) { ChangeValue(name, GetPropertyValue(name) + increment); }