Skip to content

Commit fc0645a

Browse files
committed
Reenable resourcepack injection, but in a sub-folder. Automatically create folder structure. Remove the book list setting from the config.
1 parent 1ae5470 commit fc0645a

File tree

3 files changed

+30
-8
lines changed

3 files changed

+30
-8
lines changed

src/main/java/gigaherz/guidebook/GuidebookMod.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,14 +70,10 @@ public void preInit(FMLPreInitializationEvent event)
7070
logger = event.getModLog();
7171

7272
Configuration config = new Configuration(event.getSuggestedConfigurationFile());
73-
String[] books = config.get("Books", "BookList", new String[]{GuidebookMod.location("xml/guidebook.xml").toString()}).getStringList();
7473
String[] give = config.get("Books", "GiveOnFirstJoin", new String[0]).getStringList();
7574
bookGUIScale = config.get("general", "BookGUIScale", -1, "-1 for same as GUI scale, 0 for auto, 1+ for small/medium/large").getInt();
7675
config.save();
7776

78-
for (String book : books)
79-
{ BookRegistry.registerBook(new ResourceLocation(book)); }
80-
8177
giveOnFirstJoin = Lists.newArrayList(give);
8278

8379
booksDirectory = new File(event.getModConfigurationDirectory(), "books");

src/main/java/gigaherz/guidebook/client/ClientProxy.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public static void registerModels(ModelRegistryEvent event)
4444
@Override
4545
public void preInit()
4646
{
47-
//injectCustomResourcePack();
47+
injectCustomResourcePack();
4848

4949
MinecraftForge.EVENT_BUS.post(new BookRegistryEvent());
5050
}
@@ -54,16 +54,29 @@ public void preInit()
5454
@SuppressWarnings("unchecked")
5555
private void injectCustomResourcePack()
5656
{
57-
File booksFolder = GuidebookMod.booksDirectory;
57+
File resourcesFolder = new File(GuidebookMod.booksDirectory, "resources");
5858

59-
if (!booksFolder.exists() || !booksFolder.isDirectory())
59+
if (!resourcesFolder.exists())
60+
{
61+
GuidebookMod.logger.info("The resources folder does not exist, creating...");
62+
if (!resourcesFolder.mkdirs())
63+
{
64+
GuidebookMod.logger.info("The resources folder could not be created, and it won't be injected as a resource pack folder.");
65+
return;
66+
}
67+
}
68+
69+
if (!resourcesFolder.exists() || !resourcesFolder.isDirectory())
70+
{
71+
GuidebookMod.logger.info("There's a file called books, but it's not a directory, so it won't be injected as a resource pack folder.");
6072
return;
73+
}
6174

6275
try
6376
{
6477
List<IResourcePack> rp = (List<IResourcePack>) _defaultResourcePacks.get(Minecraft.getMinecraft());
6578

66-
rp.add(new FolderResourcePack(booksFolder)
79+
rp.add(new FolderResourcePack(resourcesFolder)
6780
{
6881
String prefix = "assets/" + GuidebookMod.MODID + "/";
6982

src/main/java/gigaherz/guidebook/guidebook/client/BookRegistry.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,21 @@ private static void loadRawBookFiles(IResourceManager manager)
120120
{
121121
File booksFolder = GuidebookMod.booksDirectory;
122122

123+
if (!booksFolder.exists())
124+
{
125+
GuidebookMod.logger.info("The books folder does not exist, creating...");
126+
if (!booksFolder.mkdirs())
127+
{
128+
GuidebookMod.logger.info("The books folder could not be created. Books can't be loaded from it.");
129+
return;
130+
}
131+
}
132+
123133
if (!booksFolder.exists() || !booksFolder.isDirectory())
134+
{
135+
GuidebookMod.logger.info("There's a file called books, but it's not a directory. Books can't be loaded from it.");
124136
return;
137+
}
125138

126139
Collection<File> xmlFiles = FileUtils.listFiles(booksFolder, new String[]{"xml"}, true);
127140

0 commit comments

Comments
 (0)