Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // CUP Dynamic Ambient Music script by JackFighter
- // Definition of tracks
- actionAmbient =
- [
- "CUP_A2_Insertion",
- ["CUP_A2_Reinforcements", 24],
- ["CUP_A2_Warpath", 30],
- "CUP_A2_Harvest_Red",
- "CUP_A2_Movement_To_Contact",
- "CUP_A2_Logistics",
- "CUP_A2_Large_Scale_Assault",
- ["CUP_A2_The_Movement", 22],
- "CUP_A2_Close_Quarter_Combat",
- "CUP_A2_Morning_Sortie",
- ["CUP_A2_Marauder_Song", 23],
- "CUP_A2_Indian_Summer",
- "CUP_A2_Electronic_Warfare",
- "CUP_A2_Khe_Sanh_Riff",
- "CUP_A2_Manhattan",
- "CUP_A2EWEW_All_Helll_Breaks_Loose",
- "CUP_A2EWEW_ToWar",
- "CUP_A2OA_Arrowhead",
- "CUP_A2OA_Arrowhead_D",
- "CUP_A2OA_Good_Morning_TStan",
- "CUP_A2OA_Airborne_D",
- "CUP_A2OA_Zargabad_Market",
- "CUP_A2OA_Coltan_Blues",
- "CUP_A2OA_Coltan_Blues_D",
- "CUP_A2OA_Dancing_Scimitar",
- "CUP_A2OA_Death_From_Above",
- "CUP_A2OA_Night_Visions",
- "CUP_A2OA_Crude_Oil",
- "CUP_A2OA_Iron_Mountain_D1",
- "CUP_A2OA_Iron_Mountain_D2"
- ];
- dayCalmAmbient =
- [
- "CUP_A2_Dead_Forest",
- "CUP_A2_Abandoned_Battlespace",
- "CUP_A2_Last_Men_Standing",
- "CUP_A2_Sharping_Knives",
- "CUP_A2_Valentine",
- "CUP_A2_Badlands",
- "CUP_A2_Ghost_Waltz",
- "CUP_A2_Rise_Of_The_Fallen",
- "CUP_A2_Vague_Shapes",
- "CUP_A2_Reforger",
- "CUP_A2OA_Arrival",
- "CUP_A2OA_Airborne",
- "CUP_A2OA_Nightlife",
- "CUP_A2OA_Revolver_Jam",
- "CUP_A2OA_Iron_Mountain",
- "CUP_A2OA_Iron_Mountain_V",
- "CUP_A2OA_Concrete_Cell",
- "CUP_A2PMC_Ghosttown",
- "CUP_A2PMC_NoMansLand"
- ];
- nightCalmAmbient =
- [
- "CUP_A2EWEW_DEFCON",
- "CUP_A2EWEW_Fallout",
- "CUP_A2EWEW_MAD",
- "CUP_A2EWEW_Sky_Net",
- "CUP_A2EWEW_Wasteland"
- ];
- //Script itself
- detectionBoolean = false;
- musicBooleanStop = false;
- addMusicEventHandler ["MusicStop", {musicBooleanStop = true}];
- [] spawn {
- scopeName "checkingLoop",
- while {true} do
- {
- detectionBoolean = true;
- _closestEnemy = player findNearestEnemy player;
- _distanceToClosestEnemy = player distance2D _closestEnemy;
- _enemyAwareness = opfor knowsAbout player; // <----------------------------------could be blufor, opfor or independent
- if (_enemyAwareness > 1.495 and _distanceToClosestEnemy < 650) then {detectionBoolean = true;} else {detectionBoolean = false;};
- sleep 0.5;
- };
- };
- [] spawn {
- scopeName "ambientLoop",
- while {true} do {
- _randomCalmDay = selectRandom dayCalmAmbient;
- _randomCalmNight = selectRandom nightCalmAmbient;
- _randomAction = selectRandom actionAmbient;
- 3 fadeMusic 1;
- if (dayTime < 19) then {playMusic _randomCalmDay;} else {playMusic _randomCalmNight;};
- waitUntil {detectionBoolean isEqualTo true or musicBooleanStop isEqualTo true};
- if (musicBooleanStop isEqualTo true) then {musicBooleanStop = false};
- if (detectionBoolean isEqualTo true) then {
- scopeName "actionLoop",
- while {true} do {
- 3 fadeMusic 1;
- playMusic _randomAction;
- sleep 4;
- waitUntil {detectionBoolean isEqualTo false or musicBooleanStop isEqualTo true};
- if (musicBooleanStop isEqualTo true) then {musicBooleanStop = false};
- sleep 0.5;
- 3 fadeMusic 0;
- sleep 3;
- _randomAction = selectRandom actionAmbient;
- if (detectionBoolean isEqualTo false) then {breakOut "ActionLoop",};
- };
- sleep 0.5;
- };
- sleep 0.5;
- };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement