mirror of
https://github.com/FlightControl-Master/MOOSE_MISSIONS.git
synced 2025-08-15 10:37:46 +00:00
Next step of folder restructure
This commit is contained in:
121576
Ops/PlayerTask/PlayerTask - 010 - Basics/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 010 - Basics/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,59 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 010 - Caucasus - Test Mission with manual target addition
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: August 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set the name for SRS and Menu to be "Mudder"
|
||||
taskmanager:SetMenuName("Mudder")
|
||||
|
||||
-- Manually add a GROUP as a target
|
||||
taskmanager:AddTarget(GROUP:FindByName("Kobuleti Trucks"))
|
||||
|
||||
-- Manually add an AIRBASE as a target
|
||||
taskmanager:AddTarget(AIRBASE:FindByName(AIRBASE.Caucasus.Senaki_Kolkhi))
|
||||
|
||||
-- Manually add a COORDINATE as a target
|
||||
taskmanager:AddTarget(GROUP:FindByName("Scout Coordinate"):GetCoordinate())
|
||||
|
||||
-- auto-add map markers when tasks are added
|
||||
function taskmanager:OnAfterTaskAdded(From,Event,To,Task)
|
||||
local task = Task -- Ops.PlayerTask#PLAYERTASK
|
||||
local coord = task.Target:GetCoordinate()
|
||||
local taskID = string.format("Task ID #%03d | Type: %s | Threat: %d",task.PlayerTaskNr,task.Type,task.Target:GetThreatLevelMax())
|
||||
local mark = MARKER:New(coord,taskID)
|
||||
mark:ReadWrite()
|
||||
mark:ToCoalition(taskmanager.Coalition)
|
||||
end
|
||||
|
||||
-- Function to explode trucks in Kobuleti
|
||||
function killtrucks()
|
||||
local coord = GROUP:FindByName("Kobuleti Trucks"):GetCoordinate()
|
||||
GROUP:FindByName("Kobuleti Trucks"):Destroy(true)
|
||||
coord:Explosion(10000)
|
||||
coord:BigSmokeAndFireLarge()
|
||||
end
|
||||
|
||||
-- Timer for the trucks
|
||||
local kaboom = TIMER:New(killtrucks)
|
||||
kaboom:Start(600)
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 020 - Detection/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 020 - Detection/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,59 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 020 - Caucasus - Test Mission with detection
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: August 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set up detection with grup names containing "Blue Recce", these will add targets to our controller. Here's it's a Reaper Drone
|
||||
taskmanager:SetupIntel("Blue Recce")
|
||||
-- Add a single Recce group name "Blue Humvee"
|
||||
taskmanager:AddAgent(GROUP:FindByName("Blue Humvee"))
|
||||
|
||||
-- Set the menu to be calles Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Add accept- and reject-zones for detection
|
||||
taskmanager:AddAcceptZone(ZONE:New("AcceptZone"))
|
||||
taskmanager:AddRejectZone(ZONE:FindByName("RejectZone"))
|
||||
|
||||
-- auto-add map markers when tasks are added
|
||||
function taskmanager:OnAfterTaskAdded(From,Event,To,Task)
|
||||
local task = Task -- Ops.PlayerTask#PLAYERTASK
|
||||
local coord = task.Target:GetCoordinate()
|
||||
local taskID = string.format("Task ID #%03d | Type: %s | Threat: %d",task.PlayerTaskNr,task.Type,task.Target:GetThreatLevelMax())
|
||||
local mark = MARKER:New(coord,taskID)
|
||||
mark:ReadWrite()
|
||||
mark:ToCoalition(taskmanager.Coalition)
|
||||
end
|
||||
|
||||
-- Function to explode trucks in Kobuleti
|
||||
function killtrucks()
|
||||
local coord = GROUP:FindByName("Kobuleti Trucks"):GetCoordinate()
|
||||
GROUP:FindByName("Kobuleti Trucks"):Destroy(true)
|
||||
coord:Explosion(10000)
|
||||
coord:BigSmokeAndFireLarge()
|
||||
end
|
||||
|
||||
-- Timer for the trucks
|
||||
local kaboom = TIMER:New(killtrucks)
|
||||
kaboom:Start(300)
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 030 - SRS/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 030 - SRS/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,71 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 030 - Caucasus - Test Mission with SRS
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start.
|
||||
--
|
||||
-- Tasking is made available over the F10 Menu.
|
||||
-- Listen to AM 130 or 255 on SRS for messages.
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: August 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set up detection with grup names containing "Blue Recce", these will add targets to our controller. Here's it's a Reaper Drone
|
||||
taskmanager:SetupIntel("Blue Recce")
|
||||
-- Add a single Recce group name "Blue Humvee"
|
||||
taskmanager:AddAgent(GROUP:FindByName("Blue Humvee"))
|
||||
|
||||
-- Set the menu to be calles Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Add accept- and reject-zones for detection
|
||||
taskmanager:AddAcceptZone(ZONE:New("AcceptZone"))
|
||||
taskmanager:AddRejectZone(ZONE:FindByName("RejectZone"))
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- auto-add map markers when tasks are added
|
||||
function taskmanager:OnAfterTaskAdded(From,Event,To,Task)
|
||||
local task = Task -- Ops.PlayerTask#PLAYERTASK
|
||||
local coord = task.Target:GetCoordinate()
|
||||
local taskID = string.format("Task ID #%03d | Type: %s | Threat: %d",task.PlayerTaskNr,task.Type,task.Target:GetThreatLevelMax())
|
||||
local mark = MARKER:New(coord,taskID)
|
||||
mark:ReadWrite()
|
||||
mark:ToCoalition(taskmanager.Coalition)
|
||||
end
|
||||
|
||||
-- Function to explode trucks in Kobuleti
|
||||
function killtrucks()
|
||||
local coord = GROUP:FindByName("Kobuleti Trucks"):GetCoordinate()
|
||||
GROUP:FindByName("Kobuleti Trucks"):Destroy(true)
|
||||
coord:Explosion(10000)
|
||||
coord:BigSmokeAndFireLarge()
|
||||
end
|
||||
|
||||
-- Timer for the trucks
|
||||
local kaboom = TIMER:New(killtrucks)
|
||||
kaboom:Start(300)
|
||||
|
||||
|
||||
|
||||
BIN
Ops/PlayerTask/PlayerTask - 030 - SRS/PlayerTask - 030 - SRS.miz
Normal file
BIN
Ops/PlayerTask/PlayerTask - 030 - SRS/PlayerTask - 030 - SRS.miz
Normal file
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 031 - Options/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 031 - Options/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,79 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 031 - Caucasus - Test Mission with SRS and Options
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start.
|
||||
--
|
||||
-- Tasking is made available over the F10 Menu.
|
||||
-- Listen to AM 130 or 255 on SRS for messages.
|
||||
-- An additional info menu is available to review tasks before joining.
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: August 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set up detection with grup names containing "Blue Recce", these will add targets to our controller. Here's it's a Reaper Drone
|
||||
taskmanager:SetupIntel("Blue Recce")
|
||||
-- Add a single Recce group name "Blue Humvee"
|
||||
taskmanager:AddAgent(GROUP:FindByName("Blue Humvee"))
|
||||
|
||||
-- Set the menu to be called Eagle Eye
|
||||
taskmanager:SetMenuName("Spectre")
|
||||
|
||||
-- Set the Info Task menu to be available
|
||||
taskmanager:EnableTaskInfoMenu()
|
||||
|
||||
-- Menu options:
|
||||
-- Don't show the nfo Task menu when a player has joined a task.
|
||||
-- Limit menu entries to top-3 per category
|
||||
-- Hold menu refresh at least 45 seconds, when player has no task
|
||||
taskmanager:SetMenuOptions(false,3,45)
|
||||
|
||||
-- Allow option to request flash directions (on a per-player basis)
|
||||
taskmanager:SetAllowFlashDirection(true)
|
||||
|
||||
-- Set option to use the full custom player callsign after the # on the group name.
|
||||
-- If not available, call out the call sign and major flight number only.
|
||||
taskmanager:SetCallSignOptions(true,true)
|
||||
|
||||
-- Add accept- and reject-zones for detection
|
||||
taskmanager:AddAcceptZone(ZONE:New("AcceptZone"))
|
||||
taskmanager:AddRejectZone(ZONE:FindByName("RejectZone"))
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- Function to explode trucks in Kobuleti
|
||||
function killtrucks()
|
||||
local coord = GROUP:FindByName("Kobuleti Trucks"):GetCoordinate()
|
||||
GROUP:FindByName("Kobuleti Trucks"):Destroy(true)
|
||||
coord:Explosion(10000)
|
||||
coord:BigSmokeAndFireLarge()
|
||||
end
|
||||
|
||||
-- Timer for the trucks
|
||||
local kaboom = TIMER:New(killtrucks)
|
||||
kaboom:Start(900)
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 040 - Precision Bombing/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 040 - Precision Bombing/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,86 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 030 - Caucasus - Test Mission with precision (laser-guided) bombing
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu.
|
||||
--
|
||||
-- Join one of the precision bombing tasks. The A10
|
||||
-- will fly towards and circle over the target and start to lase it on
|
||||
-- code 1688. Use a GBU to neutralize the target.
|
||||
--
|
||||
-- Listen to AM 130 or 255 on SRS for messages.
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: August 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set up detection with grup names containing "Blue Recce", these will add targets to our controller. Here's it's a Reaper Drone
|
||||
taskmanager:SetupIntel("Blue Recce")
|
||||
-- Add a single Recce group name "Blue Humvee"
|
||||
taskmanager:AddAgent(GROUP:FindByName("Blue Humvee"))
|
||||
|
||||
-- Set the menu to be calles Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Add accept- and reject-zones for detection
|
||||
taskmanager:AddAcceptZone(ZONE:New("AcceptZone"))
|
||||
taskmanager:AddRejectZone(ZONE:FindByName("RejectZone"))
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- Set a blacklist for tasks, skip SEAD tasks in this case
|
||||
taskmanager:SetTaskBlackList({AUFTRAG.Type.SEAD})
|
||||
|
||||
-- Add a lasing unit, that will lase with code 1688. In our case that is a F10 Warthog.
|
||||
-- Create a FLIGHTGROUP object from the template and activate it
|
||||
local FlightGroup = FLIGHTGROUP:New("LasingUnit")
|
||||
FlightGroup:Activate()
|
||||
-- Enable laser guided bombing
|
||||
taskmanager:EnablePrecisionBombing(FlightGroup,1688)
|
||||
|
||||
-- Manually add a COORDINATE as a target - in this case this will generate bombing tasks
|
||||
taskmanager:AddTarget(GROUP:FindByName("Scout Coordinate"):GetCoordinate())
|
||||
|
||||
-- auto-add map markers when tasks are added
|
||||
function taskmanager:OnAfterTaskAdded(From,Event,To,Task)
|
||||
local task = Task -- Ops.PlayerTask#PLAYERTASK
|
||||
local coord = task.Target:GetCoordinate()
|
||||
local taskID = string.format("Task ID #%03d | Type: %s | Threat: %d",task.PlayerTaskNr,task.Type,task.Target:GetThreatLevelMax())
|
||||
local mark = MARKER:New(coord,taskID)
|
||||
mark:ReadWrite()
|
||||
mark:ToCoalition(taskmanager.Coalition)
|
||||
end
|
||||
|
||||
-- Function to explode trucks in Kobuleti
|
||||
function killtrucks()
|
||||
local coord = GROUP:FindByName("Kobuleti Trucks"):GetCoordinate()
|
||||
GROUP:FindByName("Kobuleti Trucks"):Destroy(true)
|
||||
coord:Explosion(10000)
|
||||
coord:BigSmokeAndFireLarge()
|
||||
end
|
||||
|
||||
-- Timer for the trucks
|
||||
local kaboom = TIMER:New(killtrucks)
|
||||
kaboom:Start(300)
|
||||
|
||||
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 041 - Static Targets/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 041 - Static Targets/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -0,0 +1,70 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 041 - Caucasus - Test Mission with static targets
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu.
|
||||
--
|
||||
-- Join one of bombing tasks.
|
||||
--
|
||||
-- Listen to AM 130 or 255 on SRS for messages. Change path below.
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: October 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set the menu to be called Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- Add a static as a target - here, a TV Tower
|
||||
local target = STATIC:FindByName("Radiotower")
|
||||
local newtask2 = PLAYERTASK:New(AUFTRAG.Type.BOMBING,target,true,3,"Bombing")
|
||||
-- Briefing
|
||||
newtask2:AddFreetext("Find and neutralize the TV tower!")
|
||||
-- Menu name of this task
|
||||
newtask2:SetMenuName("Neutralize TV Tower")
|
||||
|
||||
-- add custom success function - if the tower is dead or lost 80% of its lifepoints, we're done.
|
||||
newtask2:AddConditionSuccess(
|
||||
function(static)
|
||||
if (not static) or static:GetLife() < 1 or static:GetLife() < 0.2* static:GetLife0() then
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end, target
|
||||
)
|
||||
taskmanager:AddPlayerTaskToQueue(newtask2)
|
||||
|
||||
-- auto-add map markers when tasks are added
|
||||
function taskmanager:OnAfterTaskAdded(From,Event,To,Task)
|
||||
local task = Task -- Ops.PlayerTask#PLAYERTASK
|
||||
local coord = task.Target:GetCoordinate()
|
||||
local taskID = string.format("Task ID #%03d | Type: %s | Threat: %d",task.PlayerTaskNr,task.Type,task.Target:GetThreatLevelMax())
|
||||
local mark = MARKER:New(coord,taskID)
|
||||
mark:ReadWrite()
|
||||
mark:ToCoalition(taskmanager.Coalition)
|
||||
end
|
||||
|
||||
121576
Ops/PlayerTask/PlayerTask - 042 - Scenery Targets/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 042 - Scenery Targets/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,64 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 042 - Caucasus - Test Mission with scenery (map object) targets
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a plane slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu.
|
||||
--
|
||||
-- Join the bombing task "Bomb Bridge". Bridges are near Poti on the map.
|
||||
--
|
||||
-- Listen to AM 130 or 255 on SRS for messages. Change path below.
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: October 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set the menu to be called Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- create set of zones with the eight bridge component references
|
||||
local bridges = SET_ZONE:New():FilterPrefixes("Quai"):FilterOnce()
|
||||
-- build a SET_SCENERY containing the bridges' SCENERY objects
|
||||
local scenset = SET_SCENERY:New(bridges)
|
||||
-- create a task
|
||||
local scenerytask = PLAYERTASK:New(AUFTRAG.Type.BOMBING,scenset,true,2,"Bombing")
|
||||
-- Menu name of this task
|
||||
scenerytask:SetMenuName("Bomb bridge")
|
||||
-- Briefing
|
||||
scenerytask:AddFreetext("Find and destroy the bridges over the River Quai!")
|
||||
|
||||
taskmanager:AddPlayerTaskToQueue(scenerytask)
|
||||
|
||||
-- Blow up one bridge component
|
||||
local scenery = SCENERY:FindByZoneName("Quai-2")
|
||||
|
||||
function DestroyBridgeComponent()
|
||||
scenery:GetCoordinate():Explosion(500,2)
|
||||
end
|
||||
|
||||
local BridgeTimer=TIMER:New(DestroyBridgeComponent)
|
||||
BridgeTimer:Start(60)
|
||||
|
||||
|
||||
Binary file not shown.
121576
Ops/PlayerTask/PlayerTask - 043 - CTLD and CSAR/Moose.lua
Normal file
121576
Ops/PlayerTask/PlayerTask - 043 - CTLD and CSAR/Moose.lua
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,94 @@
|
||||
-------------------------------------------------------------------------
|
||||
-- PlayerTask 042 - Caucasus - Test Mission CTLD and CSAR tasks
|
||||
-------------------------------------------------------------------------
|
||||
-- Documentation
|
||||
--
|
||||
-- PLAYERTASK: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html
|
||||
--
|
||||
-------------------------------------------------------------------------
|
||||
-- Join the game master slot initially, and then a helicopter slot after a few
|
||||
-- seconds, to allow event capturing to start. Tasking is made available
|
||||
-- over the F10 Menu.
|
||||
--
|
||||
-- Listen to AM 130 or 255 on SRS for messages. Change path below.
|
||||
-------------------------------------------------------------------------
|
||||
-- Date: October 2022
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
-- Settings
|
||||
_SETTINGS:SetPlayerMenuOn()
|
||||
_SETTINGS:SetImperial()
|
||||
_SETTINGS:SetA2G_BR()
|
||||
|
||||
-- Set up A2G task controller for the blue side named "82nd Airborne"
|
||||
local taskmanager = PLAYERTASKCONTROLLER:New("82nd Airborne",coalition.side.BLUE,PLAYERTASKCONTROLLER.Type.A2G)
|
||||
|
||||
-- Set the menu to be called Eagle Eye
|
||||
taskmanager:SetMenuName("Eagle Eye")
|
||||
|
||||
-- Set up using SRS
|
||||
local hereSRSPath = "C:\\Program Files\\DCS-SimpleRadio-Standalone" -- location of the SRS installation folder, not the double \
|
||||
local hereSRSPort = 5002 -- SRS server listening to port 5002
|
||||
|
||||
-- Set controller to use radio 130 and 255 AM, female voice, GB english, use "Microsoft Hazel" as voice pack (must be installed on your machine), volume 70%.
|
||||
taskmanager:SetSRS({130,255},{radio.modulation.AM,radio.modulation.AM},hereSRSPath,"female","en-GB",hereSRSPort,"Microsoft Hazel Desktop",0.7)
|
||||
|
||||
-- Controller will announce itself after 60 seconds, on these two broadcast frequencies, when a new player joins
|
||||
taskmanager:SetSRSBroadcast({127.5,305},{radio.modulation.AM,radio.modulation.AM})
|
||||
|
||||
-- create a CTLD instance
|
||||
local myCTLD = CTLD:New(coalition.side.BLUE,{"Air America"},"82nd Transport Wing")
|
||||
myCTLD:AddCratesCargo("Humvee",{"Humvee"},CTLD_CARGO.Enum.VEHICLE,1,50)
|
||||
myCTLD:AddTroopsCargo("Platoon",{"Infantry6"},CTLD_CARGO.Enum.TROOPS,6,80)
|
||||
myCTLD:AddCTLDZoneFromAirbase(AIRBASE.Caucasus.Batumi,CTLD.CargoZoneType.LOAD,SMOKECOLOR.Red,true,false)
|
||||
myCTLD:AddCTLDZone("CTLD Drop Zone",CTLD.CargoZoneType.DROP,SMOKECOLOR.Green,true,true)
|
||||
myCTLD.forcehoverload = false
|
||||
myCTLD:__Start(2)
|
||||
|
||||
-- create a CSAR instance
|
||||
local myCSAR = CSAR:New(coalition.side.BLUE,"Downed Pilot","82nd Transport Wing")
|
||||
myCSAR.csarPrefix = { "Air America", "helicargo", "MEDEVAC"}
|
||||
myCSAR.pilotmustopendoors = true
|
||||
myCSAR:__Start(2)
|
||||
|
||||
-- create a CTLD task and assign it
|
||||
local newtask = PLAYERTASK:New(AUFTRAG.Type.CTLD,ZONE:FindByName("CTLD Drop Zone"),false,0,"Combat Transport")
|
||||
newtask:SetSubType("CratesBuild") -- this type name is the FSM event in CTLD we'll need to decide if the build was successful
|
||||
newtask:SetMenuName("Humvee Transport") -- name for the menu entry
|
||||
newtask:AddFreetext("Pick up crates for a Humvee and build a Humvee at the CTLD Drop Zone!")
|
||||
-- Assign
|
||||
taskmanager:AddPlayerTaskToQueue(newtask) -- add to task controller
|
||||
myCTLD:AddPlayerTask(newtask) -- add to CTLD instance
|
||||
|
||||
-- create two CSAR tasks and assign them - this will be an chained task
|
||||
local csartask = PLAYERTASK:New(AUFTRAG.Type.CSAR,ZONE:FindByName("CSAR Rescue Zone"),false,0,"Rescue Pilot")
|
||||
csartask:SetSubType("Boarded") -- this type name is the FSM event in CSAR we'll need to decide the build was successful
|
||||
csartask:SetMenuName("Rescue Pilot") -- name for the menu entry
|
||||
csartask:AddFreetext("Pick up the downed pilot 'Moose' from the CSAR Rescue Zone!") -- this will be the text in the Task Info
|
||||
csartask.CSARPilotName = "Moose" -- this is the pilot we want to save
|
||||
-- Assign
|
||||
taskmanager:AddPlayerTaskToQueue(csartask) -- add to task controller
|
||||
myCSAR:AddPlayerTask(csartask) -- add to CTLD instance
|
||||
|
||||
local csartask2 = PLAYERTASK:New(AUFTRAG.Type.CSAR,ZONE:FindByName("CSAR Drop Zone"),false,0,"Deliver Rescued Pilot")
|
||||
csartask2:SetSubType("Rescued") -- this type name is the FSM event in CSAR we'll need to decide the build was successful
|
||||
csartask2:SetMenuName("Deliver Rescued Pilot") -- name for the menu entry
|
||||
csartask2:AddFreetext("Deliver rescued pilots to nearest AFB, FARP or MASH!") -- this will be the text in the Task Info
|
||||
csartask2.CSARPilotName = "Moose" -- this is the pilot we want to save
|
||||
-- make this a follow-up task to csartask
|
||||
csartask:AddNextTaskAfterSuccess(csartask2) -- make csartask2 the task assigned to same pilots when csartask is successfully done
|
||||
-- assign
|
||||
taskmanager:AddPlayerTaskToQueue(csartask2) -- add to task controller
|
||||
myCSAR:AddPlayerTask(csartask2) -- add to CTLD instance
|
||||
|
||||
-- drop a pilot in the field after 1 minute
|
||||
local function Csars()
|
||||
myCSAR:SpawnCSARAtZone("CSAR Rescue Zone",coalition.side.BLUE,"Moose",true,false,"Moose",nil,true)
|
||||
end
|
||||
|
||||
local timer=TIMER:New(Csars)
|
||||
timer:Start(60)
|
||||
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user