Skip to content

Commit 7099d4a

Browse files
committed
Fixed crashes with sound manager, fixed pigman drops
1 parent b06f2e7 commit 7099d4a

File tree

4 files changed

+27
-6
lines changed

4 files changed

+27
-6
lines changed

LoTAS-Fabric/src/main/java/de/pfannekuchen/lotas/dropmanipulation/drops/entitydrops/ZombieDropManipulation.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import net.minecraft.resources.ResourceLocation;
1313
import net.minecraft.world.entity.Entity;
1414
import net.minecraft.world.entity.monster.Husk;
15+
import net.minecraft.world.entity.monster.PigZombie;
1516
import net.minecraft.world.entity.monster.Zombie;
1617
import net.minecraft.world.entity.monster.ZombieVillager;
1718
import net.minecraft.world.item.ItemStack;
@@ -57,7 +58,7 @@ public List<ItemStack> redirectDrops(BlockState block) {
5758
@Override
5859
public List<ItemStack> redirectDrops(Entity entity, int lootingBonus) {
5960
List<ItemStack> list = new ArrayList<>();
60-
if (entity instanceof Zombie || entity instanceof Husk || entity instanceof ZombieVillager) {
61+
if (entity instanceof Zombie && !(entity instanceof PigZombie)) {
6162
list.add(new ItemStack(Items.ROTTEN_FLESH, 2 +lootingBonus));
6263

6364
if (dropIron.isToggled())

LoTAS-Fabric/src/main/java/de/pfannekuchen/lotas/mixin/render/gui/MixinGuiMainMenu.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import de.pfannekuchen.lotas.core.MCVer;
1111
import de.pfannekuchen.lotas.core.utils.ConfigUtils;
1212
import de.pfannekuchen.lotas.gui.ConfigurationScreen;
13+
import de.pfannekuchen.lotas.mods.TickrateChangerMod;
1314
import net.minecraft.client.Minecraft;
1415
import net.minecraft.client.gui.screens.Screen;
1516
import net.minecraft.client.gui.screens.TitleScreen;
@@ -33,6 +34,9 @@ protected MixinGuiMainMenu(Component title) {
3334

3435
@Inject(method="init", at = @At("HEAD"))
3536
private void changeSplash(CallbackInfo ci) {
37+
if (ConfigUtils.getBoolean("tools", "saveTickrate")) {
38+
TickrateChangerMod.updatePitch();
39+
}
3640
splash="TaS iS cHeAtInG !!1";
3741
}
3842

LoTAS-Fabric/src/main/java/de/pfannekuchen/lotas/mods/TickrateChangerMod.java

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,11 @@ public static void updateClientTickrate(float tickrateIn) {
9898
((AccessorTimer) ((AccessorMinecraftClient) Minecraft.getInstance()).getTimer()).setTickTime(Float.MAX_VALUE);
9999
}
100100
tickrate = tickrateIn;
101-
if (!ConfigUtils.getBoolean("ui", "hideTickrateMessages") && Minecraft.getInstance().gui != null)
102-
Minecraft.getInstance().gui.getChat().addMessage(MCVer.literal("Updated Tickrate to \u00A7b" + tickrateIn));
103-
104-
((SoundPitchDuck)((AccessorSoundEngine)Minecraft.getInstance().getSoundManager()).getSoundEngine()).updatePitch();
101+
if (!ConfigUtils.getBoolean("ui", "hideTickrateMessages") && Minecraft.getInstance().gui != null) {
102+
Minecraft mc=Minecraft.getInstance();
103+
mc.gui.getChat().addMessage(MCVer.literal("Updated Tickrate to \u00A7b" + tickrateIn));
104+
}
105+
updatePitch();
105106
}
106107

107108
/**
@@ -160,6 +161,20 @@ public static void resetAdvanceServer() {
160161
updateServerTickrate(0);
161162
}
162163
}
164+
165+
public static void updatePitch() {
166+
AccessorSoundEngine soundEngine = (AccessorSoundEngine)Minecraft.getInstance().getSoundManager();
167+
168+
if(soundEngine == null)
169+
return;
170+
171+
SoundPitchDuck soundManager=(SoundPitchDuck)soundEngine.getSoundEngine();
172+
173+
if(soundManager == null)
174+
return;
175+
176+
soundManager.updatePitch();
177+
}
163178

164179
//public static ResourceLocation streaming = new ResourceLocation("textures/gui/stream_indicator.png");
165180
public static boolean show = false;

LoTAS-Forge/src/main/java/de/pfannekuchen/lotas/dropmanipulation/drops/entitydrops/ZombieDropManipulation.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import net.minecraft.client.gui.Gui;
1515
import net.minecraft.client.renderer.GlStateManager;
1616
import net.minecraft.entity.Entity;
17+
import net.minecraft.entity.monster.EntityPigZombie;
1718
import net.minecraft.entity.monster.EntityZombie;
1819
import net.minecraft.item.ItemStack;
1920
import net.minecraft.util.ResourceLocation;
@@ -55,7 +56,7 @@ public String getName() {
5556
@Override
5657
public List<ItemStack> redirectDrops(Entity entity, int lootingValue) {
5758
List<ItemStack> list = new ArrayList<>();
58-
if (entity instanceof EntityZombie) {
59+
if (entity instanceof EntityZombie && !(entity instanceof EntityPigZombie)) {
5960
list.add(new ItemStack(MCVer.getItem("ROTTEN_FLESH"), 2 + lootingValue));
6061

6162
if (dropIron.isToggled()) list.add(new ItemStack(MCVer.getItem("IRON_INGOT")));

0 commit comments

Comments
 (0)