void CreateFlagBrowser()
        {
            flagBrowser = Instantiate <FlagBrowser> (flagBrowserPrefab);

            flagBrowser.OnDismiss      = OnFlagCancel;
            flagBrowser.OnFlagSelected = OnFlagSelected;
        }
示例#2
0
        public void GetNameTag()
        {
            nameTagURL = HighLogic.CurrentGame.flagURL;
            FlagBrowser flagBrowser = (UnityEngine.Object.Instantiate((UnityEngine.Object)(new FlagBrowserGUIButton(null, null, null, null)).FlagBrowserPrefab) as GameObject).GetComponent <FlagBrowser>();

            flagBrowser.OnFlagSelected = onFlagSelected;
        }
 void OnFlagSelected(FlagBrowser.FlagEntry selected)
 {
     control.flagname = selected.textureInfo.name;
     flagTexture      = selected.textureInfo.texture;
     UpdateFlagTexture();
     flagBrowser = null;
 }
 public void SelectFlag()
 {
     if (fb == null)
     {
         fb = JUtil.CreateFlagSelectorWindow(this, FlagSelected, FlagDismissed);
     }
 }
 public void FlagSelected(FlagBrowser.FlagEntry selected)
 {
     if (FlightGlobals.ActiveVessel.isEVA && (FlightGlobals.ActiveVessel.Parts [0].Modules [0] as KerbalEVA).flagItems > 0) {
         FlightGlobals.ActiveVessel.Parts [0].flagURL = selected.textureInfo.name;
         ScreenMessages.PostScreenMessage (string.Format ("{0} took a different flag from storage.", FlightGlobals.ActiveVessel.GetName ()));
     }
     Destroy (fb);
 }
示例#6
0
 private void OnFlagSelected(FlagBrowser.FlagEntry selected)
 {
     if (selected?.textureInfo?.name != null)
     {
         SetFlagSelectedFlag(selected.textureInfo.name);
     }
     flagBrowser = null;
 }
 public void FlagSelected(FlagBrowser.FlagEntry selected)
 {
     selectedFlag = selected.textureInfo.name;
     ChangeFlag ();
     Destroy (fb);
     JUtil.LogMessage (this, "Selected flag {0}", selectedFlag);
     flagWasSelected = true;
 }
示例#8
0
 private void ShowFlagBrowser()
 {
     if (flagBrowser == null)
     {
         flagBrowser = (UnityEngine.Object.Instantiate((UnityEngine.Object)(new FlagBrowserGUIButton(null, null, null, null)).FlagBrowserPrefab) as GameObject).GetComponent <FlagBrowser>();
         flagBrowser.OnFlagSelected = this.OnFlagSelected;
         flagBrowser.OnDismiss      = this.OnFlagCancelled;
     }
 }
示例#9
0
        public void doStuff()
        {
            button.SetTrue(false);

            /*
             * Credit to Mihara for their code on how to get the FlagBrowser prefab.
             * https://github.com/Mihara/PartUtilities/blob/bcbd90522a1117fbd04a361d1544fc3612d6ffe3/PartUtilities/UtilityFunctions.cs#L28-L41
             */
            this.flagBrowser = Utils.getFlagBrowser(OnFlagSelected, OnFlagBrowserDismiss);
        }
示例#10
0
        public void doStuff()
        {
            button.SetTrue(false);

            /*
             * Credit to Mihara for their code on how to get the FlagBrowser prefab.
             * https://github.com/Mihara/PartUtilities/blob/bcbd90522a1117fbd04a361d1544fc3612d6ffe3/PartUtilities/UtilityFunctions.cs#L28-L41
             */
            this.flagBrowser = Utils.getFlagBrowser(OnFlagSelected, OnFlagBrowserDismiss);
        }
