public AIDomainBuilder HasStateGreaterThan(AIWorldState state, byte value) { var condition = new HasWorldStateGreaterThanCondition(state, value); Pointer.AddCondition(condition); return(this); }
public AIDomainBuilder HasState(AIWorldState state) { var condition = new HasWorldStateCondition(state); Pointer.AddCondition(condition); return(this); }
public SetWorldStateEffect(AIWorldState state, EffectType type) { Name = $"SetState({state})"; Type = type; State = state; Value = 1; }
public SetWorldStateEffect(AIWorldState state, bool value, EffectType type) { Name = $"SetState({state})"; Type = type; State = state; Value = (byte)(value ? 1 : 0); }
public IncrementWorldStateEffect(AIWorldState state, byte value, EffectType type) { Name = $"IncrementState({state})"; Type = type; State = state; Value = value; }
public AIDomainBuilder HasState(AIWorldState state, byte value) { var condition = new HasWorldStateCondition(state, value); condition.Depth = Pointer.Depth + 1; Pointer.AddCondition(condition); return(this); }
public AIDomainBuilder IncrementState(AIWorldState state, byte value, EffectType type) { if (Pointer is IPrimitiveTask task) { var effect = new IncrementWorldStateEffect(state, value, type); task.AddEffect(effect); } return(this); }
public AIDomainBuilder SetState(AIWorldState state, byte value, EffectType type) { if (Pointer is IPrimitiveTask task) { var effect = new SetWorldStateEffect(state, value, type); effect.Depth = task.Depth + 1; task.AddEffect(effect); } return(this); }
public static KeyValuePair <byte, byte> CreateGoal(AIWorldState state, byte value) { return(new KeyValuePair <byte, byte>((byte)state, value)); }
public HasWorldStateCondition(AIWorldState state) { Name = $"HasState({state})"; State = state; Value = 1; }
public HasWorldStateCondition(AIWorldState state, byte value) { Name = $"HasState({state})"; State = state; Value = value; }
public void SetState(AIWorldState state, byte value, EffectType type) { SetState((int)state, value, true, type); }
public bool HasState(AIWorldState state, byte value) { return(HasState((int)state, value)); }
public void SetState(AIWorldState state, bool value, EffectType type) { SetState((int)state, (byte)(value ? 1 : 0), true, type); }
public byte GetState(AIWorldState state) { return(GetState((int)state)); }
public bool HasState(AIWorldState state, bool value) { return(HasState((int)state, (byte)(value ? 1 : 0))); }
public void SetState(AIWorldState state, EnergyLevel value, EffectType type) { SetState(state, (byte)value, type); }
public bool HasState(AIWorldState state) { return(HasState((int)state, 1)); }