Initial pbox pax changes
This commit is contained in:
committed by
Chris Forbes
parent
e0bfa287ee
commit
9185dc65d5
@@ -21,6 +21,7 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
public int Facing = 96;
|
public int Facing = 96;
|
||||||
public string[] Sounds = {};
|
public string[] Sounds = {};
|
||||||
public int ForceHealthPercentage = 0;
|
public int ForceHealthPercentage = 0;
|
||||||
|
public bool SkipMakeAnims = false;
|
||||||
|
|
||||||
public Transform(Actor self, string toActor)
|
public Transform(Actor self, string toActor)
|
||||||
{
|
{
|
||||||
@@ -45,6 +46,9 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
new OwnerInit( self.Owner ),
|
new OwnerInit( self.Owner ),
|
||||||
new FacingInit( Facing ),
|
new FacingInit( Facing ),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (SkipMakeAnims) init.Add(new SkipMakeAnimsInit());
|
||||||
|
|
||||||
var health = self.TraitOrDefault<Health>();
|
var health = self.TraitOrDefault<Health>();
|
||||||
if (health != null)
|
if (health != null)
|
||||||
{
|
{
|
||||||
|
|||||||
33
OpenRA.Mods.RA/EmitCargoOnSell.cs
Normal file
33
OpenRA.Mods.RA/EmitCargoOnSell.cs
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
#region Copyright & License Information
|
||||||
|
/*
|
||||||
|
* Copyright 2007-2011 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.Linq;
|
||||||
|
using OpenRA.FileFormats;
|
||||||
|
using OpenRA.Traits;
|
||||||
|
|
||||||
|
namespace OpenRA.Mods.RA
|
||||||
|
{
|
||||||
|
// for some reason i get yelled at for pbox.e1 not having Cargo, but that's a lie?
|
||||||
|
class EmitCargoOnSellInfo : TraitInfo<EmitCargoOnSell>//, Requires<Cargo>
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
class EmitCargoOnSell : INotifySold
|
||||||
|
{
|
||||||
|
void Emit(Actor self)
|
||||||
|
{
|
||||||
|
// todo.
|
||||||
|
// would like to spill all actors out similar to how we call Unload
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Selling(Actor self) { Emit(self); }
|
||||||
|
public void Sold(Actor self) { }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
@@ -186,6 +186,7 @@
|
|||||||
<Compile Include="Effects\SatelliteLaunch.cs" />
|
<Compile Include="Effects\SatelliteLaunch.cs" />
|
||||||
<Compile Include="Effects\Smoke.cs" />
|
<Compile Include="Effects\Smoke.cs" />
|
||||||
<Compile Include="Effects\TeslaZap.cs" />
|
<Compile Include="Effects\TeslaZap.cs" />
|
||||||
|
<Compile Include="EmitCargoOnSell.cs" />
|
||||||
<Compile Include="EmitInfantryOnSell.cs" />
|
<Compile Include="EmitInfantryOnSell.cs" />
|
||||||
<Compile Include="EngineerRepair.cs" />
|
<Compile Include="EngineerRepair.cs" />
|
||||||
<Compile Include="Explodes.cs" />
|
<Compile Include="Explodes.cs" />
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ namespace OpenRA.Mods.RA
|
|||||||
[ActorReference] public readonly string[] PassengerTypes = {};
|
[ActorReference] public readonly string[] PassengerTypes = {};
|
||||||
[ActorReference] public readonly string OnEnter = null;
|
[ActorReference] public readonly string OnEnter = null;
|
||||||
[ActorReference] public readonly string OnExit = null;
|
[ActorReference] public readonly string OnExit = null;
|
||||||
|
public readonly bool SkipMakeAnims = false;
|
||||||
|
|
||||||
public object Create(ActorInitializer init) { return new TransformOnPassenger(this); }
|
public object Create(ActorInitializer init) { return new TransformOnPassenger(this); }
|
||||||
}
|
}
|
||||||
@@ -36,8 +37,12 @@ namespace OpenRA.Mods.RA
|
|||||||
{
|
{
|
||||||
self.World.AddFrameEndTask( w =>
|
self.World.AddFrameEndTask( w =>
|
||||||
{
|
{
|
||||||
|
var facing = self.TraitOrDefault<IFacing>();
|
||||||
|
var transform = new Transform(self, transformTo) { SkipMakeAnims = info.SkipMakeAnims };
|
||||||
|
if (facing != null) transform.Facing = facing.Facing;
|
||||||
|
|
||||||
self.CancelActivity();
|
self.CancelActivity();
|
||||||
self.QueueActivity( new Transform(self, transformTo) { Facing = self.Trait<IFacing>().Facing } );
|
self.QueueActivity(transform);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -363,45 +363,146 @@ DOME:
|
|||||||
|
|
||||||
PBOX:
|
PBOX:
|
||||||
Inherits: ^Building
|
Inherits: ^Building
|
||||||
Buildable:
|
|
||||||
Queue: Defense
|
|
||||||
BuildPaletteOrder: 20
|
|
||||||
Prerequisites: tent
|
|
||||||
Owner: allies
|
|
||||||
Hotkey: p
|
|
||||||
Valued:
|
|
||||||
Cost: 400
|
|
||||||
Tooltip:
|
Tooltip:
|
||||||
Name: Pillbox
|
Name: Pillbox (Unarmed)
|
||||||
Description: Basic defensive structure.\n Strong vs Infantry, Light Vehicles\n Weak vs Tanks, Aircraft
|
|
||||||
Building:
|
Building:
|
||||||
Power: -15
|
Power: -15
|
||||||
-GivesBuildableArea:
|
-GivesBuildableArea:
|
||||||
|
Valued:
|
||||||
|
Cost: 400
|
||||||
Health:
|
Health:
|
||||||
HP: 400
|
HP: 400
|
||||||
Armor:
|
Armor:
|
||||||
Type: Wood
|
Type: Wood
|
||||||
RevealsShroud:
|
RevealsShroud:
|
||||||
Range: 6
|
Range: 6
|
||||||
|
IronCurtainable:
|
||||||
|
-AcceptsSupplies:
|
||||||
|
Turreted:
|
||||||
|
ROT: 255
|
||||||
|
Cargo:
|
||||||
|
Types: Infantry
|
||||||
|
MaxWeight: 1
|
||||||
|
PipCount: 1
|
||||||
|
-EmitInfantryOnSell:
|
||||||
|
# EmitCargoOnSell:
|
||||||
|
TransformOnPassenger@e1:
|
||||||
|
PassengerTypes: e1
|
||||||
|
OnEnter: pbox.e1
|
||||||
|
OnExit: pbox
|
||||||
|
SkipMakeAnims: true
|
||||||
|
# TransformOnPassenger@e2:
|
||||||
|
# PassengerTypes: e2
|
||||||
|
# OnEnter: pbox.e2
|
||||||
|
# OnExit: pbox
|
||||||
|
# SkipMakeAnims: true
|
||||||
|
TransformOnPassenger@e3:
|
||||||
|
PassengerTypes: e3
|
||||||
|
OnEnter: pbox.e3
|
||||||
|
OnExit: pbox
|
||||||
|
SkipMakeAnims: true
|
||||||
|
TransformOnPassenger@e4:
|
||||||
|
PassengerTypes: e4
|
||||||
|
OnEnter: pbox.e4
|
||||||
|
OnExit: pbox
|
||||||
|
SkipMakeAnims: true
|
||||||
|
TransformOnPassenger@e7:
|
||||||
|
PassengerTypes: e7
|
||||||
|
OnEnter: pbox.e7
|
||||||
|
OnExit: pbox
|
||||||
|
SkipMakeAnims: true
|
||||||
|
TransformOnPassenger@SHOK:
|
||||||
|
PassengerTypes: shok
|
||||||
|
OnEnter: pbox.shok
|
||||||
|
OnExit: pbox
|
||||||
|
SkipMakeAnims: true
|
||||||
|
|
||||||
|
PBOX.E1:
|
||||||
|
Inherits: PBOX
|
||||||
|
Buildable:
|
||||||
|
Queue: Defense
|
||||||
|
BuildPaletteOrder: 20
|
||||||
|
Prerequisites: tent
|
||||||
|
Owner: allies
|
||||||
|
Hotkey: p
|
||||||
|
Tooltip:
|
||||||
|
Name: Pillbox (Guns)
|
||||||
|
Description: Basic defensive structure.\n Strong vs Infantry, Light Vehicles\n Weak vs Tanks, Aircraft
|
||||||
|
Icon: PBOXICON
|
||||||
|
RenderBuilding:
|
||||||
|
Image: PBOX
|
||||||
|
RenderRangeCircle:
|
||||||
|
AutoTarget:
|
||||||
AttackTurreted:
|
AttackTurreted:
|
||||||
PrimaryWeapon: Vulcan
|
PrimaryWeapon: Vulcan
|
||||||
PrimaryLocalOffset: 0,-11,0,0,0
|
PrimaryLocalOffset: 0,-11,0,0,0
|
||||||
AutoTarget:
|
|
||||||
IronCurtainable:
|
|
||||||
RenderRangeCircle:
|
|
||||||
-AcceptsSupplies:
|
|
||||||
WithMuzzleFlash:
|
WithMuzzleFlash:
|
||||||
Turreted:
|
Cargo:
|
||||||
ROT: 255
|
InitialUnits: e1
|
||||||
|
|
||||||
|
#PBOX.E2:
|
||||||
|
# Inherits: PBOX
|
||||||
|
# Tooltip:
|
||||||
|
# Name: Pillbox (Grenades)
|
||||||
|
# RenderBuilding:
|
||||||
|
# Image: PBOX
|
||||||
|
|
||||||
|
PBOX.E3:
|
||||||
|
Inherits: PBOX
|
||||||
|
Tooltip:
|
||||||
|
Name: Pillbox (Rockets)
|
||||||
|
RenderBuilding:
|
||||||
|
Image: PBOX
|
||||||
|
RenderRangeCircle:
|
||||||
|
AutoTarget:
|
||||||
|
AttackTurreted:
|
||||||
|
PrimaryWeapon: Dragon
|
||||||
|
PrimaryLocalOffset: 0,-11,0,0,0
|
||||||
|
|
||||||
|
PBOX.E4:
|
||||||
|
Inherits: PBOX
|
||||||
|
Tooltip:
|
||||||
|
Name: Pillbox (Flamethrower)
|
||||||
|
RenderBuilding:
|
||||||
|
Image: PBOX
|
||||||
|
RenderRangeCircle:
|
||||||
|
AutoTarget:
|
||||||
|
AttackTurreted:
|
||||||
|
PrimaryWeapon: Flamer
|
||||||
|
PrimaryLocalOffset: 0,-11,0,0,0
|
||||||
|
|
||||||
|
PBOX.E7:
|
||||||
|
Inherits: PBOX
|
||||||
|
Tooltip:
|
||||||
|
Name: Pillbox (Tanya)
|
||||||
|
RenderBuilding:
|
||||||
|
Image: PBOX
|
||||||
|
RenderRangeCircle:
|
||||||
|
AutoTarget:
|
||||||
|
AttackTurreted:
|
||||||
|
PrimaryWeapon: Colt45
|
||||||
|
PrimaryLocalOffset: 0,-11,0,0,0
|
||||||
|
|
||||||
|
PBOX.SHOK:
|
||||||
|
Inherits: PBOX
|
||||||
|
Tooltip:
|
||||||
|
Name: Pillbox (Tesla)
|
||||||
|
RenderBuilding:
|
||||||
|
Image: PBOX
|
||||||
|
RenderRangeCircle:
|
||||||
|
AutoTarget:
|
||||||
|
AttackTurreted:
|
||||||
|
PrimaryWeapon: PortaTesla
|
||||||
|
PrimaryLocalOffset: 0,-11,0,0,0
|
||||||
|
|
||||||
HBOX:
|
HBOX:
|
||||||
Inherits: ^Building
|
Inherits: ^Building
|
||||||
Buildable:
|
# Buildable:
|
||||||
Queue: Defense
|
# Queue: Defense
|
||||||
BuildPaletteOrder: 30
|
# BuildPaletteOrder: 30
|
||||||
Prerequisites: tent
|
# Prerequisites: tent
|
||||||
Owner: allies
|
# Owner: allies
|
||||||
Hotkey: c
|
# Hotkey: c
|
||||||
Valued:
|
Valued:
|
||||||
Cost: 600
|
Cost: 600
|
||||||
Tooltip:
|
Tooltip:
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ Vulcan:
|
|||||||
Report: GUN13
|
Report: GUN13
|
||||||
Projectile: Bullet
|
Projectile: Bullet
|
||||||
Speed: 100
|
Speed: 100
|
||||||
|
ContrailLength: 1000
|
||||||
Warhead@1:
|
Warhead@1:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
Versus:
|
Versus:
|
||||||
@@ -48,7 +49,7 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 7
|
Damage: 10
|
||||||
Warhead@2:
|
Warhead@2:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
Versus:
|
Versus:
|
||||||
@@ -58,8 +59,8 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 5
|
Damage: 10
|
||||||
Delay: 7
|
Delay: 2
|
||||||
Warhead@3:
|
Warhead@3:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
Versus:
|
Versus:
|
||||||
@@ -69,7 +70,7 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 7
|
Damage: 10
|
||||||
Delay: 4
|
Delay: 4
|
||||||
Warhead@4:
|
Warhead@4:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
@@ -80,7 +81,7 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 7
|
Damage: 10
|
||||||
Delay: 6
|
Delay: 6
|
||||||
Warhead@5:
|
Warhead@5:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
@@ -91,7 +92,7 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 7
|
Damage: 10
|
||||||
Delay: 8
|
Delay: 8
|
||||||
Warhead@6:
|
Warhead@6:
|
||||||
Spread: 3
|
Spread: 3
|
||||||
@@ -102,7 +103,7 @@ Vulcan:
|
|||||||
Concrete: 25%
|
Concrete: 25%
|
||||||
Explosion: piffs
|
Explosion: piffs
|
||||||
InfDeath: 1
|
InfDeath: 1
|
||||||
Damage: 7
|
Damage: 10
|
||||||
Delay: 10
|
Delay: 10
|
||||||
|
|
||||||
Maverick:
|
Maverick:
|
||||||
|
|||||||
Reference in New Issue
Block a user