コード例 #1
0
 public override bool UseItem(Player player)
 {
     if (!Subworld.AnyActive <Macrocosm>())
     {
         Subworld.Enter <Moon>();
     }
     else
     {
         Subworld.Exit();
     }
     return(true);
 }
コード例 #2
0
        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);
        }
コード例 #3
0
 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);
     }
 }
コード例 #4
0
ファイル: mv.cs プロジェクト: withertech/Multiverse
        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();
            }
        }
コード例 #5
0
 public override bool UseItem(Player player)
 {
     Subworld.Exit();
     return(true);
 }
コード例 #6
0
 public static void ExitSubworld(bool novote = false)
 {
     SGAmod.exitingSubworld = true;
     SLWorld.noReturn       = false;
     Subworld.Exit(novote);
 }