예제 #1
0
 public void SetPsionic(LogicalPsionic primary)
 {
     if (primary == null)
     {
         return;
     }
     this.UI.SetPropertyString("moduleIcon", "sprite", primary.Icon);
     this.UI.SetVisible("moduleIcon", true);
     this.UI.SetText("moduleTitle", primary.PsionicTitle ?? string.Empty);
     this.UI.SetText("moduleAbility", primary.Description ?? string.Empty);
 }
예제 #2
0
 public PsionicSelectorItem(UICommChannel ui, string id, LogicalPsionic module)
     : base(ui, id, "WeaponSelectorIcon")
 {
     if (module == null)
     {
         throw new ArgumentNullException(nameof(module));
     }
     this.Psionic = module;
     this._selectedOverlayImage = new Image(ui, this.UI.Path(id, "selectedOverlay"));
     this.SetSprite(module.Icon);
     this.UI.SetPostMouseOverEvents(this.ID, true);
 }
예제 #3
0
 public void SetAvailablePsionics(
     IEnumerable <LogicalPsionic> modules,
     LogicalPsionic selected,
     bool enableSelection = true)
 {
     if (enableSelection)
     {
         this._page.DetachItems();
     }
     this.DisposeItems();
     this._items.Clear();
     foreach (PsionicSelectorItem psionicSelectorItem in modules.Select <LogicalPsionic, PsionicSelectorItem>((Func <LogicalPsionic, PsionicSelectorItem>)(module => new PsionicSelectorItem(this.UI, Guid.NewGuid().ToString(), module))))
     {
         this._items[psionicSelectorItem.ID] = psionicSelectorItem;
     }
     if (enableSelection)
     {
         PsionicSelectorItem psionicSelectorItem1 = new PsionicSelectorItem(this.UI, Guid.NewGuid().ToString(), new LogicalPsionic()
         {
             Name         = "No Psionic",
             PsionicTitle = "No Psionic",
             Description  = "The selected psionic slot will be empty.",
             Icon         = "moduleicon_no_selection"
         });
         this._items[psionicSelectorItem1.ID] = psionicSelectorItem1;
         bool flag = false;
         if (selected != null)
         {
             PsionicSelectorItem psionicSelectorItem2 = this._items.Values.FirstOrDefault <PsionicSelectorItem>((Func <PsionicSelectorItem, bool>)(x => x.Psionic == selected));
             if (psionicSelectorItem2 != null)
             {
                 this.HoverItem(psionicSelectorItem2);
                 flag = true;
             }
         }
         if (!flag)
         {
             this.HoverItem(psionicSelectorItem1);
         }
     }
     this._page.ReplaceItems((IEnumerable <PsionicSelectorItem>) this._items.Values, enableSelection);
 }