Adds minibibs for bibless buildings in RA and C&C.

This commit is contained in:
Kanar
2014-03-19 06:02:25 +01:00
parent 5f31fbb009
commit fc2d0510d8
72 changed files with 176 additions and 4 deletions

View File

@@ -19,6 +19,7 @@ namespace OpenRA.Mods.RA.Buildings
{
public readonly string Sequence = "bib";
public readonly string Palette = "terrain";
public readonly bool HasMinibib = false;
public object Create(ActorInitializer init) { return new Bib(init.self, this); }
}
@@ -42,7 +43,12 @@ namespace OpenRA.Mods.RA.Buildings
var centerOffset = FootprintUtils.CenterOffset(building);
var location = self.Location;
tiles = new List<AnimationWithOffset>();
for (var i = 0; i < 2*width; i++)
int rows = 2;
if (info.HasMinibib)
rows = 1;
for (var i = 0; i < rows * width; i++)
{
var index = i;
var anim = new Animation(rs.GetImage(self));

View File

@@ -65,7 +65,8 @@ namespace OpenRA.Mods.RA.Buildings
return false;
var buildingMaxBounds = (CVec)Dimensions;
if (Rules.Info[buildingName].Traits.Contains<BibInfo>())
var buildingTraits = Rules.Info[buildingName].Traits;
if (buildingTraits.Contains<BibInfo>() && !(buildingTraits.Get<BibInfo>().HasMinibib))
buildingMaxBounds += new CVec(0, 1);
var scanStart = world.ClampToWorld(topLeft - new CVec(Adjacent, Adjacent));

View File

@@ -22,7 +22,8 @@ namespace OpenRA.Mods.RA.Buildings
var footprint = buildingInfo.Footprint.Where(x => !char.IsWhiteSpace(x));
if (Rules.Info[ name ].Traits.Contains<BibInfo>())
var buildingTraits = Rules.Info[name].Traits;
if (buildingTraits.Contains<BibInfo>() && !(buildingTraits.Get<BibInfo>().HasMinibib))
{
dim += new CVec(0, 1);
footprint = footprint.Concat(new char[dim.X]);