public static void Postfix(global::Planetbase.GuiMenuSystem __instance) { var buttonIcon = TypeList <ModuleType, ModuleTypeList> .find(typeof(ModuleTypeStorage).Name).getIcon(); //Create the new button var pauseMenuItem = new GuiMenuItem( buttonIcon, StringList.get("menu_deliver"), parameter => { if (DeliveriesMod.ActiveDeliveryShip) { return; } DeliveriesMod.ActiveDeliveryShip = true; var startPosition = ((GameStateGame)GameManager.getInstance().mGameState).findStartPosition(); DeliveriesMod.Ship = global::Planetbase.ColonyShip.create( startPosition + Vector3.up * 100f, startPosition, PlanetManager.getCurrentPlanet().getStartingResources() ); } ); //Add the new button to the main GUI menu and reorder it var mainMenu = __instance.mMenuMain; mainMenu.mItems.Remove(__instance.mItemHelp); mainMenu.addItem(pauseMenuItem); mainMenu.addItem(__instance.mItemHelp); }
public static void Postfix(global::Planetbase.GuiMenuSystem __instance) { var timeManager = Singleton <global::Planetbase.TimeManager> .getInstance(); var modInstance = ModLoader.GetModByType <TimeMod>().First(); var pauseMenuItem = new GuiMenuItem( modInstance.ModTextures.FindTextureWithName("pause button.png"), StringList.get("menu_pause"), parameter => { if (timeManager.mPaused) { timeManager.unpause(); WasManuallyPaused = false; } else { timeManager.pause(); WasManuallyPaused = true; } } ); var menuSpeed = __instance.mMenuSpeed; menuSpeed.mItems.Remove(__instance.mItemSpeedFaster); menuSpeed.mItems.Remove(menuSpeed.mBackItem); menuSpeed.addItem(pauseMenuItem); menuSpeed.addItem(__instance.mItemSpeedFaster); menuSpeed.addItem(menuSpeed.mBackItem); }
// Use this for initialization public MainMenu(XmlNodeList nodes) { _bg = new Sprite(Resources.Load("mainMenu/component/mainMenuBg", typeof(Texture2D)) as Texture2D); _bg.width = _menuWidth; _bg.height = _menuHeight; addChild(_bg); for (int i=0; i<nodes.Count; i++){ GuiMenuItem item = new GuiMenuItem(); item.selectedTexture = Resources.Load("mainMenu/icon/" + nodes[i].Attributes["icon"].Value+"-b", typeof(Texture2D)) as Texture2D; item.defaultTexture = Resources.Load("mainMenu/icon/" + nodes[i].Attributes["icon"].Value, typeof(Texture2D)) as Texture2D; if (nodes[i].Attributes["iOSNativeCode"] != null){ item.iOSNativeCode = nodes[i].Attributes["iOSNativeCode"].Value; typeof(UIBinding).InvokeMember("ActivateUI"+item.iOSNativeCode, BindingFlags.Default | BindingFlags.InvokeMethod, null, null, new object[]{ }); typeof(UIBinding).InvokeMember("DeactivateUI"+item.iOSNativeCode, BindingFlags.Default | BindingFlags.InvokeMethod, null, null, new object[]{ }); } addItem(item); } }
public SubMenu(XmlNodeList nodes) { _nodes = nodes; _bg = new Sprite(Resources.Load("mainmenu/component/subMenuBg", typeof(Texture2D)) as Texture2D); _bg.width = _menuWidth; _bg.height = _menuHeight; addChild(_bg); _subMenuBg = new SubMenuBg(); _subMenuBg.y = 6; addChild(_subMenuBg); for (int i=0; i<nodes.Count; i++){ GuiMenuItem item = new GuiMenuItem(); item.selectedTexture = Resources.Load("mainmenu/sub/"+nodes[i].Attributes["icon"].Value, typeof(Texture2D)) as Texture2D; item.defaultTexture = Resources.Load("mainmenu/sub/"+nodes[i].Attributes["icon"].Value, typeof(Texture2D)) as Texture2D; addItem(item); } }
/// <summary> /// Ajoute l'item donné à la liste des items. /// </summary> /// <param name="item"></param> public void AddItem(GuiMenuItem item) { m_items.Add(item); ComputeItemsSize(); }