public Vector2 GetFlowFieldPath(VariableFlag.Strategy pathTag) { if (pathTag == VariableFlag.Strategy.MoveStraight) { return(VariableFlag.Vector.Down); } Vector2 pathDir = VariableFlag.Vector.Zero; if (FlowFieldDirectionSet == null || !FlowFieldDirectionSet.TryGetValue(pathTag, out pathDir)) { return(pathDir); } return(pathDir); }
public void AddFlowField(VariableFlag.Strategy pathTag, Vector2 direction) { if (FlowFieldDirectionSet == null) { FlowFieldDirectionSet = new Dictionary <VariableFlag.Strategy, Vector2>(); } if (!FlowFieldDirectionSet.ContainsKey(pathTag)) { FlowFieldDirectionSet.Add(pathTag, direction); } else { FlowFieldDirectionSet[pathTag] = direction; } }