Skip to content

Commit

Permalink
Fixed errors when loading custom menus
Browse files Browse the repository at this point in the history
  • Loading branch information
OmerBenGera committed Feb 26, 2022
1 parent ee529aa commit 04e0cfb
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 6 deletions.
Expand Up @@ -6,12 +6,11 @@
import com.bgsoftware.superiorskyblock.api.objects.Pair;
import com.bgsoftware.superiorskyblock.api.wrappers.SuperiorPlayer;
import com.bgsoftware.superiorskyblock.commands.ISuperiorCommand;
import com.bgsoftware.superiorskyblock.lang.PlayerLocales;
import com.bgsoftware.superiorskyblock.menu.SuperiorMenu;
import com.bgsoftware.superiorskyblock.menu.file.MenuPatternSlots;
import com.bgsoftware.superiorskyblock.menu.pattern.impl.RegularMenuPattern;
import com.bgsoftware.superiorskyblock.utils.FileUtils;
import com.bgsoftware.superiorskyblock.lang.PlayerLocales;
import com.google.common.collect.Sets;
import com.google.common.collect.Maps;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.ConfigurationSection;
Expand Down Expand Up @@ -51,7 +50,7 @@ public static void createMenu(File file) {
RegularMenuPattern.Builder<SuperiorMenuCustom> patternBuilder = new RegularMenuPattern.Builder<>();

Pair<MenuPatternSlots, CommentedConfiguration> menuLoadResult = FileUtils.loadMenu(patternBuilder,
fileName, null);
fileName, true, null);

if (menuLoadResult == null)
return;
Expand Down Expand Up @@ -83,7 +82,7 @@ public static void createMenu(File file) {

public static void openInventory(SuperiorPlayer superiorPlayer, String fileName, ISuperiorMenu previousMenu) {
RegularMenuPattern<SuperiorMenuCustom> menuPattern = customMenus.get(fileName.toLowerCase());
if(menuPattern != null)
if (menuPattern != null)
new SuperiorMenuCustom(menuPattern, superiorPlayer, fileName).open(previousMenu);
}

Expand Down
15 changes: 13 additions & 2 deletions src/main/java/com/bgsoftware/superiorskyblock/utils/FileUtils.java
Expand Up @@ -154,9 +154,20 @@ public static <M extends ISuperiorMenu> Pair<MenuPatternSlots, CommentedConfigur
SuperiorMenuPattern.AbstractBuilder<?, ?, M> menuPattern,
String fileName,
@Nullable BiFunction<SuperiorSkyblockPlugin, YamlConfiguration, Boolean> convertOldMenu) {
File file = new File(plugin.getDataFolder(), "menus/" + fileName);
return loadMenu(menuPattern, fileName, false, convertOldMenu);
}

@Nullable
public static <M extends ISuperiorMenu> Pair<MenuPatternSlots, CommentedConfiguration> loadMenu(
SuperiorMenuPattern.AbstractBuilder<?, ?, M> menuPattern,
String fileName,
boolean customMenu,
@Nullable BiFunction<SuperiorSkyblockPlugin, YamlConfiguration, Boolean> convertOldMenu) {
String menuPath = customMenu ? "custom/" : "";

File file = new File(plugin.getDataFolder(), "menus/" + menuPath + fileName);

if (!file.exists())
if (!file.exists() && !customMenu)
FileUtils.saveResource("menus/" + fileName);

CommentedConfiguration cfg = new CommentedConfiguration();
Expand Down

0 comments on commit 04e0cfb

Please sign in to comment.