示例#11
0
        public static FlagBrowser getFlagBrowser(FlagBrowser.FlagSelectedCallback fbCallback = null, Callback fbDismissCallback = null)
        {
            FlagBrowser fb = (UnityEngine.Object.Instantiate((UnityEngine.Object)(new FlagBrowserGUIButton(null, null, null, null)).FlagBrowserPrefab) as GameObject).GetComponent<FlagBrowser>();
            if (fbCallback != null)
                fb.OnFlagSelected += fbCallback;
            if (fbDismissCallback != null)
                fb.OnDismiss += fbDismissCallback;

            return fb;
        }
        internal void Start()
        {
            KACWrapper.InitKACWrapper();
            if (KACWrapper.APIReady)
            {
                //All good to go
                Debug.Log("KACWrapper initialized");
            }

            if (flagBrowserPrefab == null)
            {
                var fbObj = AssetBase.GetPrefab("FlagBrowser");
                flagBrowserPrefab = fbObj.GetComponent <FlagBrowser> ();
            }
        }
示例#13
0
        public static FlagBrowser CreateFlagSelectorWindow(object caller, FlagBrowser.FlagSelectedCallback selectedCallback, Callback dismissedCallback)
        {
            LogMessage(caller, "Creating flag selector window...");

            // I don't know the actual asset name for the flag prefab. There's probably a way to find it, but it's kind of tricky.
            // But FlagBrowserGUIButton class knows it!
            // So I create a dummy instance of it to get at the actual asset reference, and then replicate
            // what it's doing to create a flag browser window.
            var         sourceButton = new FlagBrowserGUIButton(null, null, null, null);
            FlagBrowser fb           = (UnityEngine.Object.Instantiate((UnityEngine.Object)sourceButton.FlagBrowserPrefab) as GameObject).GetComponent <FlagBrowser> ();

            fb.OnDismiss      = dismissedCallback;
            fb.OnFlagSelected = selectedCallback;
            return(fb);
        }
示例#14
0
        public static FlagBrowser getFlagBrowser(FlagBrowser.FlagSelectedCallback fbCallback = null, Callback fbDismissCallback = null)
        {
            FlagBrowser fb = (UnityEngine.Object.Instantiate((UnityEngine.Object)(new FlagBrowserGUIButton(null, null, null, null)).FlagBrowserPrefab) as GameObject).GetComponent <FlagBrowser>();

            if (fbCallback != null)
            {
                fb.OnFlagSelected += fbCallback;
            }
            if (fbDismissCallback != null)
            {
                fb.OnDismiss += fbDismissCallback;
            }

            return(fb);
        }
        private void onFlagSelect(FlagBrowser.FlagEntry selected)
        {
            this.hasFlagChanged = true;
            this.selectedFlag = selected.textureInfo.name;
            Utils.applyFlagToPart(this.part, selected);
            if (HighLogic.LoadedSceneIsFlight)
                Flight.Instance.updateButtonTexture();

            Events["resetFlag"].guiActive = Events["resetFlag"].guiActiveEditor = true;
        }
示例#16
0
 private void OnFlagCancelled()
 {
     flagBrowser = null;
 }
示例#17
0
 private void OnFlagSelected(FlagBrowser.FlagEntry selected)
 {
     Utils.applyFlagToVessel(FlightGlobals.fetch.activeVessel, selected);
     updateButtonTexture();
     this.button.SetFalse(false);
 }
 void OnFlagCancel()
 {
     flagBrowser = null;
 }
示例#19
0
 public static void applyFlagToPart(Part p, FlagBrowser.FlagEntry selected)
 {
     applyFlagToPart(p, selected.textureInfo.name);
 }
 public void SelectFlag()
 {
     if (fb == null) {
         fb = JUtil.CreateFlagSelectorWindow (this, FlagSelected, FlagDismissed);
     }
 }
示例#21
0
 public static int applyFlagToParts(List<Part> parts, FlagBrowser.FlagEntry selected)
 {
     return applyFlagToParts(parts, selected.textureInfo.name);
 }
示例#22
0
 // Look at all these overloads I can't hold!
 public static int applyFlagToVessel(Vessel v, FlagBrowser.FlagEntry selected)
 {
     return applyFlagToVessel(v, selected.textureInfo.name);
 }
示例#23
0
 public void changeFlag()
 {
     FlagBrowser fb = Utils.getFlagBrowser(onFlagSelect);
 }