aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/GT_Client.java
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2024-08-15 22:44:13 +0100
committerGitHub <noreply@github.com>2024-08-15 21:44:13 +0000
commit5decfda1dd1b3bbfdb1098f409aa50162ea32dc2 (patch)
treefd3dd1c237a0c8c4d4953dd7e529f5b5d89e6e34 /src/main/java/gregtech/common/GT_Client.java
parent799d5edf98e7e9f6152f432cdc48eac858398c8a (diff)
downloadGT5-Unofficial-5decfda1dd1b3bbfdb1098f409aa50162ea32dc2.tar.gz
GT5-Unofficial-5decfda1dd1b3bbfdb1098f409aa50162ea32dc2.tar.bz2
GT5-Unofficial-5decfda1dd1b3bbfdb1098f409aa50162ea32dc2.zip
Electric jukebox (#2827)
* GT music system * Minor fix for some glitches when switching dimensions with P2Ps on both sides * Most features implemented except headphones * Implement wireless headphones * Disable debug mode * Spotless --------- Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gregtech/common/GT_Client.java')
-rw-r--r--src/main/java/gregtech/common/GT_Client.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java
index 0bf578e303..79c8256c04 100644
--- a/src/main/java/gregtech/common/GT_Client.java
+++ b/src/main/java/gregtech/common/GT_Client.java
@@ -35,6 +35,7 @@ import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.ChunkCoordIntPair;
import net.minecraft.world.World;
import net.minecraftforge.client.event.DrawBlockHighlightEvent;
+import net.minecraftforge.client.event.sound.SoundSetupEvent;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.oredict.OreDictionary;
@@ -84,9 +85,11 @@ import gregtech.api.util.GT_ClientPreference;
import gregtech.api.util.GT_CoverBehaviorBase;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_MusicSystem;
import gregtech.api.util.GT_PlayedSound;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder;
+import gregtech.client.SeekingOggCodec;
import gregtech.common.blocks.GT_Item_Machines;
import gregtech.common.render.GT_CapeRenderer;
import gregtech.common.render.GT_FlaskRenderer;
@@ -105,6 +108,8 @@ import gregtech.loaders.misc.GT_Bees;
import gregtech.loaders.preload.GT_PreLoad;
import gregtech.nei.NEI_GT_Config;
import ic2.api.tile.IWrenchable;
+import paulscode.sound.SoundSystemConfig;
+import paulscode.sound.SoundSystemException;
// Referenced classes of package gregtech.common:
// GT_Proxy
@@ -692,6 +697,16 @@ public class GT_Client extends GT_Proxy implements Runnable {
}
}
+ @SubscribeEvent
+ @SuppressWarnings("unused") // used by the event bus
+ public void onSoundSetup(SoundSetupEvent event) {
+ try {
+ SoundSystemConfig.setCodec(SeekingOggCodec.EXTENSION, SeekingOggCodec.class);
+ } catch (SoundSystemException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
@Override
public void run() {
GT_Log.out.println("GT_Mod: Downloading Cape List.");
@@ -727,6 +742,7 @@ public class GT_Client extends GT_Proxy implements Runnable {
public void onClientConnectedToServerEvent(FMLNetworkEvent.ClientConnectedToServerEvent aEvent) {
mFirstTick = true;
mReloadCount++;
+ GT_MusicSystem.ClientSystem.reset();
// For utility methods elsewhere.
calculateMaxPlasmaTurbineEfficiency();
}
@@ -891,6 +907,8 @@ public class GT_Client extends GT_Proxy implements Runnable {
@SubscribeEvent
public void onClientTickEvent(cpw.mods.fml.common.gameevent.TickEvent.ClientTickEvent aEvent) {
if (aEvent.phase == cpw.mods.fml.common.gameevent.TickEvent.Phase.END) {
+ GT_MusicSystem.ClientSystem.tick();
+
if (changeDetected > 0) changeDetected--;
final int newHideValue = shouldHeldItemHideThings();
if (newHideValue != hideValue) {