71 lines
2.0 KiB
Plaintext
71 lines
2.0 KiB
Plaintext
# ****************************************************************************
|
|
# CUI
|
|
#
|
|
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
|
#
|
|
# The use, dissemination or disclosure of data in this file is subject to
|
|
# limitation or restriction. See accompanying README and LICENSE for details.
|
|
# ****************************************************************************
|
|
# * * ************************************** * *
|
|
# * ****** Demonstration input file ****** *
|
|
# * ****** UNCLASSIFIED ****** *
|
|
# * * ************************************** * *
|
|
|
|
include_once weapons/sam/large_sam.txt
|
|
|
|
platform_type LARGE_SAM_LAUNCHER WSF_PLATFORM
|
|
icon SA-10_Launcher
|
|
radar_signature VEHICLE_RADAR_SIGNATURE
|
|
|
|
comm cmdr_net RED_DATALINK
|
|
network_name <local:slave>
|
|
internal_link data_mgr
|
|
internal_link task_mgr
|
|
end_comm
|
|
mover WSF_GROUND_MOVER
|
|
end_mover
|
|
|
|
processor data_mgr WSF_TRACK_PROCESSOR
|
|
purge_interval 60 sec
|
|
end_processor
|
|
|
|
processor task_mgr WSF_TASK_PROCESSOR
|
|
script void on_task_assign(WsfTask aTask, WsfTrack aTrack)
|
|
|
|
if (aTask.TaskType() == "ENGAGE")
|
|
{
|
|
WsfWeapon missile = PLATFORM.Weapon("sam");
|
|
missile.Fire(aTrack);
|
|
writeln("fire,remain weapon:", missile.QuantityRemaining());
|
|
}
|
|
if (aTask.TaskType() == "MOVE")
|
|
{
|
|
if(!aTrack.WithinZoneOf(PLATFORM,"battalion_sector"))
|
|
{
|
|
double relativeAzimuthOf=
|
|
PLATFORM.RelativeAzimuthOf(aTrack.CurrentLocation());
|
|
PLATFORM.TurnToRelativeHeading(relativeAzimuthOf);
|
|
PLATFORM.GoToSpeed(16);#m/s
|
|
|
|
}
|
|
}
|
|
if (aTask.TaskType() == "WAIT")
|
|
{
|
|
PLATFORM.GoToSpeed(0);#m/s
|
|
}
|
|
|
|
|
|
end_script
|
|
|
|
|
|
end_processor
|
|
|
|
weapon sam LARGE_SAM
|
|
quantity 10
|
|
end_weapon
|
|
|
|
zone battalion_sector
|
|
circular maximum_radius 20 nm
|
|
end_zone
|
|
end_platform_type
|