deleteWaypoint: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>") |
Lou Montana (talk | contribs) m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>") |
||
Line 42: | Line 42: | ||
|x2= Because waypoints get immediately re-indexed when one gets deleted, delete them from last to first: | |x2= Because waypoints get immediately re-indexed when one gets deleted, delete them from last to first: | ||
<code>private _group = | <code>private _group = group _unit; | ||
[[for]] "_i" [[from]] [[count]] [[waypoints]] _group - 1 [[to]] 0 [[step]] -1 [[do]] | [[for]] "_i" [[from]] [[count]] [[waypoints]] _group - 1 [[to]] 0 [[step]] -1 [[do]] | ||
{ | { |
Revision as of 13:02, 12 May 2022
Description
- Description:
- Removes the specified waypoint.
- Groups:
- Waypoints
Syntax
- Syntax:
- deleteWaypoint [group, index]
- Parameters:
- group: Group
- index: Number
- Return Value:
- Nothing
Examples
- Example 1:
- deleteWaypoint [_grp, 2];
- Example 2:
- Because waypoints get immediately re-indexed when one gets deleted, delete them from last to first:
private _group = group _unit; for "_i" from count waypoints _group - 1 to 0 step -1 do { deleteWaypoint [_group, _i]; };
Additional Information
- See also:
- waypoints copyWaypoints setCurrentWaypoint setWaypointBehaviour setWaypointCombatMode setWaypointCompletionRadius setWaypointDescription setWaypointFormation setWaypointHousePosition setWaypointPosition setWaypointScript setWaypointSpeed setWaypointStatements setWaypointTimeout setWaypointType setWaypointVisible waypointAttachVehicle waypointAttachedVehicle setWaypointLoiterRadius waypointLoiterRadius addWaypoint setWaypointLoiterType waypointSpeed
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Jan 01, 2008 - 07:48 (UTC)
- In order to change the behavior of a unit currently following some waypoints, it is not enough to use deleteWaypoint. To achieve the wanted effect, you should rather use setWPPos to the unit's current position (thereby stopping the unit), and (after a small delay) use deleteWaypoint to remove the next waypoints.
- Posted on Nov 15, 2008 - 13:37 (UTC)
-
Another (more foolproof) method to avoid the problem of non-deleteable waypoints is to introduce another group (createGroup) and join all units of the present group. A new group will start without any preset waypoints so you can start setting new WPs all over again.
Old group is "_combatGroup", new group is "_combatGroup2"
_combatGroup2 = createGroup east; { [_x] joinSilent _combatGroup2 } forEach (units _combatGroup); _combatGroup2 addWaypoint [getPos player, 25];
- Posted on Nov 17, 2019 - 16:52 (UTC)
-
To have the unit stop on the spot you need to set its current waypoint where it is and add a little delay, as stated above by Saintolaf so:
group _unit spawn { [_this, (currentWaypoint _this)] setWaypointPosition [getPosASL ((units _this) select 0), -1]; sleep 0.1; for "_i" from count waypoints _this - 1 to 0 step -1 do { deleteWaypoint [_this, _i]; }; };
Will stop the group where it is and delete its waypoints.
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint: Elite version 1.00
- Operation Flashpoint: Elite: New Scripting Commands
- Operation Flashpoint: Elite: Scripting Commands
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 2: Operation Arrowhead: Scripting Commands
- Take On Helicopters: Scripting Commands
- Arma 3: Scripting Commands
- Command Group: Waypoints
- Scripting Commands: Global Effect