Merge branch 'master' of github.com:chrisforbes/OpenRA
This commit is contained in:
@@ -53,7 +53,7 @@ namespace OpenRA.Traits
|
||||
public void Tick(Actor self)
|
||||
{
|
||||
if (isOpen && !self.World.WorldActor.traits.Get<UnitInfluence>()
|
||||
.GetUnitsAt(((1/24f) * self.CenterLocation).ToInt2()).Any())
|
||||
.GetUnitsAt(((1f/Game.CellSize) * self.CenterLocation).ToInt2()).Any())
|
||||
{
|
||||
isOpen = false;
|
||||
roof.PlayBackwardsThen(GetPrefix(self) + "build-top", () => roof.Play(GetPrefix(self) + "idle-top"));
|
||||
|
||||
@@ -22,6 +22,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using OpenRA.FileFormats;
|
||||
|
||||
namespace OpenRA.Traits
|
||||
{
|
||||
@@ -33,10 +34,12 @@ namespace OpenRA.Traits
|
||||
public class UnitInfluence : ITick
|
||||
{
|
||||
List<Actor>[,] influence;
|
||||
Map map;
|
||||
|
||||
public UnitInfluence( Actor self )
|
||||
{
|
||||
int size = self.World.Map.MapSize;
|
||||
map = self.World.Map;
|
||||
var size = self.World.Map.MapSize;
|
||||
influence = new List<Actor>[size, size];
|
||||
for (int i = 0; i < size; i++)
|
||||
for (int j = 0; j < size; j++)
|
||||
@@ -88,8 +91,10 @@ namespace OpenRA.Traits
|
||||
throw new InvalidOperationException( "UIM: Sanity check failed B" );
|
||||
}
|
||||
|
||||
Actor[] noActors = { };
|
||||
public IEnumerable<Actor> GetUnitsAt( int2 a )
|
||||
{
|
||||
if (!map.IsInMap(a)) return noActors;
|
||||
return influence[ a.X, a.Y ];
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
E1:
|
||||
Inherits: ^Infantry
|
||||
Buildable:
|
||||
TechLevel: 1
|
||||
Owner: gdi, nod
|
||||
Cost: 100
|
||||
Description: Minigunner
|
||||
LongDesc: General-purpose infantry. Strong vs Infantry\n Weak vs Vehicles
|
||||
Icon: e1icnh
|
||||
Selectable:
|
||||
Bounds: 12,17,0,-6
|
||||
Unit:
|
||||
HP: 50
|
||||
Speed: 4
|
||||
AttackBase:
|
||||
PrimaryWeapon: M16
|
||||
TakeCover:
|
||||
|
||||
E2:
|
||||
Inherits: ^Infantry
|
||||
Buildable:
|
||||
TechLevel: 1
|
||||
Owner: gdi
|
||||
Cost: 160
|
||||
Description: Grenadier
|
||||
LongDesc: Infantry armed with grenades. \n Strong vs Buildings, Infantry\n Weak vs Vehicles
|
||||
Icon: e2icnh
|
||||
Selectable:
|
||||
Bounds: 12,17,0,-6
|
||||
Unit:
|
||||
HP: 50
|
||||
Speed: 4
|
||||
AttackBase:
|
||||
PrimaryWeapon: Grenade
|
||||
PrimaryOffset: 0,0,0,-10
|
||||
FireDelay: 15
|
||||
TakeCover:
|
||||
|
||||
E3:
|
||||
Inherits: ^Infantry
|
||||
Buildable:
|
||||
TechLevel: 2
|
||||
Owner: nod
|
||||
Cost: 300
|
||||
Description: Rocket Soldier
|
||||
LongDesc: Anti-tank/Anti-aircraft infantry. \n Strong vs Tanks, Aircraft\n Weak vs Infantry
|
||||
Icon: e3icnh
|
||||
Selectable:
|
||||
Bounds: 12,17,0,-6
|
||||
Unit:
|
||||
HP: 45
|
||||
Speed: 3
|
||||
AttackBase:
|
||||
PrimaryWeapon: Rockets
|
||||
PrimaryOffset: 0,0,0,-10
|
||||
FireDelay: 15
|
||||
TakeCover:
|
||||
@@ -1,7 +1,84 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<sequences>
|
||||
<!-- Visceroid -->
|
||||
<unit name="vice">
|
||||
<sequence name="idle" start="0" length="20" />
|
||||
</unit>
|
||||
</sequences>
|
||||
<!-- Visceroid -->
|
||||
<unit name="vice">
|
||||
<sequence name="idle" start="0" length="20" />
|
||||
</unit>
|
||||
<unit name="e1">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="shoot" start="64" length="8" facings="8" />
|
||||
<sequence name="crawl" start="144" length="4" facings="8" />
|
||||
<sequence name="standup" start="176" length="2" facings="8" />
|
||||
<sequence name="prone-shoot" start="192" length="8" facings="8" />
|
||||
<sequence name="die1" start="311" length="8" />
|
||||
<sequence name="die5" start="418" length="18" />
|
||||
<sequence name="die4" start="406" length="12" />
|
||||
<sequence name="die3" start="398" length="8" />
|
||||
<sequence name="die2" start="390" length="8" />
|
||||
</unit>
|
||||
<unit name="e2">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="shoot" start="64" length="20" facings="8" />
|
||||
<sequence name="crawl" start="240" length="4" facings="8" />
|
||||
<sequence name="prone-shoot" start="288" length="12" facings="8" />
|
||||
<sequence name="die5" start="546" length="18" />
|
||||
<sequence name="die4" start="534" length="12" />
|
||||
<sequence name="die3" start="526" length="8" />
|
||||
<sequence name="die2" start="518" length="8" />
|
||||
<sequence name="die1" start="509" length="9" />
|
||||
</unit>
|
||||
<unit name="e3">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="shoot" start="64" length="8" facings="8" />
|
||||
<sequence name="crawl" start="144" length="4" facings="8" />
|
||||
<sequence name="prone-shoot" start="192" length="10" facings="8" />
|
||||
<sequence name="die1" start="397" length="9" />
|
||||
<sequence name="die2" start="406" length="8" />
|
||||
<sequence name="die3" start="414" length="8" />
|
||||
<sequence name="die4" start="422" length="12" />
|
||||
<sequence name="die5" start="434" length="18" />
|
||||
</unit>
|
||||
<unit name="e4">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="shoot" start="64" length="16" facings="8" />
|
||||
<sequence name="crawl" start="208" length="4" facings="8" />
|
||||
<sequence name="prone-shoot" start="256" length="16" facings="8" />
|
||||
<sequence name="die5" start="546" length="18" />
|
||||
<sequence name="die4" start="534" length="12" />
|
||||
<sequence name="die3" start="526" length="8" />
|
||||
<sequence name="die2" start="518" length="8" />
|
||||
<sequence name="die1" start="509" length="9" />
|
||||
</unit>
|
||||
<unit name="e5">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="shoot" start="64" length="16" facings="8" />
|
||||
<sequence name="crawl" start="208" length="4" facings="8" />
|
||||
<sequence name="prone-shoot" start="256" length="16" facings="8" />
|
||||
<sequence name="die5" start="546" length="18" />
|
||||
<sequence name="die4" start="534" length="12" />
|
||||
<sequence name="die3" start="526" length="8" />
|
||||
<sequence name="die2" start="518" length="8" />
|
||||
<sequence name="die1" start="509" length="9" />
|
||||
</unit>
|
||||
<unit name="e6">
|
||||
<sequence name="stand" start="0" length="1" facings="8" />
|
||||
<sequence name="stand2" start="8" length="1" facings="8" />
|
||||
<sequence name="run" start="16" length="6" facings="8" />
|
||||
<sequence name="crawl" start="82" length="4" facings="8" />
|
||||
<sequence name="die5" start="182" length="18" />
|
||||
<sequence name="die4" start="170" length="12" />
|
||||
<sequence name="die3" start="162" length="8" />
|
||||
<sequence name="die2" start="154" length="8" />
|
||||
<sequence name="die1" start="145" length="9" />
|
||||
</unit>
|
||||
</sequences>
|
||||
@@ -71,7 +71,7 @@ Report=GUN18
|
||||
[M16]
|
||||
Damage=15
|
||||
ROF=20
|
||||
Range=2
|
||||
Range=4
|
||||
Projectile=Invisible
|
||||
Speed=100
|
||||
Warhead=SA
|
||||
@@ -82,7 +82,7 @@ Report=MGUN2
|
||||
[Rockets]
|
||||
Damage=30
|
||||
ROF=60
|
||||
Range=4
|
||||
Range=6
|
||||
Projectile=HeatSeeker
|
||||
Speed=25
|
||||
Warhead=AP
|
||||
@@ -123,7 +123,7 @@ Report=FLAMER2
|
||||
[Grenade]
|
||||
Damage=50
|
||||
ROF=50
|
||||
Range=3.25
|
||||
Range=5
|
||||
Projectile=Lobbed
|
||||
Speed=5
|
||||
Warhead=HE
|
||||
@@ -335,6 +335,7 @@ AA=yes
|
||||
Image=DRAGON
|
||||
ROT=5
|
||||
Rotates=yes
|
||||
Trail=smokey
|
||||
|
||||
; anti aircraft missile
|
||||
[AAMissile]
|
||||
|
||||
Reference in New Issue
Block a user