Exemple #1
0
        private static void ShowWorlds()
        {
            ICustomShowableLayoutedMenu worldsPermissionsPopup = ExpansionKitApi.CreateCustomFullMenuPopup(LayoutDescription.WideSlimList);

            if (WorldPermissionHandler.BlacklistedWorlds.Count > 0)
            {
                worldsPermissionsPopup.AddLabel("Blacklisted Worlds");
                foreach (WorldPermissionHandler.PermissionEntry blacklistedWorld in WorldPermissionHandler.BlacklistedWorlds)
                {
                    worldsPermissionsPopup.AddSimpleButton(
                        blacklistedWorld.WorldName,
                        () =>
                    {
                        worldsPermissionsPopup.Hide();
                        WorldPermissionHandler.RemoveFromBlacklist(blacklistedWorld.WorldId);
                        WorldPermissionHandler.SaveSettings();
                        ShowWorlds();
                    });
                }

                worldsPermissionsPopup.AddSpacer();
            }

            worldsPermissionsPopup.AddSimpleButton("Close", () => worldsPermissionsPopup.Hide());
            worldsPermissionsPopup.Show();
        }
Exemple #2
0
        private static void BlacklistWorld()
        {
            ApiWorld currentWorld = Object.FindObjectOfType <PageWorldInfo>()?.field_Private_ApiWorld_0;

            if (currentWorld == null)
            {
                return;
            }

            if (WorldPermissionHandler.IsBlacklisted(currentWorld.id))
            {
                WorldPermissionHandler.RemoveFromBlacklist(currentWorld.id);
                MelonLogger.Msg($"{currentWorld.name} removed from blacklist");
                Utilities.QueueHudMessage($"{currentWorld.name} removed from blacklist");
            }
            else
            {
                WorldPermissionHandler.AddToBlacklist(currentWorld);
                MelonLogger.Msg($"{currentWorld.name} added to blacklist");
                Utilities.QueueHudMessage($"{currentWorld.name} added to blacklist");
            }

            WorldPermissionHandler.SaveSettings();
        }