public override bool UseItem(Player player) { if (!Subworld.AnyActive <Macrocosm>()) { Subworld.Enter <Moon>(); } else { Subworld.Exit(); } return(true); }
public override void OnChatButtonClicked(bool firstButton, ref bool shop) { if (firstButton && NPC.downedBoss3 && !DungeonWorld.DungeonSubworld.inDungeon) { Subworld.Enter <DungeonSubworld>(); } var obj = typeof(Subworld).GetField("subworlds", BindingFlags.Static | BindingFlags.NonPublic).GetValue(null); if (firstButton && DungeonWorld.DungeonSubworld.inDungeon) { Subworld.Exit(); } base.OnChatButtonClicked(firstButton, ref shop); }
public static void TeleportCorrectWorld(bool noVote = false) { if (Subworld.IsActive <ShipSubworld>())//based on active subworld, may change to use active subworld ID { //Main.NewText(planetArray[SelectedPlanet].EntryString); if (planetArray[SelectedPlanet].EntryString == string.Empty) { Subworld.Exit(noVote); } else { Subworld.Enter(planetArray[SelectedPlanet].EntryString, noVote); } } else { Subworld.Enter <ShipSubworld>(noVote); } }
public override void Action(CommandCaller caller, string input, string[] args) { if (args.Length > 0 && Main.netMode != NetmodeID.Server) { switch (args[0]) { case "enter": Subworld.Enter(SubworldManager.WorldsEnter[args[1]]); Main.NewText(caller.Player.name + " Entered " + args[1], 0, 255, 0); break; case "leave": Subworld.Exit(); Main.NewText(caller.Player.name + " Entered Main World", 0, 255, 0); break; case "list": foreach (KeyValuePair <string, string> entry in SubworldManager.WorldsEnter) { Main.NewText(entry.Key, 0, 255, 0); } break; case "gui": switch (args[1]) { case "on": Multiverse.instance.ShowMyUI(); break; case "off": Multiverse.instance.HideMyUI(); break; } break; } } else { throw new UsageException(); } }
public override bool UseItem(Player player) { Subworld.Exit(); return(true); }
public static void ExitSubworld(bool novote = false) { SGAmod.exitingSubworld = true; SLWorld.noReturn = false; Subworld.Exit(novote); }