Rebornbuddy
|
Manager responsible for handling avoidance pathing and navigation around obstacles. More...
Static Public Member Functions | |
static void | AddAvoid (AvoidInfo avoid) |
Adds a single avoidance area to the collection of areas to avoid during navigation. | |
static void | AddAvoids (IEnumerable< AvoidInfo > avoids) |
Adds multiple avoidance areas to the collection of areas to avoid during navigation. | |
static void | RemoveAvoid (AvoidInfo avoidInfo) |
Removes a specific avoidance area from the collection of areas to avoid during navigation. | |
static void | RemoveAllAvoids (Predicate< AvoidInfo > match) |
Removes all avoidance areas from the collection that match the specified condition. | |
static void | Pulse () |
Pulses this instance. | |
static void | ResetNavigation () |
Resets the internal navigation system. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, float radius, params uint[] unitIds) |
Adds the avoid object. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< T, float > radiusProducer, params uint[] unitIds) |
Adds the avoid object. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, float radius, Predicate< T > objectSelector, Func< T, Vector3 > locationProducer=null, bool ignoreIfBlocking=false) |
Adds the avoid object. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< T, float > radiusProducer, Predicate< T > objectSelector, Func< T, Vector3 > locationProducer=null, bool ignoreIfBlocking=false) |
Runs away from a unit or object if within range. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, float radius, params uint[] unitIds) |
Runs away from a unit or object if within range. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, Func< T, float > radiusProducer, params uint[] unitIds) |
Runs away from a unit or object if within range. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, float radius, Predicate< T > objectSelector, Func< T, Vector3 > locationProducer=null, bool ignoreIfBlocking=false) |
Runs away from a unit or object if within range. | |
static AvoidInfo | AddAvoidObject< T > (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, Func< T, float > radiusProducer, Predicate< T > objectSelector, Func< T, Vector3 > locationProducer=null, bool ignoreIfBlocking=false) |
Runs away from a unit or object if within range. | |
static AvoidInfo | AddAvoidLocation (Func< bool > canRun, float radius, Func< Vector3 > locationProducer, bool ignoreIfBlocking=false) |
Run away from location. | |
static AvoidInfo | AddAvoidLocation< T > (Func< bool > canRun, Func< T, float > radiusProducer, Func< T, Vector3 > locationProducer, Func< IEnumerable< T > > collectionProducer, Func< T, bool > objectValidator=null, bool ignoreIfBlocking=false) |
Run away from location. | |
static AvoidInfo | AddAvoidLocation (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, float radius, Func< Vector3 > locationProducer, bool ignoreIfBlocking=false) |
Run away from location. | |
static AvoidInfo | AddAvoidLocation< T > (Func< bool > canRun, Func< Vector3 > leashPointProducer, float leashRadius, Func< T, float > radiusProducer, Func< T, Vector3 > locationProducer, Func< IEnumerable< T > > collectionProducer, Func< T, bool > objectValidator=null, bool ignoreIfBlocking=false) |
Run away from location. | |
static AvoidInfo | AddAvoidPolygon< T > (Func< bool > condition, Func< Vector3 > leashPointProducer, float leashRadius, Func< T, float > rotationProducer, Func< T, float > scaleProducer, Func< T, float > heightProducer, Func< T, Vector2[]> pointsProducer, Func< T, Vector3 > locationProducer, Func< IEnumerable< T > > collectionProducer, Func< T, bool > objectValidator=null, bool ignoreIfBlocking=false, AvoidancePriority priority=AvoidancePriority.Medium) |
Initializes a new instance of the AvoidPolygonInfo<T> class. | |
static AvoidInfo | AddAvoidUnitCone< T > (Func< bool > canRun, Predicate< T > objectSelector, Func< Vector3 > leashPointProducer, float leashRadius, float rotationDegrees, float radius, float arcDegrees, Func< T, Vector3 > locationProducer=null, bool ignoreIfBlocking=false, AvoidancePriority priority=AvoidancePriority.Medium) |
Avoids cone-shaped area effects on a WoWUnit |
Properties | |
static List< AvoidInfo > | AvoidInfos = new List<AvoidInfo>() [get] |
Collection of avoidance information used for navigation around obstacles. | |
static List< Avoid > | Avoids = new List<Avoid>() [get] |
List of active avoidance objects currently being used for navigation. | |
static bool | IsRunningOutOfAvoid [get] |
Gets a value indicating whether toon is running out of an area being avoided. |
Events | |
static EventHandler< EventArgs > | OnRunningOut |
Triggered when running out of an avoided area. |
Manager responsible for handling avoidance pathing and navigation around obstacles.
|
static |
Adds a single avoidance area to the collection of areas to avoid during navigation.
avoid | The avoidance information to add. |
|
static |
Run away from location.
canRun | The condition. |
radius | The radius. |
locationProducer | The location selector. |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it (default: false) |
|
static |
Run away from location.
canRun | The condition. |
leashPointProducer | The leash point selector. |
leashRadius | The leash radius. |
radius | The max distance to run. |
locationProducer | The location selector. |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it (default: false) |
|
static |
Run away from location.
canRun | The condition. |
radiusProducer | The max distance to run. |
locationProducer | The location selector. |
collectionProducer | Optional collection of objects that are passed as args to locationProducer |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it (default: false) |
|
static |
Run away from location.
canRun | The condition. |
leashPointProducer | The leash point selector. |
leashRadius | The leash radius. |
radiusProducer | The max distance to run. |
locationProducer | The location selector. |
collectionProducer | Optional collection of objects that are passed as args to locationProducer |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it (default: false) |
|
static |
Adds the avoid object.
canRun | The can run. |
radius | The radius. |
unitIds | The unit ids. |
T | : | GameObject |
|
static |
Adds the avoid object.
canRun | The can run. |
radius | The radius. |
objectSelector | The object selector. |
locationProducer | The location selector. |
ignoreIfBlocking | if set to true [ignore if blocking]. |
T | : | GameObject |
|
static |
Adds the avoid object.
canRun | The can run. |
radiusProducer | The radius selector. |
unitIds | The unit ids. |
T | : | GameObject |
|
static |
Runs away from a unit or object if within range.
canRun | The 'can run' condition. |
radiusProducer | The distance to avoid |
objectSelector | The object selector. |
locationProducer | The location selector |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it |
T | : | GameObject |
|
static |
Runs away from a unit or object if within range.
canRun | The 'can run' condition. |
leashPointProducer | The leash center point selector. Unit location if null |
leashRadius | The max distance to run from leash. |
radius | The radius. |
unitIds | The unit ids. |
T | : | GameObject |
|
static |
Runs away from a unit or object if within range.
canRun | The 'can run' condition. |
leashPointProducer | The leash center point selector. Unit location if null |
radius | The distance to avoid |
leashRadius | The max distance to run from leash. |
objectSelector | The object selector. |
locationProducer | The location selector |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it |
T | : | GameObject |
|
static |
Runs away from a unit or object if within range.
canRun | The 'can run' condition. |
leashPointProducer | The leash center point selector. Unit location if null |
leashRadius | The max distance to run from leash. |
radiusProducer | The distance to avoid |
unitIds | The unit ids. |
T | : | GameObject |
|
static |
Runs away from a unit or object if within range.
canRun | The 'can run' condition. |
leashPointProducer | The leash center point selector. Unit location if null |
radiusProducer | The distance to avoid |
leashRadius | The max distance to run from leash. |
objectSelector | The object selector. |
locationProducer | The location selector |
ignoreIfBlocking | If set to true the object will be ignored if no path can be generated around it |
T | : | GameObject |
|
static |
Initializes a new instance of the AvoidPolygonInfo<T> class.
condition | The condition. |
locationProducer | Produces the location. Polygon is rotated and scaled around produced location on the xy plane. |
rotationProducer | Produces the polygon's rotation. |
scaleProducer | Produces the polygon's scale |
heightProducer | Produces the height of the polygon. Half of the produced height extends above location produced by locationProducer and the other half below |
pointsProducer | Produces the points that form the polygon |
collectionProducer | Produces a collection of objects that should be avoided. |
leashPointProducer | The leash point producer. Can be null. Used in conjunction with leashRadius |
leashRadius | The leash radius. If leashPointProducer is not null, bot will not navigate furthar than this distance from point returned from leashPointProducer while running out of avoid |
ignoreIfBlocking | Ignore avoid if set to true and it can't be navigated around. |
objectValidator | Indecates whether objects produced by collectionProducer are valid |
priority | The priority. |
|
static |
Adds multiple avoidance areas to the collection of areas to avoid during navigation.
avoids | The collection of avoidance information to add. |
|
static |
Avoids cone-shaped area effects on a WoWUnit
T |
canRun | |
objectSelector | Selects the WoWUnit |
leashPointProducer | |
leashRadius | |
rotationDegrees | Rotation in degrees that's relative to the WoWUnit's rotaton |
radius | the radius of the cone |
arcDegrees | the arc of the cone in degrees |
locationProducer | Selects the location to avoid. This is the apex of the cone |
ignoreIfBlocking | |
priority |
T | : | GameObject |
|
static |
Pulses this instance.
|
static |
Removes all avoidance areas from the collection that match the specified condition.
match | The predicate that defines the condition for the avoidance areas to remove. |
|
static |
Removes a specific avoidance area from the collection of areas to avoid during navigation.
avoidInfo | The avoidance information to remove. |
|
static |
Resets the internal navigation system.
This should only be called when the local collidable geometry has changed, such as a door closing when engaging a boss.
Collection of avoidance information used for navigation around obstacles.
List of active avoidance objects currently being used for navigation.
|
staticget |
Gets a value indicating whether toon is running out of an area being avoided.
|
static |
Triggered when running out of an avoided area.