Initial pbox pax changes

This commit is contained in:
Curtis Shmyr
2012-04-29 18:07:11 -06:00
committed by Chris Forbes
parent e0bfa287ee
commit 9185dc65d5
6 changed files with 176 additions and 31 deletions

View File

@@ -21,6 +21,7 @@ namespace OpenRA.Mods.RA.Activities
public int Facing = 96;
public string[] Sounds = {};
public int ForceHealthPercentage = 0;
public bool SkipMakeAnims = false;
public Transform(Actor self, string toActor)
{
@@ -45,6 +46,9 @@ namespace OpenRA.Mods.RA.Activities
new OwnerInit( self.Owner ),
new FacingInit( Facing ),
};
if (SkipMakeAnims) init.Add(new SkipMakeAnimsInit());
var health = self.TraitOrDefault<Health>();
if (health != null)
{

View 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) { }
}
}

View File

@@ -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">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -186,6 +186,7 @@
<Compile Include="Effects\SatelliteLaunch.cs" />
<Compile Include="Effects\Smoke.cs" />
<Compile Include="Effects\TeslaZap.cs" />
<Compile Include="EmitCargoOnSell.cs" />
<Compile Include="EmitInfantryOnSell.cs" />
<Compile Include="EngineerRepair.cs" />
<Compile Include="Explodes.cs" />

View File

@@ -20,6 +20,7 @@ namespace OpenRA.Mods.RA
[ActorReference] public readonly string[] PassengerTypes = {};
[ActorReference] public readonly string OnEnter = null;
[ActorReference] public readonly string OnExit = null;
public readonly bool SkipMakeAnims = false;
public object Create(ActorInitializer init) { return new TransformOnPassenger(this); }
}
@@ -36,8 +37,12 @@ namespace OpenRA.Mods.RA
{
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.QueueActivity( new Transform(self, transformTo) { Facing = self.Trait<IFacing>().Facing } );
self.QueueActivity(transform);
});
}
}

View File

@@ -363,45 +363,146 @@ DOME:
PBOX:
Inherits: ^Building
Buildable:
Queue: Defense
BuildPaletteOrder: 20
Prerequisites: tent
Owner: allies
Hotkey: p
Valued:
Cost: 400
Tooltip:
Name: Pillbox
Description: Basic defensive structure.\n Strong vs Infantry, Light Vehicles\n Weak vs Tanks, Aircraft
Name: Pillbox (Unarmed)
Building:
Power: -15
-GivesBuildableArea:
Valued:
Cost: 400
Health:
HP: 400
Armor:
Type: Wood
RevealsShroud:
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:
PrimaryWeapon: Vulcan
PrimaryLocalOffset: 0,-11,0,0,0
AutoTarget:
IronCurtainable:
RenderRangeCircle:
-AcceptsSupplies:
WithMuzzleFlash:
Turreted:
ROT: 255
Cargo:
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:
Inherits: ^Building
Buildable:
Queue: Defense
BuildPaletteOrder: 30
Prerequisites: tent
Owner: allies
Hotkey: c
# Buildable:
# Queue: Defense
# BuildPaletteOrder: 30
# Prerequisites: tent
# Owner: allies
# Hotkey: c
Valued:
Cost: 600
Tooltip:

View File

@@ -39,6 +39,7 @@ Vulcan:
Report: GUN13
Projectile: Bullet
Speed: 100
ContrailLength: 1000
Warhead@1:
Spread: 3
Versus:
@@ -48,7 +49,7 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 7
Damage: 10
Warhead@2:
Spread: 3
Versus:
@@ -58,8 +59,8 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 5
Delay: 7
Damage: 10
Delay: 2
Warhead@3:
Spread: 3
Versus:
@@ -69,7 +70,7 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 7
Damage: 10
Delay: 4
Warhead@4:
Spread: 3
@@ -80,7 +81,7 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 7
Damage: 10
Delay: 6
Warhead@5:
Spread: 3
@@ -91,7 +92,7 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 7
Damage: 10
Delay: 8
Warhead@6:
Spread: 3
@@ -102,7 +103,7 @@ Vulcan:
Concrete: 25%
Explosion: piffs
InfDeath: 1
Damage: 7
Damage: 10
Delay: 10
Maverick: