Merge pull request #7191 from Mailaender/ts-superweapons
Added the Nod missile silo and the Ion Cannon to the Tiberian Sun mod
This commit is contained in:
@@ -35,6 +35,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
|||||||
[Desc("Apply the weapon impact this many ticks into the effect")]
|
[Desc("Apply the weapon impact this many ticks into the effect")]
|
||||||
public readonly int WeaponDelay = 7;
|
public readonly int WeaponDelay = 7;
|
||||||
|
|
||||||
|
public readonly string Cursor = "ioncannon";
|
||||||
public override object Create(ActorInitializer init) { return new IonCannonPower(init.Self, this); }
|
public override object Create(ActorInitializer init) { return new IonCannonPower(init.Self, this); }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,7 +46,8 @@ namespace OpenRA.Mods.Cnc.Traits
|
|||||||
public override IOrderGenerator OrderGenerator(string order, SupportPowerManager manager)
|
public override IOrderGenerator OrderGenerator(string order, SupportPowerManager manager)
|
||||||
{
|
{
|
||||||
Sound.PlayToPlayer(manager.Self.Owner, Info.SelectTargetSound);
|
Sound.PlayToPlayer(manager.Self.Owner, Info.SelectTargetSound);
|
||||||
return new SelectGenericPowerTarget(order, manager, "ioncannon", MouseButton.Left);
|
var info = Info as IonCannonPowerInfo;
|
||||||
|
return new SelectGenericPowerTarget(order, manager, info.Cursor, MouseButton.Left);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Activate(Actor self, Order order, SupportPowerManager manager)
|
public override void Activate(Actor self, Order order, SupportPowerManager manager)
|
||||||
|
|||||||
@@ -45,6 +45,8 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
[Desc("Amount of time after detonation to remove the camera")]
|
[Desc("Amount of time after detonation to remove the camera")]
|
||||||
public readonly int CameraRemoveDelay = 25;
|
public readonly int CameraRemoveDelay = 25;
|
||||||
|
|
||||||
|
public readonly string Cursor = "nuke";
|
||||||
|
|
||||||
public override object Create(ActorInitializer init) { return new NukePower(init.Self, this); }
|
public override object Create(ActorInitializer init) { return new NukePower(init.Self, this); }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,7 +63,8 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
public override IOrderGenerator OrderGenerator(string order, SupportPowerManager manager)
|
public override IOrderGenerator OrderGenerator(string order, SupportPowerManager manager)
|
||||||
{
|
{
|
||||||
Sound.PlayToPlayer(manager.Self.Owner, Info.SelectTargetSound);
|
Sound.PlayToPlayer(manager.Self.Owner, Info.SelectTargetSound);
|
||||||
return new SelectGenericPowerTarget(order, manager, "nuke", MouseButton.Left);
|
var info = Info as NukePowerInfo;
|
||||||
|
return new SelectGenericPowerTarget(order, manager, info.Cursor, MouseButton.Left);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Activate(Actor self, Order order, SupportPowerManager manager)
|
public override void Activate(Actor self, Order order, SupportPowerManager manager)
|
||||||
|
|||||||
@@ -414,14 +414,6 @@ bomblet:
|
|||||||
Start: 0
|
Start: 0
|
||||||
Length: *
|
Length: *
|
||||||
|
|
||||||
nuke:
|
|
||||||
up: atomicup
|
|
||||||
Start: 0
|
|
||||||
Length: *
|
|
||||||
down: atomicdn
|
|
||||||
Start: 0
|
|
||||||
Length: *
|
|
||||||
|
|
||||||
parabomb:
|
parabomb:
|
||||||
open:
|
open:
|
||||||
Start: 0
|
Start: 0
|
||||||
|
|||||||
@@ -147,8 +147,11 @@ Cursors:
|
|||||||
Start: 213
|
Start: 213
|
||||||
Length: 1
|
Length: 1
|
||||||
nuke:
|
nuke:
|
||||||
Start: 90
|
Start: 279
|
||||||
Length: 7
|
Length: 20
|
||||||
|
ioncannon:
|
||||||
|
Start: 319
|
||||||
|
Length: 9
|
||||||
sell:
|
sell:
|
||||||
Start: 129
|
Start: 129
|
||||||
Length: 10
|
Length: 10
|
||||||
|
|||||||
@@ -10,3 +10,15 @@ waypoint:
|
|||||||
RenderEditorOnly:
|
RenderEditorOnly:
|
||||||
BodyOrientation:
|
BodyOrientation:
|
||||||
|
|
||||||
|
CAMERA:
|
||||||
|
Immobile:
|
||||||
|
OccupiesSpace: false
|
||||||
|
Health:
|
||||||
|
HP: 1000
|
||||||
|
RevealsShroud:
|
||||||
|
Range: 10c0
|
||||||
|
ProximityCaptor:
|
||||||
|
Types: Camera
|
||||||
|
BodyOrientation:
|
||||||
|
DetectCloaked:
|
||||||
|
Range: 10
|
||||||
@@ -1289,6 +1289,108 @@ NAPULS:
|
|||||||
Power:
|
Power:
|
||||||
Amount: -150
|
Amount: -150
|
||||||
|
|
||||||
|
NAMISL:
|
||||||
|
Inherits: ^Building
|
||||||
|
Buildable:
|
||||||
|
Queue: Defense
|
||||||
|
BuildPaletteOrder: 100
|
||||||
|
Owner: nod
|
||||||
|
Prerequisites: natech
|
||||||
|
BuildLimit: 1
|
||||||
|
Valued:
|
||||||
|
Cost: 1300
|
||||||
|
Tooltip:
|
||||||
|
Name: Nod Missile Silo
|
||||||
|
Description: Launches a devastating missile\nat a target location.\nRequires power to operate.
|
||||||
|
ProvidesCustomPrerequisite:
|
||||||
|
Prerequisite: tech
|
||||||
|
Building:
|
||||||
|
Footprint: xx xx
|
||||||
|
Dimensions: 2,2
|
||||||
|
Selectable:
|
||||||
|
Bounds: 75,48
|
||||||
|
Health:
|
||||||
|
HP: 1000
|
||||||
|
Armor:
|
||||||
|
Type: Wood
|
||||||
|
RevealsShroud:
|
||||||
|
Range: 4c0
|
||||||
|
WithIdleOverlay@LIGHTS:
|
||||||
|
Sequence: idle-lights
|
||||||
|
Power:
|
||||||
|
Amount: -50
|
||||||
|
CanPowerDown:
|
||||||
|
RequiresPower:
|
||||||
|
DisabledOverlay:
|
||||||
|
SupportPowerChargeBar:
|
||||||
|
NukePower:
|
||||||
|
Icon: clustermissile
|
||||||
|
ChargeTime: 540
|
||||||
|
Description: Cluster Missile
|
||||||
|
LongDesc: Launches a conventional warhead\nat a target location.
|
||||||
|
BeginChargeSound:
|
||||||
|
EndChargeSound: 00-i154.aud
|
||||||
|
SelectTargetSound:
|
||||||
|
InsufficientPowerSound:
|
||||||
|
IncomingSound: 00-i150.aud
|
||||||
|
LaunchSound: icbm1.aud
|
||||||
|
MissileWeapon: ClusterMissile
|
||||||
|
SpawnOffset: 0,427,0
|
||||||
|
DisplayTimer: False
|
||||||
|
DisplayBeacon: False
|
||||||
|
DisplayRadarPing: True
|
||||||
|
BeaconPoster:
|
||||||
|
CameraActor: camera
|
||||||
|
|
||||||
|
GAPLUG:
|
||||||
|
Inherits: ^Building
|
||||||
|
Valued:
|
||||||
|
Cost: 1800
|
||||||
|
Tooltip:
|
||||||
|
Name: GDI Upgrade Center
|
||||||
|
Description: Provides the Orbital Ion Cannon support power.\nRequires power to operate.
|
||||||
|
Selectable:
|
||||||
|
Bounds: 115,120,0,-20
|
||||||
|
Buildable:
|
||||||
|
BuildPaletteOrder: 100
|
||||||
|
Prerequisites: proc, gatech
|
||||||
|
Queue: Defense
|
||||||
|
Building:
|
||||||
|
Footprint: xxx xxx
|
||||||
|
Dimensions: 2,3
|
||||||
|
RequiresPower:
|
||||||
|
CanPowerDown:
|
||||||
|
DisabledOverlay:
|
||||||
|
RenderBuilding:
|
||||||
|
WithIdleOverlay@DISH:
|
||||||
|
Sequence: idle-dish
|
||||||
|
WithIdleOverlay@LIGHTS:
|
||||||
|
Sequence: idle-lights
|
||||||
|
WithIdleOverlay@STRIP:
|
||||||
|
Sequence: idle-strip
|
||||||
|
Health:
|
||||||
|
HP: 1000
|
||||||
|
Armor:
|
||||||
|
Type: Wood
|
||||||
|
RevealsShroud:
|
||||||
|
Range: 6c0
|
||||||
|
IonCannonPower:
|
||||||
|
Icon: ioncannon
|
||||||
|
Effect: ionbeam
|
||||||
|
ChargeTime: 180
|
||||||
|
Description: Ion Cannon
|
||||||
|
LongDesc: Initiate an Ion Cannon strike.\nApplies instant damage to a small area.
|
||||||
|
BeginChargeSound:
|
||||||
|
EndChargeSound: 00-i156.aud
|
||||||
|
LaunchSound:
|
||||||
|
SelectTargetSound:
|
||||||
|
InsufficientPowerSound:
|
||||||
|
DisplayRadarPing: True
|
||||||
|
CameraActor: camera
|
||||||
|
SupportPowerChargeBar:
|
||||||
|
Power:
|
||||||
|
Amount: -150
|
||||||
|
|
||||||
ANYPOWER:
|
ANYPOWER:
|
||||||
Tooltip:
|
Tooltip:
|
||||||
Name: Power Plant
|
Name: Power Plant
|
||||||
|
|||||||
@@ -157,7 +157,6 @@ explosion:
|
|||||||
ionring: ring1
|
ionring: ring1
|
||||||
Start: 0
|
Start: 0
|
||||||
Length: *
|
Length: *
|
||||||
Tick: 160
|
|
||||||
pulse_explosion: pulsefx2
|
pulse_explosion: pulsefx2
|
||||||
Start: 0
|
Start: 0
|
||||||
Length: *
|
Length: *
|
||||||
@@ -537,3 +536,23 @@ largecraters:
|
|||||||
cr12: crater12
|
cr12: crater12
|
||||||
Length: 1
|
Length: 1
|
||||||
Offset: 0, -24
|
Offset: 0, -24
|
||||||
|
|
||||||
|
icon:
|
||||||
|
clustermissile: mltiicon
|
||||||
|
Start: 0
|
||||||
|
ioncannon: ioncicon
|
||||||
|
Start: 0
|
||||||
|
|
||||||
|
clustermissile:
|
||||||
|
up: null # TODO
|
||||||
|
Start: 0
|
||||||
|
Length: *
|
||||||
|
down: null # TODO
|
||||||
|
Start: 0
|
||||||
|
Length: *
|
||||||
|
ionbeam:
|
||||||
|
idle:
|
||||||
|
Start: 0
|
||||||
|
Length: *
|
||||||
|
Offset: 0, -78
|
||||||
|
ZOffset: 1
|
||||||
|
|||||||
@@ -1307,3 +1307,92 @@ gadept:
|
|||||||
Offset: 0, -36
|
Offset: 0, -36
|
||||||
icon: fixicon
|
icon: fixicon
|
||||||
Start: 0
|
Start: 0
|
||||||
|
|
||||||
|
namisl:
|
||||||
|
idle: ntmisl
|
||||||
|
Start: 0
|
||||||
|
Offset: 0, -24
|
||||||
|
damaged-idle: ntmisl
|
||||||
|
Start: 1
|
||||||
|
Offset: 0, -24
|
||||||
|
critical-idle: ntmisl
|
||||||
|
Start: 2
|
||||||
|
Offset: 0, -24
|
||||||
|
idle-lights: ntmisl_b
|
||||||
|
Start: 0
|
||||||
|
Length: 10
|
||||||
|
Tick: 120
|
||||||
|
Offset: 0, -24
|
||||||
|
damaged-idle-lights: ntmisl_b
|
||||||
|
Start: 10
|
||||||
|
Length: 10
|
||||||
|
Tick: 120
|
||||||
|
Offset: 0, -24
|
||||||
|
make: ntmislmk
|
||||||
|
Start: 0
|
||||||
|
Length: 18
|
||||||
|
ShadowStart: 18
|
||||||
|
Offset: 0, -24
|
||||||
|
active: ntmisl_a
|
||||||
|
Start: 0
|
||||||
|
Length: 10
|
||||||
|
Tick: 80
|
||||||
|
Offset: 0, -24
|
||||||
|
damaged-active: ntmisl_a
|
||||||
|
Start: 10
|
||||||
|
Length: 10
|
||||||
|
Tick: 80
|
||||||
|
Offset: 0, -24
|
||||||
|
icon: msslicon
|
||||||
|
Start: 0
|
||||||
|
|
||||||
|
gaplug:
|
||||||
|
idle: gaplug
|
||||||
|
Start: 0
|
||||||
|
ShadowStart: 3
|
||||||
|
Offset: 12, -30
|
||||||
|
damaged-idle: gaplug
|
||||||
|
Start: 1
|
||||||
|
ShadowStart: 4
|
||||||
|
Offset: 12, -30
|
||||||
|
critical-idle: gaplug
|
||||||
|
Start: 2
|
||||||
|
ShadowStart: 5
|
||||||
|
Offset: 12, -30
|
||||||
|
idle-dish: gaplug_a
|
||||||
|
Start: 0
|
||||||
|
Length: 20
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
damaged-idle-dish: gaplug_a
|
||||||
|
Start: 20
|
||||||
|
Length: 20
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
idle-lights: gaplug_b
|
||||||
|
Start: 0
|
||||||
|
Length: 20
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
damaged-idle-lights: gaplug_b
|
||||||
|
Start: 20
|
||||||
|
Length: 20
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
idle-strip: gaplug_c
|
||||||
|
Start: 0
|
||||||
|
Length: 8
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
damaged-idle-strip: gaplug_c
|
||||||
|
Start: 8
|
||||||
|
Length: 8
|
||||||
|
Tick: 120
|
||||||
|
Offset: 12, -30
|
||||||
|
make: gtplugmk
|
||||||
|
Start: 0
|
||||||
|
Length: 17
|
||||||
|
ShadowStart: 17
|
||||||
|
Offset: 12, -30
|
||||||
|
icon: plugicon
|
||||||
|
Start: 0
|
||||||
|
|||||||
@@ -1024,7 +1024,8 @@ IonCannon:
|
|||||||
ProneModifier: 100
|
ProneModifier: 100
|
||||||
ValidTargets: Ground, Air
|
ValidTargets: Ground, Air
|
||||||
Warhead@2Eff_impact: CreateEffect
|
Warhead@2Eff_impact: CreateEffect
|
||||||
Explosion: ring1
|
Explosion: ionring
|
||||||
|
ImpactSound: ion1.aud
|
||||||
Warhead@3Dam_area: PerCellDamage
|
Warhead@3Dam_area: PerCellDamage
|
||||||
Size: 2
|
Size: 2
|
||||||
Damage: 250
|
Damage: 250
|
||||||
@@ -1182,3 +1183,85 @@ TiberiumExplosion:
|
|||||||
Explosion: large_explosion
|
Explosion: large_explosion
|
||||||
ImpactSound: expnew09.aud
|
ImpactSound: expnew09.aud
|
||||||
|
|
||||||
|
ClusterMissile:
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Warhead@ImpactDamage0: SpreadDamage
|
||||||
|
Spread: 1c0
|
||||||
|
Damage: 150
|
||||||
|
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||||
|
DeathType: 5
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Versus:
|
||||||
|
Concrete: 25
|
||||||
|
Warhead@SoundEffect0: CreateEffect
|
||||||
|
Explosion: large_explosion
|
||||||
|
ImpactSound: expnew19.aud
|
||||||
|
Warhead@ResourceDestruction0: DestroyResource
|
||||||
|
Size: 1
|
||||||
|
Warhead@ClusterSmudges0: LeaveSmudge
|
||||||
|
SmudgeType: LargeCrater
|
||||||
|
Size: 1
|
||||||
|
Warhead@ClusterDamage1: SpreadDamage
|
||||||
|
Spread: 2c0
|
||||||
|
Damage: 60
|
||||||
|
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||||
|
DeathType: 5
|
||||||
|
Delay: 5
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Versus:
|
||||||
|
Concrete: 25
|
||||||
|
Warhead@ResourceDestruction1: DestroyResource
|
||||||
|
Size: 2
|
||||||
|
Delay: 5
|
||||||
|
Warhead@ClusterSmudges1: LeaveSmudge
|
||||||
|
SmudgeType: LargeScorch
|
||||||
|
Size: 2
|
||||||
|
Delay: 5
|
||||||
|
Warhead@ClusterDamage2: SpreadDamage
|
||||||
|
Spread: 3c0
|
||||||
|
Damage: 60
|
||||||
|
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||||
|
DeathType: 5
|
||||||
|
Delay: 10
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Versus:
|
||||||
|
Concrete: 25
|
||||||
|
Warhead@ResourceDestruction2: DestroyResource
|
||||||
|
Size: 3
|
||||||
|
Delay: 10
|
||||||
|
Warhead@ClusterSmudges2: LeaveSmudge
|
||||||
|
SmudgeType: LargeScorch
|
||||||
|
Size: 3
|
||||||
|
Delay: 10
|
||||||
|
Warhead@ClusterDamage3: SpreadDamage
|
||||||
|
Spread: 4c0
|
||||||
|
Damage: 60
|
||||||
|
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||||
|
DeathType: 5
|
||||||
|
Delay: 15
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Versus:
|
||||||
|
Concrete: 25
|
||||||
|
Warhead@ResourceDestruction3: DestroyResource
|
||||||
|
Size: 4
|
||||||
|
Delay: 15
|
||||||
|
Warhead@ClusterSmudges3: LeaveSmudge
|
||||||
|
SmudgeType: MediumScorch
|
||||||
|
Size: 4
|
||||||
|
Delay: 15
|
||||||
|
Warhead@ClusterDamage4: SpreadDamage
|
||||||
|
Spread: 5c0
|
||||||
|
Damage: 60
|
||||||
|
Falloff: 1000, 368, 135, 50, 18, 7, 0
|
||||||
|
DeathType: 5
|
||||||
|
Delay: 20
|
||||||
|
ValidTargets: Ground, Water, Air
|
||||||
|
Versus:
|
||||||
|
Concrete: 25
|
||||||
|
Warhead@ResourceDestruction4: DestroyResource
|
||||||
|
Size: 5
|
||||||
|
Delay: 20
|
||||||
|
Warhead@ClusterSmudges4: LeaveSmudge
|
||||||
|
SmudgeType: SmallScorch
|
||||||
|
Size: 5
|
||||||
|
Delay: 20
|
||||||
|
|||||||
Reference in New Issue
Block a user