From 74464417fd78c389b9d84173a7f9aeb4443ae0b6 Mon Sep 17 00:00:00 2001 From: Léa Gris Date: Sat, 23 Jul 2022 13:21:54 +0200 Subject: add(api/enums): particle and sound effect enumerations (#1154) * add(api/enums): particle and sound effect enumerations - Adds new GregTech API enumerations: - `ParticleFX`: Enumerates known EntityFX particles. - `SoundResource`: Enumerates known sounds with, id and ResourceLocation. - Refactors code to use the new enumerations instead of string literals. - Uses `ParticleFX` and `onRandomDisplayTick` to improve or implement new particle effects for these machines: - BBF: Adds random flames in front of the firebox. - Steam machines: Changes pressure-exhaust particles to white vapour, rather than dark smoke. - Magic Energy Absorber: Adds random effect, of absorbed magical purple particles, by the EnderDragon Egg siphon. - Forge Hammer: Adds sparse random sparks, ejected from the main face. --- .../java/gregtech/api/items/GT_Spray_Bug_Item.java | 10 +++++----- .../java/gregtech/api/items/GT_Spray_Foam_Item.java | 18 +++++++++--------- .../gregtech/api/items/GT_Spray_Hardener_Item.java | 14 +++++++------- .../gregtech/api/items/GT_Spray_Hydration_Item.java | 12 ++++++------ .../java/gregtech/api/items/GT_Spray_Ice_Item.java | 12 ++++++------ 5 files changed, 33 insertions(+), 33 deletions(-) (limited to 'src/main/java/gregtech/api/items') diff --git a/src/main/java/gregtech/api/items/GT_Spray_Bug_Item.java b/src/main/java/gregtech/api/items/GT_Spray_Bug_Item.java index 75d4dc3e80..5b697748da 100644 --- a/src/main/java/gregtech/api/items/GT_Spray_Bug_Item.java +++ b/src/main/java/gregtech/api/items/GT_Spray_Bug_Item.java @@ -1,6 +1,6 @@ package gregtech.api.items; -import gregtech.api.GregTech_API; +import gregtech.api.enums.SoundResource; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -20,9 +20,9 @@ public class GT_Spray_Bug_Item extends GT_Tool_Item { addToEffectiveList("EntityTFTowerBroodling"); addToEffectiveList("EntityTFFireBeetle"); addToEffectiveList("EntityTFSlimeBeetle"); - setCraftingSound(GregTech_API.sSoundList.get(102)); - setBreakingSound(GregTech_API.sSoundList.get(102)); - setEntityHitSound(GregTech_API.sSoundList.get(102)); + setCraftingSound(Sounds.IC2_TOOLS_PAINTER); + setBreakingSound(Sounds.IC2_TOOLS_PAINTER); + setEntityHitSound(Sounds.IC2_TOOLS_PAINTER); setUsageAmounts(8, 4, 1);*/ } @@ -56,7 +56,7 @@ public class GT_Spray_Bug_Item extends GT_Tool_Item { int tCropBefore = ((ic2.api.crops.ICropTile) aTileEntity).getWeedExStorage(); if (tCropBefore <= 100 && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { ((ic2.api.crops.ICropTile) aTileEntity).setWeedExStorage(tCropBefore + 100); - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); return true; } } diff --git a/src/main/java/gregtech/api/items/GT_Spray_Foam_Item.java b/src/main/java/gregtech/api/items/GT_Spray_Foam_Item.java index 76339b9886..58bfafdffb 100644 --- a/src/main/java/gregtech/api/items/GT_Spray_Foam_Item.java +++ b/src/main/java/gregtech/api/items/GT_Spray_Foam_Item.java @@ -1,6 +1,6 @@ package gregtech.api.items; -import gregtech.api.GregTech_API; +import gregtech.api.enums.SoundResource; import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; @@ -19,9 +19,9 @@ import static gregtech.api.enums.GT_Values.D1; public class GT_Spray_Foam_Item extends GT_Tool_Item { public GT_Spray_Foam_Item(String aUnlocalized, String aEnglish, int aMaxDamage, int aEntityDamage) { super(aUnlocalized, aEnglish, "Precision Spray", aMaxDamage, aEntityDamage, true);/* - setCraftingSound(GregTech_API.sSoundList.get(102)); - setBreakingSound(GregTech_API.sSoundList.get(102)); - setEntityHitSound(GregTech_API.sSoundList.get(102)); + setCraftingSound(Sounds.IC2_TOOLS_PAINTER); + setBreakingSound(Sounds.IC2_TOOLS_PAINTER); + setEntityHitSound(Sounds.IC2_TOOLS_PAINTER); setUsageAmounts(25, 3, 1);*/ } @@ -72,7 +72,7 @@ public class GT_Spray_Foam_Item extends GT_Tool_Item { if (GT_Utility.getClassName(aTileEntity).startsWith("TileEntityCable")) { if (GT_Utility.getPublicField(aTileEntity, "foamed").getByte(aTileEntity) == 0) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); GT_Utility.callPublicMethod(aTileEntity, "changeFoam", (byte) 1); return true; } @@ -85,7 +85,7 @@ public class GT_Spray_Foam_Item extends GT_Tool_Item { if (aTileEntity instanceof BaseMetaPipeEntity && (((BaseMetaPipeEntity) aTileEntity).mConnections & -64) == 0) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); ((BaseMetaPipeEntity) aTileEntity).mConnections |= 64; } return true; @@ -122,7 +122,7 @@ public class GT_Spray_Foam_Item extends GT_Tool_Item { switch (0) { case 0: if (GT_Utility.isBlockAir(aWorld, aX, aY, aZ) && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX, aY, aZ, GT_Utility.getBlockFromStack(tStack), tStack.getItemDamage(), 3); return true; } @@ -130,7 +130,7 @@ public class GT_Spray_Foam_Item extends GT_Tool_Item { case 1: for (byte i = 0; i < 4; i++) { if (GT_Utility.isBlockAir(aWorld, aX, aY, aZ) && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX, aY, aZ, GT_Utility.getBlockFromStack(tStack), tStack.getItemDamage(), 3); } else { if (i == 0) return false; @@ -155,7 +155,7 @@ public class GT_Spray_Foam_Item extends GT_Tool_Item { for (byte j = 0; j < 3; j++) { if (GT_Utility.isBlockAir(aWorld, aX + (tXFactor ? i : 0), aY + (!tXFactor && tYFactor ? i : 0) + (!tZFactor && tYFactor ? j : 0), aZ + (tZFactor ? j : 0))) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX + (tXFactor ? i : 0), aY + (!tXFactor && tYFactor ? i : 0) + (!tZFactor && tYFactor ? j : 0), aZ + (tZFactor ? j : 0), GT_Utility.getBlockFromStack(tStack), tStack.getItemDamage(), 3); temp = true; } else { diff --git a/src/main/java/gregtech/api/items/GT_Spray_Hardener_Item.java b/src/main/java/gregtech/api/items/GT_Spray_Hardener_Item.java index ae2bb27d77..4c8d64b5ee 100644 --- a/src/main/java/gregtech/api/items/GT_Spray_Hardener_Item.java +++ b/src/main/java/gregtech/api/items/GT_Spray_Hardener_Item.java @@ -1,6 +1,6 @@ package gregtech.api.items; -import gregtech.api.GregTech_API; +import gregtech.api.enums.SoundResource; import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; @@ -17,9 +17,9 @@ import static gregtech.api.enums.GT_Values.D1; public class GT_Spray_Hardener_Item extends GT_Tool_Item { public GT_Spray_Hardener_Item(String aUnlocalized, String aEnglish, int aMaxDamage, int aEntityDamage) { super(aUnlocalized, aEnglish, "Construction Foam Hardener", aMaxDamage, aEntityDamage, true);/* - setCraftingSound(GregTech_API.sSoundList.get(102)); - setBreakingSound(GregTech_API.sSoundList.get(102)); - setEntityHitSound(GregTech_API.sSoundList.get(102)); + setCraftingSound(Sounds.IC2_TOOLS_PAINTER); + setBreakingSound(Sounds.IC2_TOOLS_PAINTER); + setEntityHitSound(Sounds.IC2_TOOLS_PAINTER); setUsageAmounts(16, 3, 1);*/ } @@ -38,7 +38,7 @@ public class GT_Spray_Hardener_Item extends GT_Tool_Item { if (GT_Utility.getClassName(aTileEntity).startsWith("TileEntityCable")) { if (GT_Utility.getPublicField(aTileEntity, "foamed").getByte(aTileEntity) == 1) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); GT_Utility.callPublicMethod(aTileEntity, "changeFoam", (byte) 2); return true; } @@ -52,7 +52,7 @@ public class GT_Spray_Hardener_Item extends GT_Tool_Item { ItemStack tStack1 = GT_ModHandler.getIC2Item("constructionFoam", 1), tStack2 = GT_ModHandler.getIC2Item("constructionFoamWall", 1); if (tStack1 != null && tStack1.isItemEqual(new ItemStack(aBlock)) && tStack2 != null && tStack2.getItem() instanceof ItemBlock) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX, aY, aZ, GT_Utility.getBlockFromStack(tStack2), 7, 3); } return true; @@ -60,7 +60,7 @@ public class GT_Spray_Hardener_Item extends GT_Tool_Item { if (aTileEntity instanceof BaseMetaPipeEntity && (((BaseMetaPipeEntity) aTileEntity).mConnections & -64) == 64) { if (GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); ((BaseMetaPipeEntity) aTileEntity).mConnections = (byte) ((((BaseMetaPipeEntity) aTileEntity).mConnections & ~64) | -128); } return true; diff --git a/src/main/java/gregtech/api/items/GT_Spray_Hydration_Item.java b/src/main/java/gregtech/api/items/GT_Spray_Hydration_Item.java index 2f6132261b..13ecdea3fa 100644 --- a/src/main/java/gregtech/api/items/GT_Spray_Hydration_Item.java +++ b/src/main/java/gregtech/api/items/GT_Spray_Hydration_Item.java @@ -1,6 +1,6 @@ package gregtech.api.items; -import gregtech.api.GregTech_API; +import gregtech.api.enums.SoundResource; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; @@ -13,9 +13,9 @@ import net.minecraft.world.World; public class GT_Spray_Hydration_Item extends GT_Tool_Item { public GT_Spray_Hydration_Item(String aUnlocalized, String aEnglish, int aMaxDamage, int aEntityDamage) { super(aUnlocalized, aEnglish, "To hydrate Crops and similar", aMaxDamage, aEntityDamage, true);/* - setCraftingSound(GregTech_API.sSoundList.get(102)); - setBreakingSound(GregTech_API.sSoundList.get(102)); - setEntityHitSound(GregTech_API.sSoundList.get(102)); + setCraftingSound(Sounds.IC2_TOOLS_PAINTER); + setBreakingSound(Sounds.IC2_TOOLS_PAINTER); + setEntityHitSound(Sounds.IC2_TOOLS_PAINTER); setUsageAmounts(20, 3, 1);*/ } @@ -35,7 +35,7 @@ public class GT_Spray_Hydration_Item extends GT_Tool_Item { int tCropBefore = ((ic2.api.crops.ICropTile) aTileEntity).getHydrationStorage(); if (tCropBefore <= 100 && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { ((ic2.api.crops.ICropTile) aTileEntity).setHydrationStorage(tCropBefore + 100); - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); } return true; } @@ -44,7 +44,7 @@ public class GT_Spray_Hydration_Item extends GT_Tool_Item { if (aTileEntity instanceof IGregTechTileEntity) { if (((IGregTechTileEntity) aTileEntity).getColorization() >= 0 && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { ((IGregTechTileEntity) aTileEntity).setColorization((byte) -1); - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); } } diff --git a/src/main/java/gregtech/api/items/GT_Spray_Ice_Item.java b/src/main/java/gregtech/api/items/GT_Spray_Ice_Item.java index 400f183cbb..ddd9062d73 100644 --- a/src/main/java/gregtech/api/items/GT_Spray_Ice_Item.java +++ b/src/main/java/gregtech/api/items/GT_Spray_Ice_Item.java @@ -1,8 +1,8 @@ package gregtech.api.items; -import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SoundResource; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -26,9 +26,9 @@ public class GT_Spray_Ice_Item extends GT_Tool_Item { addToEffectiveList("EntityTFFireBeetle"); addToEffectiveList("EntityTFMazeSlime"); addToEffectiveList("EntityTFSlimeBeetle"); - setCraftingSound(GregTech_API.sSoundList.get(102)); - setBreakingSound(GregTech_API.sSoundList.get(102)); - setEntityHitSound(GregTech_API.sSoundList.get(102)); + setCraftingSound(Sounds.IC2_TOOLS_PAINTER); + setBreakingSound(Sounds.IC2_TOOLS_PAINTER); + setEntityHitSound(Sounds.IC2_TOOLS_PAINTER); setUsageAmounts(4, 16, 1);*/ for (Object tName : Arrays.asList(OrePrefixes.bucket.get(Materials.Water), OrePrefixes.cell.get(Materials.Water), OrePrefixes.capsule.get(Materials.Water))) { @@ -61,7 +61,7 @@ public class GT_Spray_Ice_Item extends GT_Tool_Item { if (aBlock == Blocks.water || aBlock == Blocks.flowing_water) { if (aMeta == 0 && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX, aY, aZ, Blocks.ice, 0, 3); return true; } @@ -70,7 +70,7 @@ public class GT_Spray_Ice_Item extends GT_Tool_Item { if (aBlock == Blocks.lava || aBlock == Blocks.flowing_lava) { if (aMeta == 0 && GT_ModHandler.damageOrDechargeItem(aStack, 1, 1000, aPlayer)) { - GT_Utility.sendSoundToPlayers(aWorld, GregTech_API.sSoundList.get(102), 1.0F, -1, aX, aY, aZ); + GT_Utility.sendSoundToPlayers(aWorld, SoundResource.IC2_TOOLS_PAINTER, 1.0F, -1, aX, aY, aZ); aWorld.setBlock(aX, aY, aZ, Blocks.obsidian, 0, 3); return true; } -- cgit