Exemplo n.º 1
0
 public void SetContent(IAssignableIdentity identity_object, Action <IAssignableIdentity> selectionCallback, AssignableSideScreen assignableSideScreen)
 {
     if (refreshHandle == -1)
     {
         Game.Instance.Unsubscribe(refreshHandle);
     }
     refreshHandle = Game.Instance.Subscribe(-2146166042, delegate
     {
         if ((UnityEngine.Object) this != (UnityEngine.Object)null && (UnityEngine.Object)base.gameObject != (UnityEngine.Object)null && base.gameObject.activeInHierarchy)
         {
             Refresh(null);
         }
     });
     toggle         = GetComponent <MultiToggle>();
     sideScreen     = assignableSideScreen;
     targetIdentity = identity_object;
     if ((UnityEngine.Object)portraitInstance == (UnityEngine.Object)null)
     {
         portraitInstance = Util.KInstantiateUI <CrewPortrait>(crewPortraitPrefab.gameObject, base.gameObject, false);
         portraitInstance.transform.SetSiblingIndex(1);
         portraitInstance.SetAlpha(1f);
     }
     toggle.onClick = delegate
     {
         selectionCallback(targetIdentity);
     };
     portraitInstance.SetIdentityObject(identity_object, false);
     GetComponent <ToolTip>().OnToolTip = GetTooltip;
     Refresh(null);
 }
 /// <summary>
 /// Initializes the row with a specific Duplicant/group and the parent side screen.
 /// </summary>
 /// <param name="minion">The Duplicant to display.</param>
 /// <param name="parent">The parent of this side screen row.</param>
 public void SetContent(IAssignableIdentity minion, WorkshopProfileSideScreen parent)
 {
     sideScreen     = parent;
     targetIdentity = minion;
     // Create the picture of the Duplicant's head
     if (portraitInstance == null)
     {
         portraitInstance = Util.KInstantiateUI <CrewPortrait>(crewPortraitPrefab.
                                                               gameObject, gameObject, false);
         portraitInstance.transform.SetSiblingIndex(1);
         portraitInstance.SetAlpha(1f);
     }
     portraitInstance.SetIdentityObject(minion, false);
     Refresh();
 }
Exemplo n.º 3
0
 public void SetMinionContent(MinionAssignablesProxy identity, AccessControl.Permission permission, bool isDefault, Action <MinionAssignablesProxy, AccessControl.Permission> onPermissionChange, Action <MinionAssignablesProxy, bool> onDefaultClick)
 {
     SetContent(permission, onPermissionChange);
     if ((UnityEngine.Object)identity == (UnityEngine.Object)null)
     {
         Debug.LogError("Invalid data received.");
     }
     else
     {
         if ((UnityEngine.Object)portraitInstance == (UnityEngine.Object)null)
         {
             portraitInstance = Util.KInstantiateUI <CrewPortrait>(crewPortraitPrefab.gameObject, defaultButton.gameObject, false);
             portraitInstance.SetAlpha(1f);
         }
         targetIdentity = identity;
         portraitInstance.SetIdentityObject(identity, false);
         portraitInstance.SetSubTitle((!isDefault) ? UI.UISIDESCREENS.ACCESS_CONTROL_SIDE_SCREEN.USING_CUSTOM : UI.UISIDESCREENS.ACCESS_CONTROL_SIDE_SCREEN.USING_DEFAULT);
         defaultClickedCallback = null;
         defaultButton.isOn     = !isDefault;
         defaultClickedCallback = onDefaultClick;
     }
 }