This commit is contained in:
FlightControl
2018-09-22 21:24:15 +02:00
commit 5bc154c53d
1539 changed files with 238150 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
---
-- Name: TSK-300 - A2A - SWEEP
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Sweeping of target areas.
--
-- # Test cases:
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Target Sweeping Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Sweeping", "Primary", "Wait until the detected targets get undetected. And see if a SWEEP task is allocated.", coalition.side.BLUE )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions( "blue" ):FilterPrefixes( "Target" ):FilterStart()
TaskSWEEP = TASK_A2A_SWEEP:New( Mission, AttackGroups, "SWEEP", TargetSetUnit )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,27 @@
---
-- Name: TSK-010 - Task Modelling - SEAD.lua
-- Author: FlightControl
-- Date Created: 31 Mar 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_SEAD.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Lima" )
Scoring = SCORING:New( "Detect Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "High", "SEAD the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes("Target"):FilterStart()
TaskSEAD = TASK_A2G_SEAD:New(Mission,AttackGroups,"SEAD",TargetSetUnit)

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,27 @@
---
-- Name: TSK-100 - A2G - BAI
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_BAI.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
Scoring = SCORING:New( "BAI Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "Primary", "Perform a Battlefield Air Interdiction in the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes( "Target" ):FilterStart()
TaskBAI = TASK_A2G_BAI:New( Mission, AttackGroups,"BAI", TargetSetUnit )

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,29 @@
---
-- Name: TSK-101 - A2G - BAI - WWII Mode
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_BAI.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
CommandCenter:SetModeWWII()
CommandCenter:SetReferenceZones( "Airbase" )
Scoring = SCORING:New( "BAI Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "Primary", "Perform a Battlefield Air Interdiction in the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes( "Target" ):FilterStart()
TaskBAI = TASK_A2G_BAI:New( Mission, AttackGroups,"BAI", TargetSetUnit )

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,78 @@
---
-- Name: TSK-CGO-000 - Boarding Test
-- Author: FlightControl
-- Date Created: 12 Apr 2017
--
-- This mission demonstrates the transport of a cargo group using an APC.
--
-- There is:
-- - 1 APC.
-- - 2 Transport Tasks - Transport Workers and Transport Engineers.
-- - 2 Cargo - Workers and Engineers.
-- - 2 Deployment Zones - Alpha and Beta.
--
-- Task Engineers: Transport the Engineers to Deployment Zone Alpha or Zone Beta.
-- Task Workers: Transport the Workers to Deployment Zone Beta.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local WorkersCargoSet = SET_CARGO:New():FilterTypes( "Workers" ):FilterStart()
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Workers", "Mechanics", 500 )
-- We setup the task to transport workers.
WorkersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Workers", WorkersCargoSet )
-- We setup to deploy workers in the deploy zone 1.
WorkersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,78 @@
---
-- Name: TSK-CGO-100 - Ground - APC Test
-- Author: FlightControl
-- Date Created: 12 Apr 2017
--
-- This mission demonstrates the transport of a cargo group using an APC.
--
-- There is:
-- - 1 APC.
-- - 2 Transport Tasks - Transport Workers and Transport Engineers.
-- - 2 Cargo - Workers and Engineers.
-- - 2 Deployment Zones - Alpha and Beta.
--
-- Task Engineers: Transport the Engineers to Deployment Zone Alpha or Zone Beta.
-- Task Workers: Transport the Workers to Deployment Zone Beta.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 ):RespawnOnDestroyed( true )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local WorkersCargoSet = SET_CARGO:New():FilterTypes( "Workers" ):FilterStart()
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Workers", "Mechanics", 500 ):RespawnOnDestroyed( true )
-- We setup the task to transport workers.
WorkersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Workers", WorkersCargoSet )
-- We setup to deploy workers in the deploy zone 1.
WorkersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,78 @@
---
-- Name: TSK-CGO-100 - Ground - APC Test
-- Author: FlightControl
-- Date Created: 12 Apr 2017
--
-- This mission demonstrates the transport of a cargo group using an APC.
--
-- There is:
-- - 1 APC.
-- - 2 Transport Tasks - Transport Workers and Transport Engineers.
-- - 2 Cargo - Workers and Engineers.
-- - 2 Deployment Zones - Alpha and Beta.
--
-- Task Engineers: Transport the Engineers to Deployment Zone Alpha or Zone Beta.
-- Task Workers: Transport the Workers to Deployment Zone Beta.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local WorkersCargoSet = SET_CARGO:New():FilterTypes( "Workers" ):FilterStart()
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Workers", "Mechanics", 500 )
-- We setup the task to transport workers.
WorkersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Workers", WorkersCargoSet )
-- We setup to deploy workers in the deploy zone 1.
WorkersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,55 @@
---
-- Name: TSK-CGO-502 - Helo - 1 Helo - 1 Task - 2 Cargo - 1 Zone
-- Author: FlightControl
-- Date Created: 12 Mar 2018
--
-- This mission demonstrates the transport of a cargo group using an Helicopter.
--
-- There is:
-- - 1 Helicopter.
-- - 1 Transport Task - Transport Workers.
-- - 1 Cargo - Workers.
-- - 1 Deployment Zone - Alpha.
--
-- Task Workers: Transport the Workers to Deployment Zone Alpha.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,56 @@
---
-- Name: TSK-CGO-502 - Helo - 1 Helo - 1 Task - 2 Cargo - 1 Zone
-- Author: FlightControl
-- Date Created: 12 Mar 2018
--
-- This mission demonstrates the transport of a cargo group using an Helicopter.
--
-- There is:
-- - 1 Helicopter.
-- - 1 Transport Task - Transport Workers.
-- - 1 Cargo - Workers.
-- - 1 Deployment Zone - Alpha.
--
-- Task Workers: Transport the Workers to Deployment Zone Alpha.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,64 @@
---
-- Name: TSK-CGO-502 - Helo - 1 Helo - 1 Task - 2 Cargo - 1 Zone
-- Author: FlightControl
-- Date Created: 12 Mar 2018
--
-- This mission demonstrates the transport of a cargo group using an Helicopter.
--
-- There is:
-- - 1 Helicopter.
-- - 1 Transport Task - Transport Workers.
-- - 1 Cargo - Workers.
-- - 1 Deployment Zone - Alpha.
--
-- Task Workers: Transport the Workers to Deployment Zone Alpha.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Engineers", "Workers", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,66 @@
---
-- Name: TSK-CGO-503 - Helo - 1 Helo - 1 Task - 2 Cargo - 2 Zones
-- Author: FlightControl
-- Date Created: 12 Mar 2018
--
-- This mission demonstrates the transport of a cargo group using an Helicopter.
--
-- There is:
-- - 1 Helicopter.
-- - 1 Transport Task - Transport Workers.
-- - 1 Cargo - Workers.
-- - 1 Deployment Zone - Alpha.
--
-- Task Workers: Transport the Workers to Deployment Zone Alpha.
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Engineers", "Workers", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,77 @@
---
-- Name: TSK-CGO-510 - Helo - 1 Helo - 2 Task - 2 Cargo - 2 Zones
-- Author: FlightControl
-- Date Created: 12 Mar 2018
--
-- This mission demonstrates the transport of a cargo group using an Helicopter.
--
-- There is:
-- - 1 Helicopter.
-- - 2 Transport Tasks - Transport Workers and Transport Engineers.
-- - 2 Cargo - Workers and Engineers.
-- - 2 Deployment Zones - Alpha and Beta.
--
-- Task Engineers: Transport the Engineers to Deployment Zone Alpha or Zone Beta.
-- Task Workers: Transport the Workers to Deployment Zone Beta.
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
-- Allocate the Transport, which is an APC in the field.
local APC = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
-- We will setup the transportation for Engineers.
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local EngineersCargoSet = SET_CARGO:New():FilterTypes( "Engineers" ):FilterStart()
-- Now we add cargo into the battle scene.
local EngineersGroup = GROUP:FindByName( "Engineers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Engineers".
-- The cargoset "EngineersCargoSet" will embed all defined cargo of type Engineers (prefix) into its set.
local EngineersCargoGroup = CARGO_GROUP:New( EngineersGroup, "Engineers", "Radar Team", 500 )
-- We setup the task to transport engineers.
EngineersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Engineers", EngineersCargoSet )
-- We setup to deploy workers in the deploy zone 1 and 2 (the player can choose).
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Alpha", GROUP:FindByName("DeployZone Alpha") ) )
EngineersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
-- Here we define the "cargo set", which is a collection of cargo objects.
-- The cargo set will be the input for the cargo transportation task.
-- So a transportation object is handling a cargo set, which is automatically refreshed when new cargo is added/deleted.
local WorkersCargoSet = SET_CARGO:New():FilterTypes( "Workers" ):FilterStart()
local WorkersGroup = GROUP:FindByName( "Workers" )
-- CARGO_GROUP can be used to setup cargo with a GROUP object underneath.
-- We name this group Engineers.
-- Note that the name of the cargo is "Workers".
-- The cargoset "WorkersCargoSet" will embed all defined cargo of type Workers (prefix) into its set.
local WorkersCargoGroup = CARGO_GROUP:New( WorkersGroup, "Workers", "Mechanics", 500 )
-- We setup the task to transport workers.
WorkersCargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, APC, "Transport Workers", WorkersCargoSet )
-- We setup to deploy workers in the deploy zone 1.
WorkersCargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Deploy Zone Beta", GROUP:FindByName("DeployZone Beta") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,27 @@
---
-- Name: TSK-010 - Task Modelling - SEAD.lua
-- Author: FlightControl
-- Date Created: 31 Mar 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_SEAD.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Lima" )
Scoring = SCORING:New( "Detect Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "High", "SEAD the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes("Target"):FilterStart()
TaskSEAD = TASK_A2G_SEAD:New(Mission,AttackGroups,"SEAD",TargetSetUnit)

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,27 @@
---
-- Name: TSK-100 - A2G - BAI
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_BAI.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
Scoring = SCORING:New( "BAI Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "Primary", "Perform a Battlefield Air Interdiction in the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes( "Target" ):FilterStart()
TaskBAI = TASK_A2G_BAI:New( Mission, AttackGroups,"BAI", TargetSetUnit )

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,29 @@
---
-- Name: TSK-101 - A2G - BAI - WWII Mode
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Task_BAI.
--
-- # Test cases:
--
HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
CommandCenter:SetModeWWII()
CommandCenter:SetReferenceZones( "Airbase" )
Scoring = SCORING:New( "BAI Demo" )
Mission = MISSION
:New( CommandCenter, "Overlord", "Primary", "Perform a Battlefield Air Interdiction in the area!", coalition.side.RED )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions("blue"):FilterPrefixes( "Target" ):FilterStart()
TaskBAI = TASK_A2G_BAI:New( Mission, AttackGroups,"BAI", TargetSetUnit )

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,41 @@
---
-- Name: TSK-210 - Helicopter - Transport Cargo Group
-- Author: FlightControl
-- Date Created: 14 Apr 2017
--
-- # Situation:
--
-- This mission demonstrates the transport of a cargo group.
--
-- # Test cases:
--
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
local Helicopter = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
local SetCargo = SET_CARGO:New():FilterTypes( { "Engineers", "APC" } ):FilterStart()
local EngineersGroup = GROUP:FindByName( "Engineers" )
local EngineersCargo = CARGO_GROUP:New( EngineersGroup, "Engineers", "Engineers", 500 )
local APCGroup = GROUP:FindByName( "APC" )
local APCCargo = CARGO_GROUP:New( APCGroup, "APC", "APC", 500 )
CargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, Helicopter, "Transport.001", SetCargo )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "DeployZone1", GROUP:FindByName("DeployZone1") ) )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "DeployZone2", GROUP:FindByName("DeployZone2") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,43 @@
---
-- Name: TSK-211 - Helicopter - Transport Multiple Cargo Groups
-- Author: FlightControl
-- Date Created: 14 Apr 2017
--
-- # Situation:
--
-- This mission demonstrates the transport of multiple cargo groups to different zones.
--
-- # Test cases:
--
--
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport 3 engineering teams to each deployment zone.", coalition.side.BLUE )
:AddScoring( Scoring )
local Helicopter = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
local SetCargo = SET_CARGO:New():FilterTypes( { "Engineers" } ):FilterStart()
local EngineersCargoAlpha = CARGO_GROUP:New( GROUP:FindByName( "Engineers Alpha" ), "Engineers", "Team Alpha", 500 ):RespawnOnDestroyed( true )
local EngineersCargoBeta = CARGO_GROUP:New( GROUP:FindByName( "Engineers Beta" ), "Engineers", "Team Beta", 500 ):RespawnOnDestroyed( true )
local EngineersCargoGamma = CARGO_GROUP:New( GROUP:FindByName( "Engineers Gamma" ), "Engineers", "Team Gamma", 500 ):RespawnOnDestroyed( true )
CargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, Helicopter, "Transport Engineers", SetCargo )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Repair Zone 1", GROUP:FindByName("Repair Zone 1") ) )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "Repair Zone 2", GROUP:FindByName("Repair Zone 2") ) )
CargoTransportTask:AddDeployZone( ZONE:New( "Delivery Zone" ) )
CargoTransportTask:SetCargoLimit( 2 )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,83 @@
---
-- Name: TSK-212 - Helicopter - Cargo handle PickedUp and Deployed events
-- Author: FlightControl
-- Date Created: 14 Apr 2017
--
-- # Situation:
--
-- This mission demonstrates the transport of multiple cargo groups to different zones.
-- Task success is verified by handling the PickedUp and Deployed events of the TASK_CARGO_TRANSPORT object.
--
--
--
-- # Test cases:
--
-- 1. Observe that if a cargo has been transported to a deployment zone, that a message is sent to the coalition of a succesful transport.
-- 2. Observe that if all cargo has been transported to all deployment zones, that mission success is accomplished.
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport 3 engineering teams to each deployment zone.", coalition.side.BLUE )
:AddScoring( Scoring )
local Helicopter = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
local SetCargo = SET_CARGO:New():FilterTypes( { "Engineers" } ):FilterStart()
local EngineersCargoAlpha = CARGO_GROUP:New( GROUP:FindByName( "Engineers Alpha" ), "Engineers", "Team Alpha", 500 ):RespawnOnDestroyed(true)
local EngineersCargoBeta = CARGO_GROUP:New( GROUP:FindByName( "Engineers Beta" ), "Engineers", "Team Beta", 500 ):RespawnOnDestroyed(true)
local EngineersCargoGamma = CARGO_GROUP:New( GROUP:FindByName( "Engineers Gamma" ), "Engineers", "Team Gamma", 500 ):RespawnOnDestroyed(true)
CargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, Helicopter, "Transport Engineers", SetCargo )
local RepairZone1 = ZONE_POLYGON:New( "Repair Zone 1", GROUP:FindByName("Repair Zone 1") )
local RepairZone2 = ZONE_POLYGON:New( "Repair Zone 2", GROUP:FindByName("Repair Zone 2") )
local DeliveryZone = ZONE:New( "Delivery Zone" )
CargoTransportTask:AddDeployZone( RepairZone1 )
CargoTransportTask:AddDeployZone( RepairZone2 )
CargoTransportTask:AddDeployZone( DeliveryZone )
--- OnAfter Transition Handler for Event CargoDeployed.
-- @function [parent=#TASK_CARGO_TRANSPORT] OnAfterCargoDeployed
-- @param #TASK_CARGO_TRANSPORT self
-- @param #string From The From State string.
-- @param #string Event The Event string.
-- @param #string To The To State string.
-- @param Wrapper.Unit#UNIT TaskUnit The Unit (Client) that Deployed the cargo. You can use this to retrieve the PlayerName etc.
-- @param Core.Cargo#CARGO Cargo The Cargo that got PickedUp by the TaskUnit. You can use this to check Cargo Status.
-- @param Core.Zone#ZONE DeployZone The zone where the Cargo got Deployed or UnBoarded.
function CargoTransportTask:OnAfterCargoDeployed( From, Event, To, TaskUnit, Cargo, DeployZone )
self:F({From, Event, To, TaskUnit, Cargo, DeployZone})
CommandCenter:MessageToCoalition( "Cargo " .. Cargo:GetName() .. " got successfully transported." )
if DeployZone:GetName() == RepairZone1:GetName() then
local Convoy = GROUP:FindByName( "Convoy" )
if Convoy and not Convoy:IsAlive() then
Convoy:Activate()
end
end
if DeployZone:GetName() == RepairZone2:GetName() then
local Sam = GROUP:FindByName( "RepairSam" )
if Sam and not Sam:IsAlive() then
Sam:Activate()
end
end
if self:IsAllCargoTransported() then
self:Success()
end
end
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,43 @@
---
-- Name: TSK-213 - Helicopter - Cargo Group Destroyed
-- Author: FlightControl
-- Date Created: 14 Apr 2017
--
-- # Situation:
--
-- This mission demonstrates the transport of a cargo group.
-- The cargo group is destroyed.
--
-- # Test cases:
-- 1. Observe the destruction of the cargo.
-- 2. Board the cargo... You shouldn't be able to do that.
-- 3. There should be no error in the log.
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Cargo Group Transport Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Transport", "High", "Transport the team from Deploy Zone 1 to Deploy Zone 2", coalition.side.BLUE )
:AddScoring( Scoring )
local Helicopter = SET_GROUP:New():FilterPrefixes( "Transport" ):FilterStart()
local SetCargo = SET_CARGO:New():FilterTypes( { "Engineers", "APC" } ):FilterStart()
local EngineersGroup = GROUP:FindByName( "Engineers" )
local EngineersCargo = CARGO_GROUP:New( EngineersGroup, "Engineers", "Engineers", 500 )
local APCGroup = GROUP:FindByName( "APC" )
local APCCargo = CARGO_GROUP:New( APCGroup, "APC", "APC", 500 )
CargoTransportTask = TASK_CARGO_TRANSPORT:New( Mission, Helicopter, "Transport Infantry", SetCargo )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "DeployZone1", GROUP:FindByName("DeployZone1") ) )
CargoTransportTask:AddDeployZone( ZONE_POLYGON:New( "DeployZone2", GROUP:FindByName("DeployZone2") ) )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *

