public RenderBuildingWarFactory(ActorInitializer init, RenderBuildingInfo info) : base(init, info) { roof = new Animation(GetImage(init.self)); var offset = new AnimationWithOffset( roof ) { ZOffset = 24 }; offset.DisableFunc = () => !buildComplete; anims.Add("roof", offset); }
public RenderBuildingWarFactory(ActorInitializer init, RenderBuildingInfo info) : base(init, info) { roof = new Animation(init.world, GetImage(init.self)); var bi = init.self.Info.Traits.Get<BuildingInfo>(); // Additional 512 units move from center -> top of cell var offset = FootprintUtils.CenterOffset(bi).Y + 512; Add("roof", new AnimationWithOffset(roof, null, () => !buildComplete, offset)); }
public RenderBuilding( ActorInitializer init, RenderBuildingInfo info, Func<int> baseFacing ) : base(init.self, baseFacing) { Info = info; var self = init.self; // Work around a bogus crash anim.PlayRepeating( NormalizeSequence(self, "idle") ); // Can't call Complete() directly from ctor because other traits haven't been inited yet if (self.Info.Traits.Get<RenderBuildingInfo>().HasMakeAnimation && !init.Contains<SkipMakeAnimsInit>()) self.QueueActivity(new MakeAnimation(self, () => Complete(self))); else self.QueueActivity(new CallFunc(() => Complete(self))); }
public RenderBuildingRefinery(ActorInitializer init, RenderBuildingInfo info) : base(init, info) { playerResources = init.self.Owner.PlayerActor.Trait<PlayerResources>(); lights = new Animation(GetImage(init.self)); lights.PlayFetchIndex("lights", () => playerResources.OreCapacity != 0 ? (59 * playerResources.Ore) / (10 * playerResources.OreCapacity) : 0); var offset = new float2(-32,-21); anims.Add("lights", new AnimationWithOffset( lights, wr => offset, () => !buildComplete ) { ZOffset = 24 }); }
public RenderBuildingRefinery(ActorInitializer init, RenderBuildingInfo info) : base(init, info) { playerResources = init.self.Owner.PlayerActor.Trait <PlayerResources>(); lights = new Animation(GetImage(init.self)); lights.PlayFetchIndex("lights", () => playerResources.OreCapacity != 0 ? (59 * playerResources.Ore) / (10 * playerResources.OreCapacity) : 0); var offset = new float2(-32, -21); anims.Add("lights", new AnimationWithOffset(lights, () => offset, () => !buildComplete) { ZOffset = 24 }); }
public RenderBuildingWall( ActorInitializer init, RenderBuildingInfo info ) : base(init, info) { seqName = "idle"; }
public RenderBuilding( ActorInitializer init, RenderBuildingInfo info ) : this(init, info, () => 0) { }
public RenderBuildingTurreted( ActorInitializer init, RenderBuildingInfo info ) : base(init, info, () => init.self.Trait<Turreted>().turretFacing) { }
public RenderBuildingSilo( ActorInitializer init, RenderBuildingInfo info ) : base(init, info) { playerResources = init.self.Owner.PlayerActor.Trait<PlayerResources>(); }
public RenderBuildingCharge( ActorInitializer init, RenderBuildingInfo info ) : base(init, info) { }