public static BehaviorProperty <T> Blackboard(string variableName) { var new_prop = new BehaviorProperty <T>(); new_prop.type = BehaviorPropertyType.Blackboard; new_prop.variableVal = variableName; return(new_prop); }
public static BehaviorProperty <T> Static(T val) { var new_prop = new BehaviorProperty <T>(); new_prop.type = BehaviorPropertyType.Static; new_prop.staticVal = val; return(new_prop); }
public static BehaviorProperty <T> Func(Func <Blackboard, T> func) { var new_prop = new BehaviorProperty <T>(); new_prop.type = BehaviorPropertyType.Func; new_prop.funcVal = func; return(new_prop); }
public SetAndCheck() { Predicate = BehaviorProperty <bool> .Func(bb => { object value; if (Func != null) { value = Func(); } else { value = FuncBlackboard(bb); } if (value == null) { return(false); } bb.Set(Destination, value); return(true); }); }
public IsSet() { Predicate = BehaviorProperty <bool> .Func(bb => bb.Contains(Source) && bb.Get <object>(Source) != null); }
public void SetFunc <T>(Func <Blackboard, T> value) { Set(BehaviorProperty <T> .Func(value)); }
public void SetStatic <T>(T value) { Set(BehaviorProperty <T> .Static(value)); }