View File

@@ -0,0 +1,30 @@
---
-- Name: TSK-300 - A2A - SWEEP
-- Author: FlightControl
-- Date Created: 28 May 2017
--
-- # Situation:
--
-- This mission demonstrates the Sweeping of target areas.
--
-- # Test cases:
do
local HQ = GROUP:FindByName( "HQ", "Bravo HQ" )
local CommandCenter = COMMANDCENTER:New( HQ, "Bravo" )
local Scoring = SCORING:New( "Target Sweeping Demonstration" )
local Mission = MISSION
:New( CommandCenter, "Sweeping", "Primary", "Wait until the detected targets get undetected. And see if a SWEEP task is allocated.", coalition.side.BLUE )
:AddScoring( Scoring )
AttackGroups = SET_GROUP:New():FilterCoalitions( "red" ):FilterPrefixes( "Attack" ):FilterStart()
TargetSetUnit = SET_UNIT:New():FilterCoalitions( "blue" ):FilterPrefixes( "Target" ):FilterStart()
TaskSWEEP = TASK_A2A_SWEEP:New( Mission, AttackGroups, "SWEEP", TargetSetUnit )
end

View File

@@ -0,0 +1,10 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
$dir
$file
cd "_unpacked"
. 7z a -r -y -tzip "..\$file.miz" *
cd ..

View File

@@ -0,0 +1,7 @@
$dir = split-path -parent $MyInvocation.MyCommand.Definition
cd $dir
$file = Split-Path $dir -leaf
Remove-Item .\_unpacked -Force -Recurse
md "_unpacked"
cd "_unpacked"
. 7z x -r -y "..\$file.miz" *