Beispiel #1
0
 public CaptureActor(Actor self, Actor target)
     : base(self, target, EnterBehaviour.Dispose)
 {
     actor = target;
     building = actor.TraitOrDefault<Building>();
     capturesInfo = self.Info.TraitInfo<CapturesInfo>();
     capturable = target.Trait<Capturable>();
     health = actor.Trait<Health>();
 }
Beispiel #2
0
 public CaptureActor(Actor self, Actor target)
     : base(self, target)
 {
     actor = target;
     building = actor.TraitOrDefault<Building>();
     capturesInfo = self.Info.Traits.Get<CapturesInfo>();
     capturable = target.Trait<Capturable>();
     health = actor.Trait<Health>();
 }
Beispiel #3
0
        void ChangeInfluence( Actor a, Building building, bool isAdd )
        {
            foreach( var u in Footprint.UnpathableTiles( a.Info.Name, a.Info.Traits.Get<BuildingInfo>(), a.Location ) )
                if( map.IsInMap( u ) )
                    blocked[ u.X, u.Y ] = isAdd;

            foreach( var u in Footprint.Tiles( a.Info.Name, a.Info.Traits.Get<BuildingInfo>(), a.Location ) )
                if( map.IsInMap( u ) )
                    influence[ u.X, u.Y ] = isAdd ? a : null;
        }
Beispiel #4
0
 void INotifyCreated.Created(Actor self)
 {
     building = self.TraitOrDefault<Building>();
 }