Add reinforcements paradrops

This commit is contained in:
Scott_NZ
2012-12-31 20:20:34 +13:00
parent bdb7bb97cd
commit 200071e713
2 changed files with 45 additions and 10 deletions

View File

@@ -15,7 +15,6 @@ using OpenRA.Mods.RA.Activities;
using OpenRA.Mods.RA.Air;
using OpenRA.Mods.RA.Buildings;
using OpenRA.Mods.RA.Move;
using OpenRA.Network;
using OpenRA.Scripting;
using OpenRA.Traits;
@@ -46,12 +45,23 @@ namespace OpenRA.Mods.RA.Missions
Actor startJeep;
Actor startJeepMovePoint;
Actor church;
bool startJeepParadropped;
bool churchParadropped;
Actor paradropPoint1;
Actor paradropEntryPoint1;
Actor paradropPoint2;
Actor paradropEntryPoint2;
Actor airfield1;
Actor airfield2;
Actor airfield3;
Actor[] airfields;
const string BadgerName = "badr";
static readonly string[] Reinforcements = { "e1", "e1", "e1", "e2", "e2" };
void MissionFailed()
{
if (ussr.WinState != WinState.Undefined)
@@ -89,6 +99,18 @@ namespace OpenRA.Mods.RA.Missions
objectives[DestroyID].Status = ObjectiveStatus.Failed;
MissionFailed();
}
if (!startJeepParadropped && startJeep.IsDead())
{
Sound.Play("reinfor1.aud");
MissionUtils.Paradrop(world, ussr, Reinforcements, paradropEntryPoint1.Location, paradropPoint1.Location);
startJeepParadropped = true;
}
if (!churchParadropped && church.IsDead())
{
Sound.Play("reinfor1.aud");
MissionUtils.Paradrop(world, ussr, Reinforcements, paradropEntryPoint2.Location, paradropPoint2.Location);
churchParadropped = true;
}
}
void LandYaks()
@@ -111,7 +133,8 @@ namespace OpenRA.Mods.RA.Missions
void MoveJeep()
{
startJeep.QueueActivity(new MoveAdjacentTo(Target.FromActor(startJeepMovePoint)));
startJeep.QueueActivity(new Move.Move(startJeepMovePoint.Location, 0));
startJeep.QueueActivity(new Turn(128));
startJeep.QueueActivity(new CallFunc(() =>
{
var bridge = world.Actors
@@ -132,6 +155,11 @@ namespace OpenRA.Mods.RA.Missions
var actors = w.WorldActor.Trait<SpawnMapActors>().Actors;
startJeep = actors["StartJeep"];
startJeepMovePoint = actors["StartJeepMovePoint"];
paradropPoint1 = actors["ParadropPoint1"];
paradropEntryPoint1 = actors["ParadropEntryPoint1"];
paradropPoint2 = actors["ParadropPoint2"];
paradropEntryPoint2 = actors["ParadropEntryPoint2"];
church = actors["Church"];
airfield1 = actors["Airfield1"];
airfield2 = actors["Airfield2"];
airfield3 = actors["Airfield3"];

View File

@@ -575,7 +575,7 @@ Actors:
Owner: France
Health: 0.4140625
Facing: 0
Actor122: v01
Church: v01
Location: 40,63
Owner: France
Health: 0.5390625
@@ -585,7 +585,7 @@ Actors:
Owner: France
Health: 0.6640625
Facing: 96
StartJeep: jeep
StartJeep: jeep.explodes
Location: 44,76
Owner: France
Health: 0.5195313
@@ -759,10 +759,10 @@ Actors:
waypoint15: waypoint
Location: 58,54
Owner: Neutral
waypoint16: waypoint
StartJeepMovePoint: waypoint
Location: 47,66
Owner: Neutral
StartJeepMovePoint: waypoint
waypoint17: waypoint
Location: 49,68
Owner: Neutral
waypoint18: waypoint
@@ -771,7 +771,7 @@ Actors:
waypoint19: waypoint
Location: 55,64
Owner: Neutral
waypoint20: waypoint
ParadropEntryPoint1: waypoint
Location: 67,65
Owner: Neutral
waypoint21: waypoint
@@ -816,13 +816,13 @@ Actors:
waypoint82: waypoint
Location: 44,77
Owner: Neutral
waypoint84: waypoint
ParadropEntryPoint2: waypoint
Location: 32,70
Owner: Neutral
waypoint94: waypoint
ParadropPoint2: waypoint
Location: 47,65
Owner: Neutral
waypoint95: waypoint
ParadropPoint1: waypoint
Location: 47,67
Owner: Neutral
waypoint96: waypoint
@@ -910,6 +910,13 @@ Rules:
YAK:
Plane:
RearmBuildings: afld.noproduction
JEEP.Explodes:
Inherits: JEEP
RenderUnitTurreted:
Image: JEEP
Tooltip:
Icon: jeepicon
Explodes:
Sequences: