diff --git a/mods/cnc/maps/gdi02/gdi02.lua b/mods/cnc/maps/gdi02/gdi02.lua index 5b3b6fa14d..fe37e3ab53 100644 --- a/mods/cnc/maps/gdi02/gdi02.lua +++ b/mods/cnc/maps/gdi02/gdi02.lua @@ -56,10 +56,18 @@ NodAttack = function() end end +initialSong = "befeared" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() player = Player.GetPlayer("GDI") enemy = Player.GetPlayer("Nod") + PlayMusic() + Trigger.OnObjectiveAdded(player, function(p, id) Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective") end) diff --git a/mods/cnc/maps/gdi03/gdi03.lua b/mods/cnc/maps/gdi03/gdi03.lua index 3d470f19bc..4556d615db 100644 --- a/mods/cnc/maps/gdi03/gdi03.lua +++ b/mods/cnc/maps/gdi03/gdi03.lua @@ -45,10 +45,18 @@ SendReinforcements = function() Media.PlaySpeechNotification(player, "Reinforce") end +initialSong = "crep226m" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() player = Player.GetPlayer("GDI") enemy = Player.GetPlayer("Nod") + PlayMusic() + Trigger.OnObjectiveAdded(player, function(p, id) Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective") end) diff --git a/mods/cnc/maps/gdi04a/gdi04a.lua b/mods/cnc/maps/gdi04a/gdi04a.lua index 795380b4a1..9b56e3a316 100644 --- a/mods/cnc/maps/gdi04a/gdi04a.lua +++ b/mods/cnc/maps/gdi04a/gdi04a.lua @@ -103,12 +103,20 @@ SetupWorld = function() Trigger.OnRemovedFromWorld(crate, function() gdi.MarkCompletedObjective(gdiObjective) end) end +initialSong = "fist226m" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() gdi = Player.GetPlayer("GDI") nod = Player.GetPlayer("Nod") SetupWorld() + PlayMusic() + Trigger.OnObjectiveAdded(gdi, function(p, id) Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective") end) diff --git a/mods/cnc/maps/gdi04b/gdi04b.lua b/mods/cnc/maps/gdi04b/gdi04b.lua index d7bc55a270..070ce89fbe 100644 --- a/mods/cnc/maps/gdi04b/gdi04b.lua +++ b/mods/cnc/maps/gdi04b/gdi04b.lua @@ -110,6 +110,12 @@ SetupWorld = function() Trigger.OnRemovedFromWorld(crate, function() gdi.MarkCompletedObjective(gdiObjective) end) end +initialSong = "fist226m" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() gdi = Player.GetPlayer("GDI") nod = Player.GetPlayer("Nod") @@ -138,6 +144,8 @@ WorldLoaded = function() SetupWorld() + PlayMusic() + bhndTrigger = false Trigger.OnExitedFootprint(BhndTrigger, function(a, id) if not bhndTrigger and a.Owner == gdi then diff --git a/mods/cnc/maps/gdi04b/map.yaml b/mods/cnc/maps/gdi04b/map.yaml index a3a22e5f1c..abb91362a3 100644 --- a/mods/cnc/maps/gdi04b/map.yaml +++ b/mods/cnc/maps/gdi04b/map.yaml @@ -70,31 +70,31 @@ Players: Actors: Actor0: sbag Location: 10,18 - Owner: Neutral + Owner: Nod Actor1: sbag Location: 9,18 - Owner: Neutral + Owner: Nod Actor2: sbag Location: 8,18 - Owner: Neutral + Owner: Nod Actor3: sbag Location: 7,18 - Owner: Neutral + Owner: Nod Actor4: sbag Location: 7,17 - Owner: Neutral + Owner: Nod Actor5: sbag Location: 6,17 - Owner: Neutral + Owner: Nod Actor6: sbag Location: 6,16 - Owner: Neutral + Owner: Nod Actor7: sbag Location: 6,15 - Owner: Neutral + Owner: Nod Actor8: sbag Location: 6,14 - Owner: Neutral + Owner: Nod Actor9: cycl Location: 15,13 Owner: Neutral @@ -103,7 +103,7 @@ Actors: Owner: Neutral Actor11: sbag Location: 6,13 - Owner: Neutral + Owner: Nod Actor12: cycl Location: 15,12 Owner: Neutral @@ -115,37 +115,37 @@ Actors: Owner: Neutral Actor15: sbag Location: 6,12 - Owner: Neutral + Owner: Nod Actor16: sbag Location: 15,11 - Owner: Neutral + Owner: Nod Actor17: sbag Location: 14,11 - Owner: Neutral + Owner: Nod Actor18: sbag Location: 13,11 - Owner: Neutral + Owner: Nod Actor19: sbag Location: 12,11 - Owner: Neutral + Owner: Nod Actor20: sbag Location: 11,11 - Owner: Neutral + Owner: Nod Actor21: sbag Location: 10,11 - Owner: Neutral + Owner: Nod Actor22: sbag Location: 9,11 - Owner: Neutral + Owner: Nod Actor23: sbag Location: 8,11 - Owner: Neutral + Owner: Nod Actor24: sbag Location: 7,11 - Owner: Neutral + Owner: Nod Actor25: sbag Location: 6,11 - Owner: Neutral + Owner: Nod Actor26: t05 Location: 18,42 Owner: Neutral diff --git a/mods/cnc/maps/gdi04c/gdi04c.lua b/mods/cnc/maps/gdi04c/gdi04c.lua index 7d9defda4d..da1622be7a 100644 --- a/mods/cnc/maps/gdi04c/gdi04c.lua +++ b/mods/cnc/maps/gdi04c/gdi04c.lua @@ -61,10 +61,18 @@ SendGDIReinforcements = function() end) end +initialSong = "ind" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() player = Player.GetPlayer("GDI") nod = Player.GetPlayer("Nod") + PlayMusic() + Trigger.OnObjectiveAdded(player, function(p, id) Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective") end) diff --git a/mods/cnc/maps/gdi05a/gdi05a.lua b/mods/cnc/maps/gdi05a/gdi05a.lua index 1f06579c6e..b184251b9f 100644 --- a/mods/cnc/maps/gdi05a/gdi05a.lua +++ b/mods/cnc/maps/gdi05a/gdi05a.lua @@ -143,6 +143,7 @@ SetupWorld = function() unit.Destroy() end) + Media.PlaySpeechNotification(gdi, "Reinforce") Reinforcements.Reinforce(gdi, GdiTanks, { GdiTankEntry.Location, GdiTankRallyPoint.Location }, DateTime.Seconds(1), function(actor) actor.Stance = "Defend" end) Reinforcements.Reinforce(gdi, GdiApc, { GdiApcEntry.Location, GdiApcRallyPoint.Location }, DateTime.Seconds(1), function(actor) actor.Stance = "Defend" end) Reinforcements.Reinforce(gdi, GdiInfantry, { GdiInfantryEntry.Location, GdiInfantryRallyPoint.Location }, 15, function(actor) actor.Stance = "Defend" end) @@ -182,6 +183,12 @@ SetupWorld = function() Grd3Action() end +initialSong = "rain" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() gdiBase = Player.GetPlayer("AbandonedBase") gdi = Player.GetPlayer("GDI") @@ -213,7 +220,8 @@ WorldLoaded = function() Camera.Position = GdiTankRallyPoint.CenterPosition - Media.PlayMusic() + PlayMusic() + end Tick = function() diff --git a/mods/cnc/maps/gdi05b/gdi05b.lua b/mods/cnc/maps/gdi05b/gdi05b.lua index 53e5aa804a..8926f6bd21 100644 --- a/mods/cnc/maps/gdi05b/gdi05b.lua +++ b/mods/cnc/maps/gdi05b/gdi05b.lua @@ -108,6 +108,7 @@ StartProduction = function(type) end InsertGdiUnits = function() + Media.PlaySpeechNotification(gdi, "Reinforce") Reinforcements.Reinforce(gdi, GdiUnits, { UnitsEntry.Location, UnitsRally.Location }, 15) end @@ -117,6 +118,12 @@ IdleHunt = function(unit) end end +initialSong = "rain" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() gdi = Player.GetPlayer("GDI") gdiBase = Player.GetPlayer("AbandonedBase") @@ -133,11 +140,11 @@ WorldLoaded = function() end) Trigger.OnPlayerWon(gdi, function() - Media.PlaySpeechNotification(nod, "Win") + Media.PlaySpeechNotification(gdi, "Win") end) Trigger.OnPlayerLost(gdi, function() - Media.PlaySpeechNotification(nod, "Lose") + Media.PlaySpeechNotification(gdi, "Lose") end) Utils.Do(Map.NamedActors, function(actor) @@ -178,6 +185,8 @@ WorldLoaded = function() end) Camera.Position = UnitsRally.CenterPosition + + PlayMusic() InsertGdiUnits() end diff --git a/mods/cnc/maps/gdi05b/map.yaml b/mods/cnc/maps/gdi05b/map.yaml index e36a2b6c58..d80299897b 100644 --- a/mods/cnc/maps/gdi05b/map.yaml +++ b/mods/cnc/maps/gdi05b/map.yaml @@ -70,178 +70,178 @@ Players: Actors: Actor0: sbag Location: 38,59 - Owner: Neutral + Owner: GDI Actor1: sbag Location: 37,59 - Owner: Neutral + Owner: GDI Actor2: sbag Location: 36,59 - Owner: Neutral + Owner: GDI Actor3: sbag Location: 35,59 - Owner: Neutral + Owner: GDI Actor4: sbag Location: 34,59 - Owner: Neutral + Owner: GDI Actor5: sbag Location: 33,59 - Owner: Neutral + Owner: GDI Actor6: sbag Location: 32,59 - Owner: Neutral + Owner: GDI Actor7: sbag Location: 31,59 - Owner: Neutral + Owner: GDI Actor8: sbag Location: 30,59 - Owner: Neutral + Owner: GDI Actor9: sbag Location: 29,59 - Owner: Neutral + Owner: GDI Actor10: sbag Location: 28,59 - Owner: Neutral + Owner: GDI Actor11: sbag Location: 27,59 - Owner: Neutral + Owner: GDI Actor12: sbag Location: 26,59 - Owner: Neutral + Owner: GDI Actor13: sbag Location: 25,59 - Owner: Neutral + Owner: GDI Actor14: sbag Location: 25,58 - Owner: Neutral + Owner: GDI Actor15: sbag Location: 25,57 - Owner: Neutral + Owner: GDI Actor16: sbag Location: 24,57 - Owner: Neutral + Owner: GDI Actor17: sbag Location: 38,54 - Owner: Neutral + Owner: GDI Actor18: sbag Location: 25,54 - Owner: Neutral + Owner: GDI Actor19: sbag Location: 24,54 - Owner: Neutral + Owner: GDI Actor20: sbag Location: 38,53 - Owner: Neutral + Owner: GDI Actor21: sbag Location: 25,53 - Owner: Neutral + Owner: GDI Actor22: sbag Location: 25,51 - Owner: Neutral + Owner: GDI Actor23: sbag Location: 38,50 - Owner: Neutral + Owner: GDI Actor24: sbag Location: 37,50 - Owner: Neutral + Owner: GDI Actor25: sbag Location: 36,50 - Owner: Neutral + Owner: GDI Actor26: sbag Location: 35,50 - Owner: Neutral + Owner: GDI Actor27: sbag Location: 34,50 - Owner: Neutral + Owner: GDI Actor28: sbag Location: 33,50 - Owner: Neutral + Owner: GDI Actor29: sbag Location: 32,50 - Owner: Neutral + Owner: GDI Actor30: sbag Location: 31,50 - Owner: Neutral + Owner: GDI Actor31: sbag Location: 30,50 - Owner: Neutral + Owner: GDI Actor32: sbag Location: 29,50 - Owner: Neutral + Owner: GDI Actor33: sbag Location: 27,50 - Owner: Neutral + Owner: GDI Actor34: sbag Location: 26,50 - Owner: Neutral + Owner: GDI Actor35: sbag Location: 25,50 - Owner: Neutral + Owner: GDI Actor36: sbag Location: 54,26 - Owner: Neutral + Owner: Nod Actor37: sbag Location: 53,26 - Owner: Neutral + Owner: Nod Actor38: sbag Location: 52,26 - Owner: Neutral + Owner: Nod Actor39: sbag Location: 51,26 - Owner: Neutral + Owner: Nod Actor40: sbag Location: 50,26 - Owner: Neutral + Owner: Nod Actor41: sbag Location: 45,26 - Owner: Neutral + Owner: Nod Actor42: sbag Location: 44,26 - Owner: Neutral + Owner: Nod Actor43: sbag Location: 43,26 - Owner: Neutral + Owner: Nod Actor44: sbag Location: 42,26 - Owner: Neutral + Owner: Nod Actor45: sbag Location: 41,26 - Owner: Neutral + Owner: Nod Actor46: sbag Location: 40,26 - Owner: Neutral + Owner: Nod Actor47: sbag Location: 39,26 - Owner: Neutral + Owner: Nod Actor48: sbag Location: 38,26 - Owner: Neutral + Owner: Nod Actor49: sbag Location: 37,26 - Owner: Neutral + Owner: Nod Actor50: sbag Location: 54,25 - Owner: Neutral + Owner: Nod Actor51: sbag Location: 51,25 - Owner: Neutral + Owner: Nod Actor52: sbag Location: 50,25 - Owner: Neutral + Owner: Nod Actor53: sbag Location: 45,25 - Owner: Neutral + Owner: Nod Actor54: sbag Location: 44,25 - Owner: Neutral + Owner: Nod Actor55: sbag Location: 37,25 - Owner: Neutral + Owner: Nod Actor56: sbag Location: 37,24 - Owner: Neutral + Owner: Nod Actor57: sbag Location: 37,23 - Owner: Neutral + Owner: Nod Actor58: t01 Location: 22,51 Owner: Neutral diff --git a/mods/cnc/maps/nod01/nod01.lua b/mods/cnc/maps/nod01/nod01.lua index 9476e36509..3603a1b912 100644 --- a/mods/cnc/maps/nod01/nod01.lua +++ b/mods/cnc/maps/nod01/nod01.lua @@ -31,6 +31,12 @@ SendLastInfantryReinforcements = function() end) end +initialSong = "nomercy" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() nod = Player.GetPlayer("Nod") gdi = Player.GetPlayer("GDI") @@ -68,6 +74,8 @@ WorldLoaded = function() Camera.Position = StartRallyPoint.CenterPosition + PlayMusic() + SendInitialForces() Trigger.AfterDelay(DateTime.Seconds(30), SendFirstInfantryReinforcements) Trigger.AfterDelay(DateTime.Seconds(60), SendSecondInfantryReinforcements) diff --git a/mods/cnc/maps/nod02a/nod02a.lua b/mods/cnc/maps/nod02a/nod02a.lua index c5a6e68be9..00647f8428 100644 --- a/mods/cnc/maps/nod02a/nod02a.lua +++ b/mods/cnc/maps/nod02a/nod02a.lua @@ -42,6 +42,7 @@ getActors = function(owner, units) end InsertNodUnits = function() + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodUnits, { UnitsEntry.Location, UnitsRally.Location }, 15) Reinforcements.Reinforce(Nod, { "mcv" }, { McvEntry.Location, McvRally.Location }) end @@ -158,6 +159,12 @@ Pat1Movement = function(unit) IdleHunt(unit) end +initialSong = "ind2" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -215,6 +222,8 @@ WorldLoaded = function() end end) + PlayMusic() + Trigger.AfterDelay(0, getStartUnits) InsertNodUnits() end diff --git a/mods/cnc/maps/nod02b/nod02b.lua b/mods/cnc/maps/nod02b/nod02b.lua index 9851b91d69..f0135e3a41 100644 --- a/mods/cnc/maps/nod02b/nod02b.lua +++ b/mods/cnc/maps/nod02b/nod02b.lua @@ -96,6 +96,12 @@ Gdi3Movement = function(unit) IdleHunt(unit) end +initialSong = "ind2" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -134,6 +140,9 @@ WorldLoaded = function() Trigger.AfterDelay(0, getStartUnits) Harvester.FindResources() + + PlayMusic() + InsertNodUnits() end @@ -230,6 +239,7 @@ getStartUnits = function() end InsertNodUnits = function() + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodUnits, { UnitsEntry.Location, UnitsRally.Location }, 15) Reinforcements.Reinforce(Nod, { "mcv" }, { McvEntry.Location, McvRally.Location }) end diff --git a/mods/cnc/maps/nod03a/nod03a.lua b/mods/cnc/maps/nod03a/nod03a.lua index 88df278a13..9c10d3b1c9 100644 --- a/mods/cnc/maps/nod03a/nod03a.lua +++ b/mods/cnc/maps/nod03a/nod03a.lua @@ -9,12 +9,19 @@ SendAttackWave = function(units, spawnPoint) end InsertNodUnits = function() + Media.PlaySpeechNotification(player, "Reinforce") Reinforcements.Reinforce(player, NodUnits, { NodEntry.Location, NodRallyPoint.Location }) Trigger.AfterDelay(DateTime.Seconds(9), function() Reinforcements.Reinforce(player, { "mcv" }, { NodEntry.Location, PlayerBase.Location }) end) end +initialSong = "chrg226m" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() player = Player.GetPlayer("Nod") enemy = Player.GetPlayer("GDI") @@ -51,6 +58,8 @@ WorldLoaded = function() player.MarkFailedObjective(nodObjective1) end) + PlayMusic() + InsertNodUnits() Trigger.AfterDelay(DateTime.Seconds(20), function() SendAttackWave(FirstAttackWave, AttackWaveSpawnA.Location) end) Trigger.AfterDelay(DateTime.Seconds(50), function() SendAttackWave(SecondThirdAttackWave, AttackWaveSpawnB.Location) end) diff --git a/mods/cnc/maps/nod03b/nod03b.lua b/mods/cnc/maps/nod03b/nod03b.lua index bd1ddc3443..3e1c922d26 100644 --- a/mods/cnc/maps/nod03b/nod03b.lua +++ b/mods/cnc/maps/nod03b/nod03b.lua @@ -24,13 +24,21 @@ SecondAttackWave = function(soldier) end InsertNodUnits = function() + Media.PlaySpeechNotification(player, "Reinforce") Reinforcements.Reinforce(player, { "mcv" }, { McvEntry.Location, McvDeploy.Location }) Reinforcements.Reinforce(player, NodUnits, { NodEntry.Location, NodRallypoint.Location }) Trigger.AfterDelay(DateTime.Seconds(15), function() + Media.PlaySpeechNotification(player, "Reinforce") Reinforcements.Reinforce(player, Engineers, { McvEntry.Location, PlayerBase.Location }) end) end +initialSong = "chrg226m" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() player = Player.GetPlayer("Nod") enemy = Player.GetPlayer("GDI") @@ -64,6 +72,8 @@ WorldLoaded = function() end) end) + PlayMusic() + InsertNodUnits() Trigger.AfterDelay(DateTime.Seconds(40), function() SendAttackWave(FirstAttackWaveUnits, FirstAttackWave) end) Trigger.AfterDelay(DateTime.Seconds(80), function() SendAttackWave(SecondAttackWaveUnits, SecondAttackWave) end) diff --git a/mods/cnc/maps/nod04a/nod04a.lua b/mods/cnc/maps/nod04a/nod04a.lua index 1f7419d2f1..e0a084c2fb 100644 --- a/mods/cnc/maps/nod04a/nod04a.lua +++ b/mods/cnc/maps/nod04a/nod04a.lua @@ -145,6 +145,7 @@ Atk4Movement = function(unit) end InsertNodUnits = function() + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodUnitsBuggy, { UnitsEntryBuggy.Location, UnitsRallyBuggy.Location }, 11) Reinforcements.Reinforce(Nod, NodUnitsBikes, { UnitsEntryBikes.Location, UnitsRallyBikes.Location }, 15) Reinforcements.Reinforce(Nod, NodUnitsGunner, { UnitsEntryGunner.Location, UnitsRallyGunner.Location }, 15) @@ -170,6 +171,12 @@ CreateCivilians = function(actor, discoverer) end) end +initialSong = "valkyrie" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() NodSupporter = Player.GetPlayer("NodSupporter") Nod = Player.GetPlayer("Nod") @@ -283,7 +290,10 @@ WorldLoaded = function() GDIObjective = GDI.AddPrimaryObjective("Eliminate all Nod forces in the area.") NodObjective1 = Nod.AddPrimaryObjective("Kill all civilian GDI supporters.") + PlayMusic() + InsertNodUnits() + Camera.Position = waypoint6.CenterPosition end Tick = function() diff --git a/mods/cnc/maps/nod04b/nod04b.lua b/mods/cnc/maps/nod04b/nod04b.lua index 36f17e0875..b1b2f8d557 100644 --- a/mods/cnc/maps/nod04b/nod04b.lua +++ b/mods/cnc/maps/nod04b/nod04b.lua @@ -74,6 +74,12 @@ InsertNodUnits = function() Reinforcements.ReinforceWithTransport(Nod, 'tran', NodUnitsGunner, { EntryPointGunner.Location, RallyPointGunner.Location }, { EntryPointGunner.Location }, nil, nil) end +initialSong = "warfare" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -141,6 +147,8 @@ WorldLoaded = function() NodObjective1 = Nod.AddPrimaryObjective("Destroy the village and kill all civilians.") NodObjective2 = Nod.AddSecondaryObjective("Kill all GDI units in the area.") + PlayMusic() + InsertNodUnits() end diff --git a/mods/cnc/maps/nod05/map.yaml b/mods/cnc/maps/nod05/map.yaml index 0a9ed82d2b..d30094141a 100644 --- a/mods/cnc/maps/nod05/map.yaml +++ b/mods/cnc/maps/nod05/map.yaml @@ -65,94 +65,94 @@ Players: Actors: Actor0: sbag Location: 30,22 - Owner: Neutral + Owner: GDI Actor1: sbag Location: 29,22 - Owner: Neutral + Owner: GDI Actor2: sbag Location: 28,22 - Owner: Neutral + Owner: GDI Actor3: sbag Location: 23,22 - Owner: Neutral + Owner: GDI Actor4: sbag Location: 22,22 - Owner: Neutral + Owner: GDI Actor5: sbag Location: 21,22 - Owner: Neutral + Owner: GDI Actor6: sbag Location: 20,22 - Owner: Neutral + Owner: GDI Actor7: sbag Location: 19,22 - Owner: Neutral + Owner: GDI Actor8: sbag Location: 30,21 - Owner: Neutral + Owner: GDI Actor9: sbag Location: 19,21 - Owner: Neutral + Owner: GDI Actor10: sbag Location: 18,21 - Owner: Neutral + Owner: GDI Actor11: sbag Location: 30,20 - Owner: Neutral + Owner: GDI Actor12: sbag Location: 30,19 - Owner: Neutral + Owner: GDI Actor13: sbag Location: 30,18 - Owner: Neutral + Owner: GDI Actor14: sbag Location: 30,17 - Owner: Neutral + Owner: GDI Actor15: sbag Location: 16,15 - Owner: Neutral + Owner: GDI Actor16: sbag Location: 16,14 - Owner: Neutral + Owner: GDI Actor17: sbag Location: 28,13 - Owner: Neutral + Owner: GDI Actor18: sbag Location: 27,13 - Owner: Neutral + Owner: GDI Actor19: sbag Location: 26,13 - Owner: Neutral + Owner: GDI Actor20: sbag Location: 25,13 - Owner: Neutral + Owner: GDI Actor21: sbag Location: 24,13 - Owner: Neutral + Owner: GDI Actor22: sbag Location: 23,13 - Owner: Neutral + Owner: GDI Actor23: sbag Location: 22,13 - Owner: Neutral + Owner: GDI Actor24: sbag Location: 21,13 - Owner: Neutral + Owner: GDI Actor25: sbag Location: 20,13 - Owner: Neutral + Owner: GDI Actor26: sbag Location: 19,13 - Owner: Neutral + Owner: GDI Actor27: sbag Location: 18,13 - Owner: Neutral + Owner: GDI Actor28: sbag Location: 17,13 - Owner: Neutral + Owner: GDI Actor29: sbag Location: 16,13 - Owner: Neutral + Owner: GDI Actor30: t18 Location: 52,25 Owner: Neutral diff --git a/mods/cnc/maps/nod05/nod05.lua b/mods/cnc/maps/nod05/nod05.lua index c3fbd3be52..cf62fb655c 100644 --- a/mods/cnc/maps/nod05/nod05.lua +++ b/mods/cnc/maps/nod05/nod05.lua @@ -154,6 +154,7 @@ end InsertNodUnits = function() Camera.Position = UnitsEntry.CenterPosition + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodUnitsVehicle, { UnitsEntry.Location, UnitsRallyVehicle.Location }, 1) Reinforcements.Reinforce(Nod, NodUnitsRocket, { UnitsEntry.Location, UnitsRallyRocket.Location }, 50) Reinforcements.Reinforce(Nod, NodUnitsGunner, { UnitsEntry.Location, UnitsRallyGunner.Location }, 50) @@ -162,6 +163,12 @@ InsertNodUnits = function() end) end +initialSong = "airstrik" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -240,6 +247,9 @@ WorldLoaded = function() end) Trigger.AfterDelay(0, getStartUnits) + + PlayMusic() + end Tick = function() diff --git a/mods/cnc/maps/nod06a/map.yaml b/mods/cnc/maps/nod06a/map.yaml index 19bd7de5ce..0975a13452 100644 --- a/mods/cnc/maps/nod06a/map.yaml +++ b/mods/cnc/maps/nod06a/map.yaml @@ -713,6 +713,8 @@ Rules: FLARE: Tooltip: ShowOwnerRow: false + TRAN: + -Selectable: Sequences: diff --git a/mods/cnc/maps/nod06a/nod06a.lua b/mods/cnc/maps/nod06a/nod06a.lua index ac5e96c33f..4df5cf0783 100644 --- a/mods/cnc/maps/nod06a/nod06a.lua +++ b/mods/cnc/maps/nod06a/nod06a.lua @@ -113,10 +113,17 @@ end InsertNodUnits = function() Camera.Position = UnitsRallyRight.CenterPosition + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodStartUnitsLeft, { UnitsEntryLeft.Location, UnitsRallyLeft.Location }, 15) Reinforcements.Reinforce(Nod, NodStartUnitsRight, { UnitsEntryRight.Location, UnitsRallyRight.Location }, 15) end +initialSong = "rout" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -146,6 +153,8 @@ WorldLoaded = function() GDIObjective = GDI.AddPrimaryObjective("Stop the Nod taskforce from escaping with the detonator.") + PlayMusic() + InsertNodUnits() Trigger.AfterDelay(Grd1TriggerFunctionTime, Grd1TriggerFunction) @@ -166,7 +175,8 @@ WorldLoaded = function() Trigger.OnEnteredFootprint(Chn3CellTriggerActivator, function(a, id) if a.Owner == Nod then - Reinforcements.Reinforce(Nod, { 'tran' }, { ChnEntry.Location, waypoint17.Location }, 11) + Media.PlaySpeechNotification(Nod, "Reinforce") + Reinforcements.ReinforceWithTransport(Nod, 'tran', nil, { ChnEntry.Location, waypoint17.Location }, nil, nil, nil) Trigger.RemoveFootprintTrigger(id) end end) diff --git a/mods/cnc/maps/nod06b/map.yaml b/mods/cnc/maps/nod06b/map.yaml index a4578ab4a5..67d197cce7 100644 --- a/mods/cnc/maps/nod06b/map.yaml +++ b/mods/cnc/maps/nod06b/map.yaml @@ -651,6 +651,8 @@ Rules: FLARE: Tooltip: ShowOwnerRow: false + TRAN: + -Selectable: Sequences: diff --git a/mods/cnc/maps/nod06b/nod06b.lua b/mods/cnc/maps/nod06b/nod06b.lua index a30f78cba0..11036e8459 100644 --- a/mods/cnc/maps/nod06b/nod06b.lua +++ b/mods/cnc/maps/nod06b/nod06b.lua @@ -94,6 +94,11 @@ InsertNodUnits = function() Reinforcements.Reinforce(Nod, NodUnitsRocket, { UnitsEntryRocket.Location, UnitsRallyRocket.Location }, 25) end +initialSong = "rout" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end WorldLoaded = function() GDI = Player.GetPlayer("GDI") @@ -122,6 +127,8 @@ WorldLoaded = function() NodObjective1 = Nod.AddPrimaryObjective("Steal the GDI nuclear detonator.") GDIObjective = GDI.AddPrimaryObjective("Stop the Nod taskforce from escaping with the detonator.") + PlayMusic() + InsertNodUnits() Trigger.OnEnteredFootprint(HuntCellTriggerActivator, function(a, id) @@ -162,7 +169,8 @@ WorldLoaded = function() Trigger.OnEnteredFootprint(ChnCellTriggerActivator, function(a, id) if a.Owner == Nod then - Reinforcements.Reinforce(Nod, { 'tran' }, { ChnEntry.Location, waypoint17.Location }, 11) + Media.PlaySpeechNotification(Nod, "Reinforce") + Reinforcements.ReinforceWithTransport(Nod, 'tran', nil, { ChnEntry.Location, waypoint17.Location }, nil, nil, nil) Trigger.RemoveFootprintTrigger(id) end end) diff --git a/mods/cnc/maps/nod06c/map.yaml b/mods/cnc/maps/nod06c/map.yaml index 5e5e98a57a..32df9a1ded 100644 --- a/mods/cnc/maps/nod06c/map.yaml +++ b/mods/cnc/maps/nod06c/map.yaml @@ -608,6 +608,7 @@ Rules: Buildable: Prerequisites: ~disabled TRAN: + -Selectable: Buildable: Prerequisites: ~disabled ORCA: diff --git a/mods/cnc/maps/nod06c/nod06c.lua b/mods/cnc/maps/nod06c/nod06c.lua index b5f5089ac6..ca3316ca74 100644 --- a/mods/cnc/maps/nod06c/nod06c.lua +++ b/mods/cnc/maps/nod06c/nod06c.lua @@ -75,12 +75,19 @@ end InsertNodUnits = function() Camera.Position = UnitsRallyRight.CenterPosition + Media.PlaySpeechNotification(Nod, "Reinforce") Reinforcements.Reinforce(Nod, NodStartUnitsVehicle, { UnitsEntryMiddle.Location, UnitsRallyMiddle.Location }, 30) Reinforcements.Reinforce(Nod, NodStartUnitsMiddle, { UnitsEntryMiddle.Location, UnitsRallyMiddle.Location }, 15) Reinforcements.Reinforce(Nod, NodStartUnitsLeft, { UnitsEntryLeft.Location, UnitsRallyLeft.Location }, 15) Reinforcements.Reinforce(Nod, NodStartUnitsRight, { UnitsEntryRight.Location, UnitsRallyRight.Location }, 15) end +initialSong = "rout" +PlayMusic = function() + Media.PlayMusic(initialSong, PlayMusic) + initialSong = nil +end + WorldLoaded = function() GDI = Player.GetPlayer("GDI") Nod = Player.GetPlayer("Nod") @@ -109,6 +116,8 @@ WorldLoaded = function() NodObjective3 = Nod.AddSecondaryObjective("Infiltrate the barracks, weapon factory and \nthe construction yard.") GDIObjective = GDI.AddPrimaryObjective("Stop the Nod taskforce from escaping with the detonator.") + PlayMusic() + InsertNodUnits() Trigger.AfterDelay(Atk1TriggerFunctionTime, Atk1TriggerFunction) @@ -117,7 +126,8 @@ WorldLoaded = function() Trigger.OnEnteredFootprint(ChinCellTriggerActivator, function(a, id) if a.Owner == Nod then - Reinforcements.Reinforce(Nod, { 'tran' }, { ChnEntry.Location, waypoint10.Location }, 11) + Media.PlaySpeechNotification(Nod, "Reinforce") + Reinforcements.ReinforceWithTransport(Nod, 'tran', nil, { ChnEntry.Location, waypoint10.Location }, nil, nil, nil) Trigger.RemoveFootprintTrigger(id) end end) @@ -138,7 +148,7 @@ WorldLoaded = function() end) Trigger.OnEnteredFootprint(Win2CellTriggerActivator, function(a, id) - if a.Owner == Nod and NodObjective1 then + if a.Owner == Nod and NodObjective2 then Nod.MarkCompletedObjective(NodObjective2) Trigger.RemoveFootprintTrigger(id) end