Пример #1
0
    public void AddRegionalEffect(RegionalEffect effect)
    {
        this.regionalEffects.Add(effect);
        for (int i = 0; i < effect.Definition.Descriptors.Length; i++)
        {
            base.AddDescriptor(effect.Definition.Descriptors[i], true);
        }
        this.Refresh(false);
        IEventService service = Services.GetService <IEventService>();

        if (service != null)
        {
            IGameEntityRepositoryService service2 = this.gameService.Game.Services.GetService <IGameEntityRepositoryService>();
            if (service2 != null)
            {
                Kaiju kaiju = null;
                service2.TryGetValue <Kaiju>(effect.OwnerGUID, out kaiju);
                if (kaiju != null)
                {
                    EventCityAddRegionalEffects eventToNotify = new EventCityAddRegionalEffects(this.Empire, this, kaiju);
                    service.Notify(eventToNotify);
                }
            }
        }
    }
Пример #2
0
 public void ClearRegionalEffects()
 {
     for (int i = 0; i < this.regionalEffects.Count; i++)
     {
         RegionalEffect regionalEffect = this.regionalEffects[i];
         for (int j = 0; j < regionalEffect.Definition.Descriptors.Length; j++)
         {
             base.RemoveDescriptor(regionalEffect.Definition.Descriptors[j]);
         }
     }
     this.regionalEffects.Clear();
 }