Remove TargetableAircraft
This commit is contained in:
@@ -256,7 +256,6 @@
|
||||
<Compile Include="Traits\Air\Helicopter.cs" />
|
||||
<Compile Include="Traits\Air\Plane.cs" />
|
||||
<Compile Include="Traits\Air\ReturnOnIdle.cs" />
|
||||
<Compile Include="Traits\Air\TargetableAircraft.cs" />
|
||||
<Compile Include="Traits\AppearsOnRadar.cs" />
|
||||
<Compile Include="Traits\Armament.cs" />
|
||||
<Compile Include="Traits\Armor.cs" />
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System.Collections.Generic;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
public class TargetableAircraftInfo : TargetableInfo
|
||||
{
|
||||
public readonly string[] GroundedTargetTypes = { };
|
||||
public override object Create(ActorInitializer init) { return new TargetableAircraft(init.Self, this); }
|
||||
}
|
||||
|
||||
public class TargetableAircraft : Targetable
|
||||
{
|
||||
readonly TargetableAircraftInfo info;
|
||||
readonly Actor self;
|
||||
|
||||
public TargetableAircraft(Actor self, TargetableAircraftInfo info)
|
||||
: base(self, info)
|
||||
{
|
||||
this.info = info;
|
||||
this.self = self;
|
||||
}
|
||||
|
||||
public override string[] TargetTypes
|
||||
{
|
||||
get
|
||||
{
|
||||
return (self.CenterPosition.Z > 0) ? info.TargetTypes : info.GroundedTargetTypes;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2012,6 +2012,42 @@ namespace OpenRA.Mods.Common.UtilityCommands
|
||||
untargetableSubmarine.Key = "-Targetable";
|
||||
node.Value.Nodes.Add(new MiniYamlNode("-Targetable@UNDERWATER", ""));
|
||||
}
|
||||
|
||||
// Split TargetableAircraft into two Targetable traits
|
||||
var targetableAircraft = node.Value.Nodes.FirstOrDefault(n => n.Key == "TargetableAircraft");
|
||||
if (targetableAircraft != null)
|
||||
{
|
||||
node.Value.Nodes.RemoveAll(n => n.Key == "-Targetable");
|
||||
targetableAircraft.Key = "Targetable@AIRBORNE";
|
||||
targetableAircraft.Value.Nodes.Add(new MiniYamlNode("UpgradeTypes", "airborne"));
|
||||
targetableAircraft.Value.Nodes.Add(new MiniYamlNode("UpgradeMinEnabledLevel", "1"));
|
||||
var groundTargetTypes = targetableAircraft.Value.Nodes.FirstOrDefault(n => n.Key == "GroundedTargetTypes");
|
||||
if (groundTargetTypes != null)
|
||||
{
|
||||
targetableAircraft.Value.Nodes.Remove(groundTargetTypes);
|
||||
groundTargetTypes.Key = "TargetTypes";
|
||||
}
|
||||
else
|
||||
groundTargetTypes = new MiniYamlNode("TargetTypes", "");
|
||||
node.Value.Nodes.Add(new MiniYamlNode("Targetable@GROUND", "", new List<MiniYamlNode> {
|
||||
groundTargetTypes,
|
||||
new MiniYamlNode("UpgradeTypes", "airborne"),
|
||||
new MiniYamlNode("UpgradeMaxEnabledLevel", "0")
|
||||
}));
|
||||
}
|
||||
|
||||
// Add `AirborneUpgrades: airborne` to Plane and Helicopter
|
||||
var aircraft = node.Value.Nodes.FirstOrDefault(n => n.Key == "Plane" || n.Key == "Helicopter");
|
||||
if (aircraft != null)
|
||||
aircraft.Value.Nodes.Add(new MiniYamlNode("AirborneUpgrades", "airborne"));
|
||||
|
||||
// Remove split traits if TargetableAircraft was removed
|
||||
var untargetableAircraft = node.Value.Nodes.FirstOrDefault(n => n.Key == "-TargetableAircraft");
|
||||
if (untargetableAircraft != null)
|
||||
{
|
||||
untargetableAircraft.Key = "-TargetableUnit@GROUND";
|
||||
node.Value.Nodes.Add(new MiniYamlNode("-TargetableUnit@AIRBORNE", ""));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ TRAN:
|
||||
InitialFacing: 0
|
||||
LandableTerrainTypes: Clear,Rough,Road,Ore,Beach,Tiberium,BlueTiberium
|
||||
AltitudeVelocity: 0c100
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 90
|
||||
Armor:
|
||||
@@ -56,6 +57,7 @@ HELI:
|
||||
RearmBuildings: hpad
|
||||
ROT: 4
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 125
|
||||
Armor:
|
||||
@@ -107,6 +109,7 @@ ORCA:
|
||||
RearmBuildings: hpad
|
||||
ROT: 4
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 90
|
||||
Armor:
|
||||
@@ -152,6 +155,7 @@ C17:
|
||||
ROT: 5
|
||||
Speed: 326
|
||||
Repulsable: False
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 25
|
||||
Armor:
|
||||
@@ -188,6 +192,7 @@ A10:
|
||||
ROT: 4
|
||||
Speed: 373
|
||||
Repulsable: False
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 150
|
||||
Armor:
|
||||
@@ -219,6 +224,7 @@ TRAN.Husk:
|
||||
Helicopter:
|
||||
ROT: 5
|
||||
Speed: 140
|
||||
AirborneUpgrades: airborne
|
||||
RevealsShroud:
|
||||
Range: 8c0
|
||||
Type: CenterPosition
|
||||
@@ -236,6 +242,7 @@ HELI.Husk:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
Type: CenterPosition
|
||||
@@ -251,6 +258,7 @@ ORCA.Husk:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
Type: CenterPosition
|
||||
|
||||
@@ -116,9 +116,14 @@
|
||||
Inherits@2: ^GainsExperience
|
||||
AppearsOnRadar:
|
||||
UseLocation: yes
|
||||
TargetableAircraft:
|
||||
Targetable@GROUND:
|
||||
TargetTypes: Ground, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMaxEnabledLevel: 0
|
||||
Targetable@AIRBORNE:
|
||||
TargetTypes: Air
|
||||
GroundedTargetTypes: Ground, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMinEnabledLevel: 1
|
||||
SelectionDecorations:
|
||||
Selectable:
|
||||
Bounds: 24,24
|
||||
@@ -126,6 +131,7 @@
|
||||
RepairBuildings: hpad
|
||||
RearmBuildings:
|
||||
LandWhenIdle: false
|
||||
AirborneUpgrades: airborne
|
||||
HiddenUnderFog:
|
||||
Type: CenterPosition
|
||||
ActorLostNotification:
|
||||
|
||||
@@ -20,6 +20,7 @@ carryall.reinforce:
|
||||
Repulsable: False
|
||||
LandAltitude: 100
|
||||
LandWhenIdle: False
|
||||
AirborneUpgrades: airborne
|
||||
SpawnActorOnDeath:
|
||||
Actor: carryall.husk
|
||||
Carryall:
|
||||
@@ -53,6 +54,7 @@ carryall.infantry:
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
Repulsable: False
|
||||
AirborneUpgrades: airborne
|
||||
Cargo:
|
||||
MaxWeight: 5
|
||||
Types: Infantry
|
||||
@@ -77,6 +79,7 @@ frigate:
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
Repulsable: False
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 500
|
||||
-AppearsOnRadar:
|
||||
@@ -116,14 +119,20 @@ orni:
|
||||
Speed: 280
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
AirborneUpgrades: airborne
|
||||
SpawnActorOnDeath:
|
||||
Actor: orni.husk
|
||||
SelectionDecorations:
|
||||
Selectable:
|
||||
Bounds: 32,32
|
||||
TargetableAircraft:
|
||||
Targetable@GROUND:
|
||||
TargetTypes: Ground, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMaxEnabledLevel: 0
|
||||
Targetable@AIRBORNE:
|
||||
TargetTypes: Air
|
||||
GroundedTargetTypes: Ground, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMinEnabledLevel: 1
|
||||
Voiced:
|
||||
VoiceSet: GenericVoice
|
||||
|
||||
@@ -142,6 +151,7 @@ orni.bomber:
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
Repulsable: False
|
||||
AirborneUpgrades: airborne
|
||||
AmmoPool:
|
||||
Ammo: 5
|
||||
Tooltip:
|
||||
@@ -161,6 +171,7 @@ orni.husk:
|
||||
Speed: 280
|
||||
RepairBuildings:
|
||||
RearmBuildings:
|
||||
AirborneUpgrades: airborne
|
||||
RenderSprites:
|
||||
Image: orni
|
||||
|
||||
@@ -173,6 +184,7 @@ orni.bomber.husk:
|
||||
Speed: 350
|
||||
RepairBuildings:
|
||||
RearmBuildings:
|
||||
AirborneUpgrades: airborne
|
||||
RenderSprites:
|
||||
Image: orni
|
||||
|
||||
@@ -185,6 +197,7 @@ carryall.husk:
|
||||
Speed: 210
|
||||
RepairBuildings:
|
||||
RearmBuildings:
|
||||
AirborneUpgrades: airborne
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
@@ -197,6 +210,7 @@ carryall.infantry.husk:
|
||||
Speed: 280
|
||||
RepairBuildings:
|
||||
RearmBuildings:
|
||||
AirborneUpgrades: airborne
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
|
||||
@@ -133,6 +133,7 @@ waypoint:
|
||||
Inherits: carryall
|
||||
Helicopter:
|
||||
InitialFacing: 104
|
||||
AirborneUpgrades: airborne
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
Palette: colorpicker
|
||||
|
||||
@@ -1668,8 +1668,8 @@ Rules:
|
||||
Range: 4c0
|
||||
Tooltip:
|
||||
ShowOwnerRow: false
|
||||
TargetableAircraft:
|
||||
GroundedTargetTypes: Ground
|
||||
Targetable@GROUND:
|
||||
TargetTypes: Ground
|
||||
TRAN.IN:
|
||||
Inherits: TRAN
|
||||
RenderSprites:
|
||||
|
||||
@@ -12,6 +12,7 @@ BADR:
|
||||
Speed: 149
|
||||
Repulsable: False
|
||||
MaximumPitch: 56
|
||||
AirborneUpgrades: airborne
|
||||
Cargo:
|
||||
MaxWeight: 10
|
||||
-Selectable:
|
||||
@@ -49,6 +50,7 @@ BADR.Bomber:
|
||||
Speed: 149
|
||||
Repulsable: False
|
||||
MaximumPitch: 56
|
||||
AirborneUpgrades: airborne
|
||||
AmmoPool:
|
||||
Ammo: 7
|
||||
-Selectable:
|
||||
@@ -106,6 +108,7 @@ MIG:
|
||||
RearmBuildings: afld
|
||||
RepulsionSpeed: 40
|
||||
MaximumPitch: 56
|
||||
AirborneUpgrades: airborne
|
||||
AutoTarget:
|
||||
TargetWhenIdle: false
|
||||
TargetWhenDamaged: false
|
||||
@@ -167,6 +170,7 @@ YAK:
|
||||
Speed: 178
|
||||
RepulsionSpeed: 40
|
||||
MaximumPitch: 56
|
||||
AirborneUpgrades: airborne
|
||||
AutoTarget:
|
||||
TargetWhenIdle: false
|
||||
TargetWhenDamaged: false
|
||||
@@ -215,6 +219,7 @@ TRAN:
|
||||
Speed: 112
|
||||
LandableTerrainTypes: Clear,Rough,Road,Ore,Beach
|
||||
AltitudeVelocity: 0c100
|
||||
AirborneUpgrades: airborne
|
||||
WithRotor@PRIMARY:
|
||||
Offset: -597,0,341
|
||||
Sequence: rotor2
|
||||
@@ -261,6 +266,7 @@ HELI:
|
||||
InitialFacing: 20
|
||||
ROT: 4
|
||||
Speed: 149
|
||||
AirborneUpgrades: airborne
|
||||
AutoTarget:
|
||||
InitialStance: HoldFire
|
||||
WithRotor:
|
||||
@@ -312,6 +318,7 @@ HIND:
|
||||
InitialFacing: 20
|
||||
ROT: 4
|
||||
Speed: 112
|
||||
AirborneUpgrades: airborne
|
||||
AutoTarget:
|
||||
InitialStance: HoldFire
|
||||
WithRotor:
|
||||
@@ -341,10 +348,11 @@ U2:
|
||||
Speed: 373
|
||||
Repulsable: False
|
||||
MaximumPitch: 56
|
||||
AirborneUpgrades: airborne
|
||||
AttackBomber:
|
||||
-Selectable:
|
||||
-Voiced:
|
||||
-TargetableAircraft:
|
||||
-Targetable@AIRBORNE:
|
||||
-GainsExperience:
|
||||
Contrail@1:
|
||||
Offset: -725,683,0
|
||||
|
||||
@@ -339,9 +339,14 @@
|
||||
SelectionDecorations:
|
||||
Selectable:
|
||||
Bounds: 24,24
|
||||
TargetableAircraft:
|
||||
Targetable@GROUND:
|
||||
TargetTypes: Ground, Repair, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMaxEnabledLevel: 0
|
||||
Targetable@AIRBORNE:
|
||||
TargetTypes: Air
|
||||
GroundedTargetTypes: Ground, Repair, Vehicle
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMinEnabledLevel: 1
|
||||
HiddenUnderFog:
|
||||
Type: CenterPosition
|
||||
AttackMove:
|
||||
|
||||
@@ -88,6 +88,7 @@ TRAN.Husk:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
Speed: 149
|
||||
AirborneUpgrades: airborne
|
||||
WithRotor@PRIMARY:
|
||||
Offset: -597,0,341
|
||||
WithRotor@SECONDARY:
|
||||
@@ -119,6 +120,7 @@ BADR.Husk:
|
||||
Plane:
|
||||
ROT: 5
|
||||
Speed: 149
|
||||
AirborneUpgrades: airborne
|
||||
SmokeTrailWhenDamaged@0:
|
||||
Offset: -432,560,0
|
||||
Interval: 2
|
||||
@@ -141,6 +143,7 @@ MIG.Husk:
|
||||
Plane:
|
||||
ROT: 5
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -853,0,171
|
||||
Interval: 2
|
||||
@@ -160,6 +163,7 @@ YAK.Husk:
|
||||
Plane:
|
||||
ROT: 5
|
||||
Speed: 149
|
||||
AirborneUpgrades: airborne
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -853,0,0
|
||||
Interval: 2
|
||||
@@ -177,6 +181,7 @@ HELI.Husk:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
Speed: 149
|
||||
AirborneUpgrades: airborne
|
||||
WithRotor:
|
||||
Offset: 0,0,85
|
||||
SmokeTrailWhenDamaged:
|
||||
@@ -195,6 +200,7 @@ HIND.Husk:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
Speed: 112
|
||||
AirborneUpgrades: airborne
|
||||
WithRotor:
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -427,0,0
|
||||
@@ -210,6 +216,7 @@ U2.Husk:
|
||||
Plane:
|
||||
ROT: 7
|
||||
Speed: 373
|
||||
AirborneUpgrades: airborne
|
||||
Contrail@1:
|
||||
Offset: -725,683,0
|
||||
Contrail@2:
|
||||
|
||||
@@ -10,6 +10,7 @@ DPOD:
|
||||
Speed: 149
|
||||
InitialFacing: 0
|
||||
LandableTerrainTypes: Clear
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 60
|
||||
Armor:
|
||||
@@ -47,6 +48,7 @@ DSHP:
|
||||
LandableTerrainTypes: Clear
|
||||
TakeoffSound: dropup1.aud
|
||||
LandingSound: dropdwn1.aud
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 200
|
||||
Armor:
|
||||
@@ -78,6 +80,7 @@ ORCA:
|
||||
RearmBuildings: gahpad, nahpad
|
||||
ROT: 5
|
||||
Speed: 186
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 200
|
||||
Armor:
|
||||
@@ -117,6 +120,7 @@ ORCAB:
|
||||
MaximumPitch: 120
|
||||
ROT: 3
|
||||
Speed: 96
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 260
|
||||
Armor:
|
||||
@@ -159,6 +163,7 @@ ORCATRAN:
|
||||
LandableTerrainTypes: Clear
|
||||
TakeoffSound: dropup1.aud
|
||||
LandingSound: dropdwn1.aud
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 200
|
||||
Armor:
|
||||
@@ -193,6 +198,7 @@ TRNSPORT:
|
||||
TakeoffSound: dropup1.aud
|
||||
LandingSound: dropdwn1.aud
|
||||
AltitudeVelocity: 64
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 175
|
||||
Armor:
|
||||
@@ -224,6 +230,7 @@ SCRIN:
|
||||
MaximumPitch: 90
|
||||
ROT: 3
|
||||
Speed: 168
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 280
|
||||
Armor:
|
||||
@@ -262,6 +269,7 @@ APACHE:
|
||||
RearmBuildings: gahpad, nahpad
|
||||
ROT: 5
|
||||
Speed: 130
|
||||
AirborneUpgrades: airborne
|
||||
Health:
|
||||
HP: 225
|
||||
Armor:
|
||||
|
||||
@@ -453,9 +453,14 @@
|
||||
DrawLineToTarget:
|
||||
AppearsOnRadar:
|
||||
UseLocation: yes
|
||||
TargetableAircraft:
|
||||
Targetable@GROUND:
|
||||
TargetTypes: Ground
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMaxEnabledLevel: 0
|
||||
Targetable@AIRBORNE:
|
||||
TargetTypes: Air
|
||||
GroundedTargetTypes: Ground
|
||||
UpgradeTypes: airborne
|
||||
UpgradeMinEnabledLevel: 1
|
||||
Selectable:
|
||||
SelectionDecorations:
|
||||
Palette: pips
|
||||
@@ -484,6 +489,7 @@
|
||||
LandWhenIdle: no
|
||||
CruiseAltitude: 2048
|
||||
Voice: Move
|
||||
AirborneUpgrades: airborne
|
||||
|
||||
^Plane:
|
||||
Inherits: ^Aircraft
|
||||
@@ -493,6 +499,7 @@
|
||||
LandWhenIdle: no
|
||||
CruiseAltitude: 2560
|
||||
Voice: Move
|
||||
AirborneUpgrades: airborne
|
||||
ReturnOnIdle:
|
||||
|
||||
^Viceroid:
|
||||
|
||||
Reference in New Issue
Block a user