Compare commits

...

6 Commits
1.0.1 ... main

@ -1,5 +1,6 @@
plugins { plugins {
id 'babric-loom' version '0.12-SNAPSHOT' id 'babric-loom' version '0.12-SNAPSHOT'
id 'com.github.johnrengelman.shadow' version '7.1.2'
id 'java' id 'java'
} }
@ -7,6 +8,23 @@ group = project.mod_group
archivesBaseName = project.mod_name archivesBaseName = project.mod_name
version = project.mod_version version = project.mod_version
//Begin shadowing weirdness
configurations {
shade
}
shadowJar {
archiveClassifier.set('shadow')
configurations = [project.configurations.shade]
}
tasks.assemble.dependsOn tasks.shadowJar
remapJar {
dependsOn(shadowJar)
inputFile.set(shadowJar.archiveFile)
}
//End shadowing weirdness
loom { loom {
gluedMinecraftJar() gluedMinecraftJar()
noIntermediateMappings() noIntermediateMappings()
@ -63,7 +81,7 @@ dependencies {
modImplementation "org.apache.logging.log4j:log4j-slf4j18-impl:2.16.0" modImplementation "org.apache.logging.log4j:log4j-slf4j18-impl:2.16.0"
//TOML //TOML
implementation 'com.moandjiezana.toml:toml4j:0.7.2' modImplementation include(shadow('com.moandjiezana.toml:toml4j:0.7.2'))
} }

@ -14,6 +14,6 @@ loader_version=0.14.6-babric.1
halplibe_version=1.0.9 halplibe_version=1.0.9
# Mod # Mod
mod_version=1.0.1 mod_version=1.0.2
mod_group=net.brokenmoon mod_group=net.brokenmoon
mod_name=afloydironchest mod_name=afloydironchest

@ -15,8 +15,6 @@ import turniplabs.halplibe.helper.BlockHelper;
import turniplabs.halplibe.helper.RecipeHelper; import turniplabs.halplibe.helper.RecipeHelper;
import java.io.*; import java.io.*;
import java.net.URISyntaxException;
import java.net.URL;
public class IronChestMain implements ModInitializer { public class IronChestMain implements ModInitializer {
@ -33,10 +31,10 @@ public class IronChestMain implements ModInitializer {
LOGGER.info("AFloydIronChest initialized."); LOGGER.info("AFloydIronChest initialized.");
//Config //Config
Toml toml = new Toml().read(this.getConfig()); Toml toml = new Toml().read(this.getConfig());
int ironChestId = toml.getLong("ids.ironChestID").intValue(); int ironChestId = toml.getLong("ids.ironChestID", (long)900).intValue();
int goldChestId = toml.getLong("ids.goldChestID").intValue(); int goldChestId = toml.getLong("ids.goldChestID", (long)901).intValue();
int diamondChestId = toml.getLong("ids.diamondChestID").intValue(); int diamondChestId = toml.getLong("ids.diamondChestID", (long)902).intValue();
int steelChestId = toml.getLong("ids.steelChestID").intValue(); int steelChestId = toml.getLong("ids.steelChestID", (long)903).intValue();
//Blocks //Blocks
@ -59,6 +57,7 @@ public class IronChestMain implements ModInitializer {
"steelchesttop.png", "steelchestbottom.png", "steelchesttop.png", "steelchestbottom.png",
"steelchestfront.png", "steelchestside.png", "steelchestside.png", "steelchestside.png", "steelchestfront.png", "steelchestside.png", "steelchestside.png", "steelchestside.png",
Block.soundMetalFootstep, 5, 6, 0); Block.soundMetalFootstep, 5, 6, 0);
//Recipes //Recipes
RecipeHelper.Crafting.createRecipe(IronChest, 1, new Object[]{ RecipeHelper.Crafting.createRecipe(IronChest, 1, new Object[]{
"AAA", "AAA",
@ -97,18 +96,21 @@ public class IronChestMain implements ModInitializer {
}); });
} }
public File getConfig(){ public static File getConfig() {
File config = new File("config/AstoriaIronChest.toml"); File config = new File("config/AstoriaIronChest.toml");
if (!config.exists()) { if (!config.exists()) {
LOGGER.warn("Config For afloydironchest Not Found! Creating new config based upon default :)"); LOGGER.warn("Config For afloydironchest Not Found! Creating new config based upon default :)");
InputStream in; InputStream in;
OutputStream out; OutputStream out;
try { try {
in = new FileInputStream(getDefaultConfig()); File configDir = new File("config");
if (!configDir.exists())
configDir.mkdir();
in = IronChestMain.class.getClassLoader().getResourceAsStream("assets/ironchest/config.toml");
out = new FileOutputStream(config); out = new FileOutputStream(config);
byte[] buffer = new byte[1024]; byte[] buffer = new byte[1024];
int length; int length;
while((length = in.read(buffer)) > 0){ while ((length = in.read(buffer)) > 0) {
out.write(buffer, 0, length); out.write(buffer, 0, length);
} }
return getConfig(); return getConfig();
@ -120,18 +122,4 @@ public class IronChestMain implements ModInitializer {
return config; return config;
} }
} }
}
public File getDefaultConfig() {
URL defaultConfig = getClass().getClassLoader().getResource("assets/ironchest/config.toml");
if (defaultConfig == null) {
LOGGER.warn("Default Config For afloydironchest Not Found! REAL BAD.");
} else {
try {
return new File(defaultConfig.toURI());
} catch (URISyntaxException e) {
throw new RuntimeException(e);
}
}
return null;
}
}

@ -1,5 +1,7 @@
package net.brokenmoon.afloydironchest.mixin; package net.brokenmoon.afloydironchest.mixin;
import com.moandjiezana.toml.Toml;
import net.brokenmoon.afloydironchest.IronChestMain;
import net.brokenmoon.afloydironchest.MixinInterfaces.IEntityPlayerMP; import net.brokenmoon.afloydironchest.MixinInterfaces.IEntityPlayerMP;
import net.brokenmoon.afloydironchest.gui.ContainerWideChest; import net.brokenmoon.afloydironchest.gui.ContainerWideChest;
import net.minecraft.src.*; import net.minecraft.src.*;
@ -17,6 +19,8 @@ public class MixinEntityPlayerMP implements IEntityPlayerMP {
@Shadow @Shadow
public NetServerHandler playerNetServerHandler; public NetServerHandler playerNetServerHandler;
public int ironchest_windowid = 0;
public void displayGUIIronChest(IInventory iinventory) { public void displayGUIIronChest(IInventory iinventory) {
this.getNextWindowId(); this.getNextWindowId();
NetServerHandler.logger.info(((EntityPlayerMP)(Object)this).username + " interacted with chest at (" + ((EntityPlayerMP)(Object)this).posX + ", " + ((EntityPlayerMP)(Object)this).posY + ", " + ((EntityPlayerMP)(Object)this).posZ + ")"); NetServerHandler.logger.info(((EntityPlayerMP)(Object)this).username + " interacted with chest at (" + ((EntityPlayerMP)(Object)this).posX + ", " + ((EntityPlayerMP)(Object)this).posY + ", " + ((EntityPlayerMP)(Object)this).posZ + ")");
@ -29,9 +33,19 @@ public class MixinEntityPlayerMP implements IEntityPlayerMP {
public void displayGUIDiamondChest(IInventory iinventory) { public void displayGUIDiamondChest(IInventory iinventory) {
this.getNextWindowId(); this.getNextWindowId();
NetServerHandler.logger.info(((EntityPlayerMP)(Object)this).username + " interacted with chest at (" + ((EntityPlayerMP)(Object)this).posX + ", " + ((EntityPlayerMP)(Object)this).posY + ", " + ((EntityPlayerMP)(Object)this).posZ + ")"); NetServerHandler.logger.info(((EntityPlayerMP)(Object)this).username + " interacted with chest at (" + ((EntityPlayerMP)(Object)this).posX + ", " + ((EntityPlayerMP)(Object)this).posY + ", " + ((EntityPlayerMP)(Object)this).posZ + ")");
this.playerNetServerHandler.sendPacket(new Packet100OpenWindow(this.currentWindowId, 7, iinventory.getInvName(), iinventory.getSizeInventory())); this.playerNetServerHandler.sendPacket(new Packet100OpenWindow(this.currentWindowId, getIronchest_windowid(), iinventory.getInvName(), iinventory.getSizeInventory()));
((EntityPlayerMP)(Object)this).craftingInventory = new ContainerWideChest(((EntityPlayerMP)(Object)this).inventory, iinventory); ((EntityPlayerMP)(Object)this).craftingInventory = new ContainerWideChest(((EntityPlayerMP)(Object)this).inventory, iinventory);
((EntityPlayerMP)(Object)this).craftingInventory.windowId = this.currentWindowId; ((EntityPlayerMP)(Object)this).craftingInventory.windowId = this.currentWindowId;
((EntityPlayerMP)(Object)this).craftingInventory.onContainerInit(((EntityPlayerMP)(Object)this)); ((EntityPlayerMP)(Object)this).craftingInventory.onContainerInit(((EntityPlayerMP)(Object)this));
} }
public int getIronchest_windowid(){
if (ironchest_windowid != 0 ){
return ironchest_windowid;
} else{
Toml toml = new Toml().read(IronChestMain.getConfig());
ironchest_windowid = toml.getLong("ids.diamondWindowID", (long)7).intValue();
return getIronchest_windowid();
}
}
} }

@ -1,5 +1,7 @@
package net.brokenmoon.afloydironchest.mixin; package net.brokenmoon.afloydironchest.mixin;
import com.moandjiezana.toml.Toml;
import net.brokenmoon.afloydironchest.IronChestMain;
import net.brokenmoon.afloydironchest.MixinInterfaces.IEntityPlayerSP; import net.brokenmoon.afloydironchest.MixinInterfaces.IEntityPlayerSP;
import net.brokenmoon.afloydironchest.tileEntities.TileEntityDiamondChest; import net.brokenmoon.afloydironchest.tileEntities.TileEntityDiamondChest;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
@ -14,16 +16,28 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(value = NetClientHandler.class, remap = false) @Mixin(value = NetClientHandler.class, remap = false)
public class MixinNetClientHandler { public class MixinNetClientHandler {
private int ironchest_windowid = 0;
@Shadow @Shadow
private Minecraft mc; private Minecraft mc;
@Inject(method = "handleOpenWindow", at = @At("TAIL")) @Inject(method = "handleOpenWindow", at = @At("TAIL"))
public void injectMethod(Packet100OpenWindow packet100openwindow, CallbackInfo info) { public void injectMethod(Packet100OpenWindow packet100openwindow, CallbackInfo info) {
if (packet100openwindow.inventoryType == 7) { if (packet100openwindow.inventoryType == getIronchest_windowid()) {
TileEntityDiamondChest dchest = new TileEntityDiamondChest(); TileEntityDiamondChest dchest = new TileEntityDiamondChest();
((IEntityPlayerSP)this.mc.thePlayer).displayGUIDiamondChest(dchest); ((IEntityPlayerSP)this.mc.thePlayer).displayGUIDiamondChest(dchest);
this.mc.thePlayer.craftingInventory.windowId = packet100openwindow.windowId; this.mc.thePlayer.craftingInventory.windowId = packet100openwindow.windowId;
} }
} }
public int getIronchest_windowid(){
if (ironchest_windowid != 0 ){
return ironchest_windowid;
} else{
Toml toml = new Toml().read(IronChestMain.getConfig());
ironchest_windowid = toml.getLong("ids.diamondWindowID", (long)7).intValue();
return getIronchest_windowid();
}
}
} }

@ -2,4 +2,5 @@
ironChestID = 900 ironChestID = 900
goldChestID = 901 goldChestID = 901
diamondChestID = 902 diamondChestID = 902
steelChestID = 903 steelChestID = 903
diamondWindowID = 7
Loading…
Cancel
Save