diff options
author | miozune <miozune@gmail.com> | 2024-09-28 20:16:09 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-28 11:16:09 +0000 |
commit | 6b1f145f5028f1bc92cf478e5963224e7d94b5cd (patch) | |
tree | 2227de40c6c806bd59c430e973a07dda8d9f1c1f /src/main/java/tectech/thing | |
parent | 254a3bc734648c97e136f67d714dcf5a4f8a3df9 (diff) | |
download | GT5-Unofficial-6b1f145f5028f1bc92cf478e5963224e7d94b5cd.tar.gz GT5-Unofficial-6b1f145f5028f1bc92cf478e5963224e7d94b5cd.tar.bz2 GT5-Unofficial-6b1f145f5028f1bc92cf478e5963224e7d94b5cd.zip |
Unify machine sound loop to use SoundResource (#3289)
Diffstat (limited to 'src/main/java/tectech/thing')
9 files changed, 24 insertions, 139 deletions
diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEActiveTransformer.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEActiveTransformer.java index d9cc9080cb..bf353799dc 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEActiveTransformer.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEActiveTransformer.java @@ -11,7 +11,6 @@ import static net.minecraft.util.StatCollector.translateToLocal; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import org.jetbrains.annotations.NotNull; @@ -20,8 +19,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructa import com.gtnewhorizon.structurelib.structure.IItemSource; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -29,7 +27,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.util.MultiblockTooltipBuilder; -import tectech.Reference; import tectech.thing.casing.BlockGTCasingsTT; import tectech.thing.casing.TTCasingsContainer; import tectech.thing.metaTileEntity.multi.base.TTMultiblockBase; @@ -168,12 +165,9 @@ public class MTEActiveTransformer extends TTMultiblockBase implements ISurvivalC return new ITexture[] { Textures.BlockIcons.casingTexturePages[BlockGTCasingsTT.texturePage][0] }; } - public static final ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_noise"); - @Override - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return activitySound; + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_NOISE; } @Override diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java index d3e52b9716..0118127670 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEDataBank.java @@ -17,7 +17,6 @@ import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import org.jetbrains.annotations.NotNull; @@ -26,8 +25,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.ISurvivalConstructa import com.gtnewhorizon.structurelib.structure.IItemSource; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IHatchElement; import gregtech.api.interfaces.ITexture; @@ -41,7 +39,6 @@ import gregtech.api.util.GTUtility; import gregtech.api.util.IGTHatchAdder; import gregtech.api.util.MultiblockTooltipBuilder; import gregtech.common.WirelessComputationPacket; -import tectech.Reference; import tectech.mechanics.dataTransport.InventoryDataPacket; import tectech.recipe.TTRecipeAdder; import tectech.thing.casing.BlockGTCasingsTT; @@ -212,12 +209,9 @@ public class MTEDataBank extends TTMultiblockBase implements ISurvivalConstructa return new ITexture[] { Textures.BlockIcons.casingTexturePages[BlockGTCasingsTT.texturePage][1] }; } - public static final ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_hi_freq"); - @Override - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return activitySound; + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_FX_HIGH_FREQ; } public final boolean addDataBankHatchToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) { diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEnergyInfuser.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEnergyInfuser.java index cdc4b07a56..e40e18f944 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEnergyInfuser.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEnergyInfuser.java @@ -9,7 +9,6 @@ import static net.minecraft.util.StatCollector.translateToLocal; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.FluidStack; import org.jetbrains.annotations.NotNull; @@ -18,9 +17,8 @@ import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import cofh.api.energy.IEnergyContainerItem; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.Materials; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.MTEHatchInputBus; @@ -30,7 +28,6 @@ import gregtech.api.util.MultiblockTooltipBuilder; import gregtech.common.tileentities.machines.MTEHatchInputBusME; import ic2.api.item.ElectricItem; import ic2.api.item.IElectricItem; -import tectech.Reference; import tectech.TecTech; import tectech.loader.ConfigHandler; import tectech.thing.casing.BlockGTCasingsTT; @@ -275,12 +272,9 @@ public class MTEEnergyInfuser extends TTMultiblockBase implements IConstructable return tt; } - public static final ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_whooum"); - @Override - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return activitySound; + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_FX_WHOOUM; } @Override diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java index ef9d64a216..238116cdc6 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEEyeOfHarmony.java @@ -46,7 +46,6 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.MathHelper; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; @@ -1854,7 +1853,7 @@ public class MTEEyeOfHarmony extends TTMultiblockBase implements IConstructable, @SideOnly(Side.CLIENT) @Override - protected ResourceLocation getActivitySoundLoop() { - return SoundResource.GT_MACHINES_EYE_OF_HARMONY_LOOP.resourceLocation; + protected SoundResource getActivitySoundLoop() { + return SoundResource.GT_MACHINES_EYE_OF_HARMONY_LOOP; } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java index 714e06f178..d3ac393927 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEForgeOfGods.java @@ -40,7 +40,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -3427,7 +3426,7 @@ public class MTEForgeOfGods extends TTMultiblockBase implements IConstructable, @SideOnly(Side.CLIENT) @Override - protected ResourceLocation getActivitySoundLoop() { - return SoundResource.GT_MACHINES_GOD_FORGE_LOOP.resourceLocation; + protected SoundResource getActivitySoundLoop() { + return SoundResource.GT_MACHINES_GOD_FORGE_LOOP; } } diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTENetworkSwitch.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTENetworkSwitch.java index 4ce04dc6ab..690aed254f 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTENetworkSwitch.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTENetworkSwitch.java @@ -8,7 +8,6 @@ import static net.minecraft.util.StatCollector.translateToLocal; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import org.jetbrains.annotations.NotNull; @@ -17,8 +16,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.util.Vec3Impl; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -26,7 +24,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.recipe.check.CheckRecipeResult; import gregtech.api.recipe.check.SimpleCheckRecipeResult; import gregtech.api.util.MultiblockTooltipBuilder; -import tectech.Reference; import tectech.mechanics.dataTransport.QuantumDataPacket; import tectech.thing.casing.BlockGTCasingsTT; import tectech.thing.casing.TTCasingsContainer; @@ -247,12 +244,9 @@ public class MTENetworkSwitch extends TTMultiblockBase implements IConstructable return new ITexture[] { Textures.BlockIcons.casingTexturePages[BlockGTCasingsTT.texturePage][1] }; } - public static final ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_hi_freq"); - @Override - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return activitySound; + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_FX_HIGH_FREQ; } @Override diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java index 4c57cbe376..787a8f4ea5 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/MTEQuantumComputer.java @@ -22,7 +22,6 @@ import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import org.jetbrains.annotations.NotNull; @@ -34,6 +33,7 @@ import com.gtnewhorizon.structurelib.util.Vec3Impl; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IHatchElement; import gregtech.api.interfaces.ITexture; @@ -431,9 +431,8 @@ public class MTEQuantumComputer extends TTMultiblockBase implements ISurvivalCon } @Override - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return MTENetworkSwitch.activitySound; + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_FX_HIGH_FREQ; } @Override diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoop.java b/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoop.java deleted file mode 100644 index c337f5093e..0000000000 --- a/src/main/java/tectech/thing/metaTileEntity/multi/base/SoundLoop.java +++ /dev/null @@ -1,59 +0,0 @@ -package tectech.thing.metaTileEntity.multi.base; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.audio.MovingSound; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.ResourceLocation; -import net.minecraft.world.World; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gregtech.api.interfaces.tileentity.IGregTechTileEntity; - -@SideOnly(Side.CLIENT) -public class SoundLoop extends MovingSound { - - private final boolean whileActive; - private final boolean whileInactive; - private final int worldID; - private boolean fadeMe = false; - - public SoundLoop(ResourceLocation p_i45104_1_, IGregTechTileEntity base, boolean stopWhenActive, - boolean stopWhenInactive) { - super(p_i45104_1_); - this.whileActive = stopWhenActive; - this.whileInactive = stopWhenInactive; - xPosF = base.getXCoord(); - yPosF = base.getYCoord(); - zPosF = base.getZCoord(); - worldID = base.getWorld().provider.dimensionId; - repeat = true; - volume = 0.0625f; - } - - @Override - public void update() { - if (donePlaying) { - return; - } - if (fadeMe) { - volume -= 0.0625f; - if (volume <= 0) { - volume = 0; - donePlaying = true; - } - } else if (volume < 1) { - volume += 0.0625f; - } - World world = Minecraft.getMinecraft().thePlayer.worldObj; - donePlaying = world.provider.dimensionId != worldID - || !world.checkChunksExist((int) xPosF, (int) yPosF, (int) zPosF, (int) xPosF, (int) yPosF, (int) zPosF); - if (donePlaying) return; - TileEntity tile = world.getTileEntity((int) xPosF, (int) yPosF, (int) zPosF); - if (!(tile instanceof IGregTechTileEntity)) { - donePlaying = true; - return; - } - fadeMe |= ((IGregTechTileEntity) tile).isActive() ? whileActive : whileInactive; - } -} diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java index fdc3f9f826..8ee6eb3863 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java @@ -21,12 +21,10 @@ import java.util.List; import javax.annotation.Nonnull; import net.minecraft.block.Block; -import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -60,6 +58,7 @@ import com.gtnewhorizons.modularui.common.widget.textfield.NumericWidget; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.Textures; import gregtech.api.gui.modularui.GTUITextures; import gregtech.api.interfaces.IHatchElement; @@ -88,7 +87,6 @@ import gregtech.api.util.shutdown.ShutDownReason; import gregtech.api.util.shutdown.ShutDownReasonRegistry; import gregtech.api.util.shutdown.SimpleShutDownReason; import gregtech.common.tileentities.machines.IDualInputHatch; -import tectech.Reference; import tectech.TecTech; import tectech.loader.ConfigHandler; import tectech.thing.gui.TecTechUITextures; @@ -117,11 +115,6 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase<TT /** Base ID for the LED window popup. LED 1 I0 will have ID 100, LED 1 I1 101... */ protected static int LED_WINDOW_BASE_ID = 100; - // Sound resource - same as with screen but override getActivitySound - public static final ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_lo_freq"); - - @SideOnly(Side.CLIENT) - private SoundLoop activitySoundLoop; // endregion // region HATCHES ARRAYS - they hold info about found hatches, add hatches to them... (auto structure magic does it @@ -505,31 +498,9 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase<TT return new ITexture[] { Textures.BlockIcons.casingTexturePages[texturePage][4] }; } - /** - * should return your activity sound - */ - @SideOnly(Side.CLIENT) - protected ResourceLocation getActivitySound() { - return activitySound; - } - - /** - * plays the sounds auto magically - */ - @SideOnly(Side.CLIENT) - protected void soundMagic(ResourceLocation activitySound) { - if (getBaseMetaTileEntity().isActive()) { - if (activitySoundLoop == null) { - activitySoundLoop = new SoundLoop(activitySound, getBaseMetaTileEntity(), false, true); - Minecraft.getMinecraft() - .getSoundHandler() - .playSound(activitySoundLoop); - } - } else { - if (activitySoundLoop != null) { - activitySoundLoop = null; - } - } + @Override + protected SoundResource getActivitySoundLoop() { + return SoundResource.TECTECH_MACHINES_FX_LOW_FREQ; } // endregion @@ -1200,7 +1171,7 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase<TT boolean active = aBaseMetaTileEntity.isActive() && mPollution > 0; setMufflers(active); } else { - soundMagic(getActivitySound()); + doActivitySound(getActivitySoundLoop()); } } |