diff options
author | Jakub <53441451+kuba6000@users.noreply.github.com> | 2022-08-23 00:17:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-23 00:17:48 +0200 |
commit | 5d1286092eac1545f819babbee27244504a212f0 (patch) | |
tree | a377af43657e1959a5a088a5e48dde0c2c2b9b22 /src/main/java/kubatech/api/network/LoadConfigPacket.java | |
parent | c31a00ff0259c6f1a2c8098aacb3afc14384aa4b (diff) | |
download | GT5-Unofficial-5d1286092eac1545f819babbee27244504a212f0.tar.gz GT5-Unofficial-5d1286092eac1545f819babbee27244504a212f0.tar.bz2 GT5-Unofficial-5d1286092eac1545f819babbee27244504a212f0.zip |
Add Config to override mob drops + some fixes (#8)
* Add overrides
* GTNHCoreMod custom drops integration
* Update buildscript
* Bump
* EEC blacklist
* NEI info
* Loops optimization
* Warn when 0% loots are detected
* Detect looting drops
* No
* Super rare drops
* Keep the same naming
* Crash
* Fix meta
* maybe
* Run at least twice
* Fix stupid TF Lich boss
* Comments
* Fix EEC blacklist
Diffstat (limited to 'src/main/java/kubatech/api/network/LoadConfigPacket.java')
-rw-r--r-- | src/main/java/kubatech/api/network/LoadConfigPacket.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/main/java/kubatech/api/network/LoadConfigPacket.java b/src/main/java/kubatech/api/network/LoadConfigPacket.java index f38293642e..2199eb2db9 100644 --- a/src/main/java/kubatech/api/network/LoadConfigPacket.java +++ b/src/main/java/kubatech/api/network/LoadConfigPacket.java @@ -24,8 +24,10 @@ import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import java.nio.charset.StandardCharsets; +import java.util.HashMap; import java.util.HashSet; -import kubatech.Config; +import kubatech.config.Config; +import kubatech.config.OverridesConfig; import kubatech.kubatech; import kubatech.loaders.MobRecipeLoader; @@ -34,6 +36,7 @@ public class LoadConfigPacket implements IMessage { public static final LoadConfigPacket instance = new LoadConfigPacket(); public final HashSet<String> mobsToLoad = new HashSet<>(); + public final HashMap<String, OverridesConfig.MobOverride> mobsOverrides = new HashMap<>(); @Override public void fromBytes(ByteBuf buf) { @@ -46,6 +49,13 @@ public class LoadConfigPacket implements IMessage { buf.readBytes(sbytes); mobsToLoad.add(new String(sbytes, StandardCharsets.UTF_8)); } + int overridessize = buf.readInt(); + for (int i = 0; i < overridessize; i++) { + byte[] sbytes = new byte[buf.readInt()]; + buf.readBytes(sbytes); + mobsOverrides.put( + new String(sbytes, StandardCharsets.UTF_8), OverridesConfig.MobOverride.readFromByteBuf(buf)); + } } } @@ -60,6 +70,13 @@ public class LoadConfigPacket implements IMessage { buf.writeInt(sbytes.length); buf.writeBytes(sbytes); }); + buf.writeInt(mobsOverrides.size()); + mobsOverrides.forEach((k, v) -> { + byte[] sbytes = k.getBytes(StandardCharsets.UTF_8); + buf.writeInt(sbytes.length); + buf.writeBytes(sbytes); + v.writeToByteBuf(buf); + }); } } @@ -67,7 +84,7 @@ public class LoadConfigPacket implements IMessage { @Override public IMessage onMessage(LoadConfigPacket message, MessageContext ctx) { kubatech.info("Received Mob Handler config, parsing"); - MobRecipeLoader.processMobRecipeMap(message.mobsToLoad); + MobRecipeLoader.processMobRecipeMap(message.mobsToLoad, message.mobsOverrides); return null; } } |