Module Tasking.Task_Capture_Zone
Tasking - The TASK_Protect models tasks for players to protect or capture specific zones.
Author: FlightControl
Contributions: MillerTime
Global(s)
Global TASK_CAPTURE_ZONE |
TASK_CAPTURE_ZONE class, extends Tasking.Task_Capture_Zone#TASK_ZONE_GOALThe TASK_CAPTURE_ZONE class defines an Suppression or Extermination of Air Defenses task for a human player to be executed. |
TASK_CAPTURE_ZONE class, extends Tasking.Task_Capture_Zone#TASK_ZONE_GOAL
The TASK_CAPTURE_ZONE class defines an Suppression or Extermination of Air Defenses task for a human player to be executed.
These tasks are important to be executed as they will help to achieve air superiority at the vicinity.
The TASK_CAPTURE_ZONE is used by the Tasking.Task_A2G_Dispatcher#TASK_A2G_DISPATCHER to automatically create SEAD tasks based on detected enemy ground targets.
Global TASK_ZONE_GOAL |
TASK_ZONE_GOAL class, extends Tasking.Task#TASKThe TASK_ZONE_GOAL class defines the task to protect or capture a protection zone. |
TASK_ZONE_GOAL class, extends Tasking.Task#TASK
The TASK_ZONE_GOAL class defines the task to protect or capture a protection zone.
The TASK_ZONE_GOAL is implemented using a Core.Fsm#FSM_TASK, and has the following statuses:
- None: Start of the process
- Planned: The A2G task is planned.
- Assigned: The A2G task is assigned to a Wrapper.Group#GROUP.
- Success: The A2G task is successfully completed.
- Failed: The A2G task has failed. This will happen if the player exists the task early, without communicating a possible cancellation to HQ.
Set the scoring of achievements in an A2G attack.
Scoring or penalties can be given in the following circumstances:
- TASK_ZONE_GOAL.SetScoreOnDestroy(): Set a score when a target in scope of the A2G attack, has been destroyed.
- TASK_ZONE_GOAL.SetScoreOnSuccess(): Set a score when all the targets in scope of the A2G attack, have been destroyed.
- TASK_ZONE_GOAL.SetPenaltyOnFailed(): Set a penalty when the A2G attack has failed.
Developer Note
Note while this class still works, it is no longer supported as the original author stopped active development of MOOSE Therefore, this class is considered to be deprecated
Type(s)
Fields and Methods inherited from TASK_CAPTURE_ZONE | Description |
---|---|
This function is called from the Tasking.CommandCenter#COMMANDCENTER to determine the method of automatic task selection. |
|
TASK_CAPTURE_ZONE:New(Mission, SetGroup, TaskName, ZoneGoalCoalition, TaskBriefing) |
Instantiates a new TASK_CAPTURE_ZONE. |
TASK_CAPTURE_ZONE:OnAfterGoal(From, Event, To, PlayerUnit, PlayerName) |
|
Instantiates a new TASK_CAPTURE_ZONE. |
|
Fields and Methods inherited from TASK_ZONE_GOAL | Description |
---|---|
TASK_ZONE_GOAL:New(Mission, SetGroup, TaskName, ZoneGoal, TaskType, TaskBriefing) |
Instantiates a new TASK_ZONE_GOAL. |
Fields and Methods inherited from TASK | Description |
---|---|
FSM Abort synchronous event function for TASK. |
|
A group aborting the task. |
|
Gets the SET_GROUP assigned to the TASK. |
|
TASK_ZONE_GOAL:AddProgress(PlayerName, ProgressText, ProgressTime, ProgressPoints) |
Add Task Progress for a Player Name |
Assign the #TASK to a Wrapper.Group. |
|
Assign the #TASK to an alive Wrapper.Unit. |
|
FSM Cancel synchronous event function for TASK. |
|
Clear the Wrapper.Group assignment from the #TASK. |
|
A group crashing and thus aborting from the task. |
|
FSM Fail synchronous event function for TASK. |
|
Gets the #TASK briefing. |
|
Get goal of a task |
|
Gets the SET_GROUP assigned to the TASK. |
|
Gets the ID of the Task |
|
Gets the Mission to where the TASK belongs. |
|
Gets the Name of the Task |
|
Create a count of the players in the Task. |
|
Create a list of the players in the Task. |
|
Get the default or currently assigned Core.Fsm#FSM_PROCESS template with key ProcessName. |
|
Gets the Scoring of the task |
|
Gets the FiniteStateMachine of #TASK with key Wrapper.Unit. |
|
Gets the #TASK status. |
|
Returns the #TASK briefing. |
|
Get Task Control Menu |
|
Gets the Task Index, which is a combination of the Task type, the Task name. |
|
Returns the #TASK name. |
|
Gets the Type of the Task |
|
Get the Task FSM Process Template |
|
Goal Trigger for TASK |
|
Returns if the #TASK has still alive and assigned Units. |
|
Checks if there is a FiniteStateMachine assigned to Wrapper.Unit for #TASK. |
|
Init Task Control Menu |
|
Returns if the #TASK is assigned to the Group. |
|
Is the #TASK status Aborted. |
|
Is the #TASK status Assigned. |
|
Is the #TASK status Cancelled. |
|
Is the #TASK status Failed. |
|
Is the #TASK status Hold. |
|
Is the #TASK status Planned. |
|
Is the #TASK status Replanned. |
|
Is the #TASK status Success. |
|
Add a PlayerUnit to join the Task. |
|
Report the task status. |
|
Report the task status. |
|
Report the task status. |
|
Send a message of the #TASK to the assigned Wrapper.Groups. |
|
TASK_ZONE_GOAL:New(Mission, SetGroupAssign, TaskName, TaskType, TaskBriefing) |
Instantiates a new TASK. |
TASK_ZONE_GOAL:OnAfterGoal(From, Event, To, PlayerUnit, PlayerName) |
Goal Handler OnAfter for TASK |
FSM PlayerAborted event handler prototype for TASK. |
|
FSM PlayerCrashed event handler prototype for TASK. |
|
FSM PlayerDead event handler prototype for TASK. |
|
TASK_ZONE_GOAL:OnBeforeGoal(From, Event, To, PlayerUnit, PlayerName) |
Goal Handler OnBefore for TASK |
Remove the menu option of the #TASK for a Wrapper.Group. |
|
TASK_ZONE_GOAL:RefreshTaskControlMenu(TaskUnit, MenuTime, MenuTag) |
Refresh Task Control Menu |
A group rejecting a planned task. |
|
TASK_ZONE_GOAL:RemoveAssignedMenuForGroup(TaskGroup, MenuTime) |
Remove the assigned menu option of the #TASK for a Wrapper.Group. |
Remove the menu options of the #TASK to all the groups in the SetGroup. |
|
Remove FiniteStateMachines from #TASK with key Wrapper.Unit. |
|
Remove Task Control Menu |
|
FSM Replan synchronous event function for TASK. |
|
Create a detailed report of the Task. |
|
Create an overiew report of the Task. |
|
Create a summary report of the Task. |
|
Send the briefing message of the #TASK to the assigned Wrapper.Groups. |
|
Set the assigned menu options of the #TASK. |
|
Sets a #TASK briefing. |
|
Set detection of a task |
|
Set dispatcher of a task |
|
Set goal of a task |
|
The Set of Groups assigned to the Task |
|
Set Wrapper.Group assigned to the #TASK. |
|
Sets the ID of the Task |
|
Set the menu options of the #TASK to all the groups in the SetGroup. |
|
Set the Menu for a Group |
|
Sets the Name of the Task |
|
TASK_ZONE_GOAL:SetPlannedMenuForGroup(TaskGroup, MenuText, MenuTime) |
Set the planned menu option of the #TASK. |
TASK_ZONE_GOAL:SetScoreOnFail(PlayerName, Penalty, TaskUnit) |
Set a penalty when the A2A attack has failed. |
TASK_ZONE_GOAL:SetScoreOnProgress(PlayerName, Score, TaskUnit) |
Set a score when progress has been made by the player. |
TASK_ZONE_GOAL:SetScoreOnSuccess(PlayerName, Score, TaskUnit) |
Set a score when all the targets in scope of the A2A attack, have been destroyed. |
Add a FiniteStateMachine to #TASK with key Wrapper.Unit. |
|
Sets the TimeOut for the #TASK. |
|
Sets the Type of the Task |
|
Sets the Task FSM Process Template |
|
Sets a #TASK to status Aborted. |
|
Sets a #TASK to status Assigned. |
|
Sets a #TASK to status Cancelled. |
|
Sets a #TASK to status Failed. |
|
Sets a #TASK to status Hold. |
|
Sets a #TASK to status Planned. |
|
Sets a #TASK to status Replanned. |
|
Sets a #TASK to status Success. |
|
FSM Success synchronous event function for TASK. |
|
UnAssign the #TASK from a Wrapper.Group. |
|
UnAssign the #TASK from the Wrapper.Groups. |
|
UnAssign the #TASK from an alive Wrapper.Unit. |
|
FSM Abort asynchronous event function for TASK. |
|
FSM Cancel asynchronous event function for TASK. |
|
FSM Fail asynchronous event function for TASK. |
|
Goal Asynchronous Trigger for TASK |
|
FSM Replan asynchronous event function for TASK. |
|
FSM Success asynchronous event function for TASK. |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
TASK_ZONE_GOAL:onenterAssigned(Event, From, To, PlayerUnit, PlayerName) |
FSM function for a TASK |
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
|
FSM function for a TASK |
Fields and Methods inherited from FSM_TASK | Description |
---|---|
Creates a new FSM_TASK object. |
|
TASK_ZONE_GOAL:_call_handler(step, trigger, params, EventName) |
The TASK_CAPTURE_ZONE class
Field(s)
Function(s)
This function is called from the Tasking.CommandCenter#COMMANDCENTER to determine the method of automatic task selection.
Defined in:
TASK_CAPTURE_ZONE
Parameters:
#number AutoAssignMethod
The method to be applied to the task.
Tasking.CommandCenter#COMMANDCENTER CommandCenter
The command center.
Wrapper.Group#GROUP TaskGroup
The player group.
AutoAssignReference
Instantiates a new TASK_CAPTURE_ZONE.
Defined in:
TASK_CAPTURE_ZONE
Parameters:
Tasking.Mission#MISSION Mission
Core.Set#SET_GROUP SetGroup
The set of groups for which the Task can be assigned.
#string TaskName
The name of the Task.
Functional.ZoneGoalCoalition#ZONE_GOAL_COALITION ZoneGoalCoalition
#string TaskBriefing
The briefing of the task.
Return value:
self
@param #TASK_CAPTURE_ZONE self @param Wrapper.Unit#UNIT TaskUnit
Defined in:
TASK_CAPTURE_ZONE
Parameters:
From
Event
To
PlayerUnit
PlayerName
Defined in:
TASK_CAPTURE_ZONE
Parameter:
ReportGroup
Instantiates a new TASK_CAPTURE_ZONE.
Defined in:
TASK_CAPTURE_ZONE
Parameter:
Persist
The TASK_ZONE_GOAL class
Field(s)
Function(s)
Defined in:
TASK_ZONE_GOAL
@param #TASK_ZONE_GOAL self @param Wrapper.Unit#UNIT TaskUnit @return Core.Zone#ZONE_BASE The Zone object where the Target is located on the map.
Defined in:
TASK_ZONE_GOAL
Parameter:
TaskUnit
Instantiates a new TASK_ZONE_GOAL.
Defined in:
TASK_ZONE_GOAL
Parameters:
Tasking.Mission#MISSION Mission
Core.Set#SET_GROUP SetGroup
The set of groups for which the Task can be assigned.
#string TaskName
The name of the Task.
TaskType
TaskBriefing
Return value:
self
Defined in:
TASK_ZONE_GOAL
Parameter:
GoalTotal
@param #TASK_ZONE_GOAL self @param Functional.ZoneGoal#ZONE_GOAL ZoneGoal The ZoneGoal Engine.
Defined in:
TASK_ZONE_GOAL
Parameter:
ZoneGoal
@param #TASK_ZONE_GOAL self @param Core.Zone#ZONE_BASE TargetZone The Zone object where the Target is located on the map. @param Wrapper.Unit#UNIT TaskUnit
Defined in:
TASK_ZONE_GOAL
Parameters:
TargetZone
TaskUnit
Field(s)
Function(s)
FSM Abort synchronous event function for TASK.
Use this event to Abort the Task.
Defined in:
A group aborting the task.
Gets the SET_GROUP assigned to the TASK.
Add Task Progress for a Player Name
Defined in:
Parameters:
#string PlayerName
The name of the player.
#string ProgressText
The text that explains the Progress achieved.
#number ProgressTime
The time the progress was achieved.
ProgressPoints
Return value:
Assign the #TASK to a Wrapper.Group.
Assign the #TASK to an alive Wrapper.Unit.
FSM Cancel synchronous event function for TASK.
Use this event to Cancel the Task.
Defined in:
Clear the Wrapper.Group assignment from the #TASK.
A group crashing and thus aborting from the task.
FSM Fail synchronous event function for TASK.
Use this event to Fail the Task.
Defined in:
TODO: Obsolete? - Fail processes from #TASK with key Wrapper.Unit. @param #TASK self @param #string TaskUnitName @return #TASK self
Gets the #TASK briefing.
Get goal of a task
Gets the SET_GROUP assigned to the TASK.
Gets the ID of the Task
Gets the Mission to where the TASK belongs.
Gets the Name of the Task
Create a count of the players in the Task.
Create a list of the players in the Task.
Get the default or currently assigned Core.Fsm#FSM_PROCESS template with key ProcessName.
Gets the Scoring of the task
Gets the FiniteStateMachine of #TASK with key Wrapper.Unit.
Returns the #TASK briefing.
Get Task Control Menu
Defined in:
Parameters:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
TaskName
Return value:
TaskControlMenu The Task Control Menu
Gets the Task Index, which is a combination of the Task type, the Task name.
Returns the #TASK name.
Gets the Type of the Task
Get the Task FSM Process Template
Goal Trigger for TASK
Defined in:
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
Returns if the #TASK has still alive and assigned Units.
Checks if there is a FiniteStateMachine assigned to Wrapper.Unit for #TASK.
Init Task Control Menu
Defined in:
Parameter:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
Return value:
Task Control Menu Refresh ID
Returns if the #TASK is assigned to the Group.
Add a PlayerUnit to join the Task.
For each Group within the Task, the Unit is checked if it can join the Task. If the Unit was not part of the Task, false is returned. If the Unit is part of the Task, true is returned.
Defined in:
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The CLIENT or UNIT of the Player joining the Mission.
Wrapper.Group#GROUP PlayerGroup
The GROUP of the player joining the Mission.
Return value:
#boolean:
true if Unit is part of the Task.
@param #TASK self @param Wrapper.Group#GROUP TaskGroup
Report the task status.
@param #TASK self @param Wrapper.Group#GROUP TaskGroup
Report the task status.
Report the task status.
Send a message of the #TASK to the assigned Wrapper.Groups.
Instantiates a new TASK.
Should never be used. Interface Class.
Defined in:
Parameters:
Tasking.Mission#MISSION Mission
The mission wherein the Task is registered.
Core.Set#SET_GROUP SetGroupAssign
The set of groups for which the Task can be assigned.
#string TaskName
The name of the Task
#string TaskType
The type of the Task
TaskBriefing
Return value:
self
Goal Handler OnAfter for TASK
Defined in:
Parameters:
#string From
#string Event
#string To
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
FSM PlayerAborted event handler prototype for TASK.
Defined in:
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he went back to spectators or left the mission.
#string PlayerName
The name of the Player.
FSM PlayerCrashed event handler prototype for TASK.
Defined in:
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he crashed in the mission.
#string PlayerName
The name of the Player.
FSM PlayerDead event handler prototype for TASK.
Defined in:
Parameters:
Wrapper.Unit#UNIT PlayerUnit
The Unit of the Player when he died in the mission.
#string PlayerName
The name of the Player.
Goal Handler OnBefore for TASK
Defined in:
Parameters:
#string From
#string Event
#string To
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
Return value:
#boolean:
Remove the menu option of the #TASK for a Wrapper.Group.
Refresh Task Control Menu
Defined in:
Parameters:
Wrapper.Unit#UNIT TaskUnit
The Wrapper.Unit that contains a player.
MenuTime
The refresh time that was used to refresh the Task Control Menu items.
MenuTag
The tag.
A group rejecting a planned task.
Remove the assigned menu option of the #TASK for a Wrapper.Group.
Remove the menu options of the #TASK to all the groups in the SetGroup.
Remove FiniteStateMachines from #TASK with key Wrapper.Unit.
Remove Task Control Menu
FSM Replan synchronous event function for TASK.
Use this event to Replan the Task.
Defined in:
Create a detailed report of the Task.
List the Task Status, and the Players assigned to the Task.
Create an overiew report of the Task.
List the Task Name and Status
Create a summary report of the Task.
List the Task Name and Status
Send the briefing message of the #TASK to the assigned Wrapper.Groups.
Defined in:
@param #TASK self @param Actions.Act_Assign#ACT_ASSIGN AcceptClass
Set the assigned menu options of the #TASK.
Sets a #TASK briefing.
Set detection of a task
Set dispatcher of a task
Set goal of a task
Set Wrapper.Group assigned to the #TASK.
Sets the ID of the Task
Set the menu options of the #TASK to all the groups in the SetGroup.
Set the Menu for a Group
Sets the Name of the Task
Set the planned menu option of the #TASK.
Defined in:
Parameters:
Wrapper.Group#GROUP TaskGroup
#string MenuText
The menu text.
#number MenuTime
Return value:
self
Set a penalty when the A2A attack has failed.
Defined in:
Parameters:
#string PlayerName
The name of the player.
#number Penalty
The penalty in points, must be a negative value!
Wrapper.Unit#UNIT TaskUnit
Return value:
Set a score when progress has been made by the player.
Defined in:
Parameters:
#string PlayerName
The name of the player.
#number Score
The score in points to be granted when task process has been achieved.
Wrapper.Unit#UNIT TaskUnit
Return value:
Set a score when all the targets in scope of the A2A attack, have been destroyed.
Defined in:
Parameters:
#string PlayerName
The name of the player.
#number Score
The score in points.
Wrapper.Unit#UNIT TaskUnit
Return value:
Add a FiniteStateMachine to #TASK with key Wrapper.Unit.
Sets the TimeOut for the #TASK.
If #TASK stayed planned for longer than TimeOut, it gets into Cancelled status.
Sets the Type of the Task
Sets the Task FSM Process Template
FSM Success synchronous event function for TASK.
Use this event to make the Task a Success.
Defined in:
UnAssign the #TASK from a Wrapper.Group.
UnAssign the #TASK from the Wrapper.Groups.
Defined in:
UnAssign the #TASK from an alive Wrapper.Unit.
FSM Abort asynchronous event function for TASK.
Use this event to Abort the Task.
Defined in:
FSM Cancel asynchronous event function for TASK.
Use this event to Cancel the Task.
Defined in:
FSM Fail asynchronous event function for TASK.
Use this event to Fail the Task.
Defined in:
Goal Asynchronous Trigger for TASK
Defined in:
Parameters:
#number Delay
Wrapper.Unit#UNIT PlayerUnit
The Wrapper.Unit of the player.
#string PlayerName
The name of the player.
FSM Replan asynchronous event function for TASK.
Use this event to Replan the Task.
Defined in:
FSM Success asynchronous event function for TASK.
Use this event to make the Task a Success.
Defined in:
FSM function for a TASK
FSM function for a TASK
FSM function for a TASK
FSM function for a TASK
Defined in:
Parameters:
#string Event
#string From
#string To
PlayerUnit
PlayerName
FSM function for a TASK
FSM function for a TASK
FSM function for a TASK
FSM function for a TASK
FSM function for a TASK
Field(s)
Function(s)
Creates a new FSM_TASK object.
Defined in:
Parameter:
#string TaskName
The name of the task.