Merge branch 'HbmMods:master' into master
@ -2,15 +2,21 @@
|
|||||||
* Plasma forge
|
* Plasma forge
|
||||||
* Plasma-powered assembly machine
|
* Plasma-powered assembly machine
|
||||||
* Used to produce lategame items that until now were regular assembler recipes
|
* Used to produce lategame items that until now were regular assembler recipes
|
||||||
|
* Can pass on plasma, 25% of the plasma energy that passes through a plasma forge is consumed
|
||||||
|
* This allows plasma forges to be chained, or unused residue energy to be used in turbines
|
||||||
|
* Parts that interact with the fusion reactor directly, like the collector chambers, are not compatible
|
||||||
|
* Like all assembler-type machines, features custom animations (i spent a lot of time on those, please look at them for prolonged periods of time, ideally without blinking)
|
||||||
|
|
||||||
## Changed
|
## Changed
|
||||||
* Doubled bismuth and tantalum yields from high-performance solvent bedrock ore processing
|
* Doubled bismuth and tantalum yields from high-performance solvent bedrock ore processing
|
||||||
* Hoppers and buckets can now be made out of steel
|
* Hoppers and buckets can now be made out of steel
|
||||||
* RoR gauges now show the lowest and highest configured value on the actual gauge
|
* RoR gauges now show the lowest and highest configured value on the actual gauge
|
||||||
* The steel sword now looks like a medival broad sword with the appropriate scale
|
* The steel sword now looks like a medieval broad sword with the appropriate scale
|
||||||
* All remaining items have been removed from the template folder, siren tracks and plate stamps are now made in the anvil
|
* All remaining items have been removed from the template folder, siren tracks and plate stamps are now made in the anvil
|
||||||
* Gerald assembly now requires stellar flux
|
* Gerald assembly now requires stellar flux
|
||||||
|
* The DFC parts are now made in the plasma forge, with the recipes being more expensive
|
||||||
* The restrictions for firing Folly (using the scope, waiting for the startup) no longer apply to NPCs (which can never fulfill them anyway), allowing them to actually use it
|
* The restrictions for firing Folly (using the scope, waiting for the startup) no longer apply to NPCs (which can never fulfill them anyway), allowing them to actually use it
|
||||||
|
* The plinking sound played when a drill cannot break a block now only plays once for the entire AoE instead of once for every single block that couldn't be broken
|
||||||
|
|
||||||
## Fixed
|
## Fixed
|
||||||
* Fixed size 15 dual kerosene thruster not rendering at all
|
* Fixed size 15 dual kerosene thruster not rendering at all
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import java.util.Random;
|
|||||||
|
|
||||||
import com.hbm.blocks.IBlockMulti;
|
import com.hbm.blocks.IBlockMulti;
|
||||||
import com.hbm.blocks.ITooltipProvider;
|
import com.hbm.blocks.ITooltipProvider;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.world.gen.nbt.INBTTileEntityTransformable;
|
import com.hbm.world.gen.nbt.INBTTileEntityTransformable;
|
||||||
import com.hbm.world.gen.nbt.INBTBlockTransformable;
|
import com.hbm.world.gen.nbt.INBTBlockTransformable;
|
||||||
|
|
||||||
@ -102,9 +103,9 @@ public class BlockPlushie extends BlockContainer implements IBlockMulti, IToolti
|
|||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
if(plushie.type == PlushieType.HUNDUN) {
|
if(plushie.type == PlushieType.HUNDUN) {
|
||||||
world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "hbm:block.hunduns_magnificent_howl", 100F, 1F);
|
world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, NTMSounds.BLOCK_HUNDUNS_MAGNIFICENT_HOWL, 100F, 1F);
|
||||||
} else {
|
} else {
|
||||||
world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "hbm:block.squeakyToy", 0.25F, 1F);
|
world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, NTMSounds.BLOCK_PLUSHY, 0.25F, 1F);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -160,7 +161,7 @@ public class BlockPlushie extends BlockContainer implements IBlockMulti, IToolti
|
|||||||
YOMI( "Yomi", "Hi! Can I be your rabbit friend?"),
|
YOMI( "Yomi", "Hi! Can I be your rabbit friend?"),
|
||||||
NUMBERNINE( "Number Nine", "None of y'all deserve coal."),
|
NUMBERNINE( "Number Nine", "None of y'all deserve coal."),
|
||||||
HUNDUN( "Hundun", "混沌"),
|
HUNDUN( "Hundun", "混沌"),
|
||||||
DERG( "Dragon", "Squeeze him.");
|
DERG( "Dragon", "Squeeze him."); // blerg
|
||||||
|
|
||||||
public String label;
|
public String label;
|
||||||
public String inscription;
|
public String inscription;
|
||||||
|
|||||||
@ -28,7 +28,7 @@ public class MachineFusionPlasmaForge extends BlockDummyable {
|
|||||||
return this.standardOpenBehavior(world, x, y, z, player, 0);
|
return this.standardOpenBehavior(world, x, y, z, player, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public int[] getDimensions() { return new int[] { 4, 0, 5, 5, 5, 5 }; }
|
@Override public int[] getDimensions() { return new int[] { 0, 0, 5, 5, 5, 5 }; }
|
||||||
@Override public int getOffset() { return 5; }
|
@Override public int getOffset() { return 5; }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -54,7 +54,7 @@ public class GUIMachinePlasmaForge extends GuiInfoContainer {
|
|||||||
PlasmaForgeRecipe recipe = (PlasmaForgeRecipe) PlasmaForgeRecipes.INSTANCE.recipeNameMap.get(forge.plasmaModule.recipe);
|
PlasmaForgeRecipe recipe = (PlasmaForgeRecipe) PlasmaForgeRecipes.INSTANCE.recipeNameMap.get(forge.plasmaModule.recipe);
|
||||||
|
|
||||||
if(recipe != null) {
|
if(recipe != null) {
|
||||||
drawCustomInfoStat(mouseX, mouseY, guiLeft + 25, guiTop + 115, 18, 18, mouseX, mouseY, EnumChatFormatting.GREEN + "-> " + EnumChatFormatting.RESET + BobMathUtil.getShortNumber(forge.plasmaEnergySync) + "KyU / " + BobMathUtil.getShortNumber(recipe.ignitionTemp) + "KyU");
|
drawCustomInfoStat(mouseX, mouseY, guiLeft + 25, guiTop + 115, 18, 18, mouseX, mouseY, EnumChatFormatting.GREEN + "-> " + EnumChatFormatting.RESET + BobMathUtil.getShortNumber(forge.plasmaEnergySync) + "TU / " + BobMathUtil.getShortNumber(recipe.ignitionTemp) + "TU");
|
||||||
} else {
|
} else {
|
||||||
drawCustomInfoStat(mouseX, mouseY, guiLeft + 25, guiTop + 115, 18, 18, mouseX, mouseY, "0TU / 0TU");
|
drawCustomInfoStat(mouseX, mouseY, guiLeft + 25, guiTop + 115, 18, 18, mouseX, mouseY, "0TU / 0TU");
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import org.lwjgl.opengl.GL11;
|
|||||||
|
|
||||||
import com.hbm.blocks.generic.BlockBobble.BobbleType;
|
import com.hbm.blocks.generic.BlockBobble.BobbleType;
|
||||||
import com.hbm.blocks.generic.BlockBobble.TileEntityBobble;
|
import com.hbm.blocks.generic.BlockBobble.TileEntityBobble;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.util.Tuple.Pair;
|
import com.hbm.util.Tuple.Pair;
|
||||||
|
|
||||||
import net.minecraft.client.audio.PositionedSoundRecord;
|
import net.minecraft.client.audio.PositionedSoundRecord;
|
||||||
@ -26,7 +27,7 @@ public class GUIScreenBobble extends GuiScreen {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void initGui() {
|
public void initGui() {
|
||||||
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:block.bobble"), 1.0F));
|
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation(NTMSounds.BLOCK_FALLOUT_3_POPUP), 1.0F));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
import com.hbm.blocks.generic.BlockSnowglobe.TileEntitySnowglobe;
|
import com.hbm.blocks.generic.BlockSnowglobe.TileEntitySnowglobe;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.util.i18n.I18nUtil;
|
import com.hbm.util.i18n.I18nUtil;
|
||||||
|
|
||||||
import net.minecraft.client.audio.PositionedSoundRecord;
|
import net.minecraft.client.audio.PositionedSoundRecord;
|
||||||
@ -23,7 +24,7 @@ public class GUIScreenSnowglobe extends GuiScreen {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void initGui() {
|
public void initGui() {
|
||||||
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:block.bobble"), 1.0F));
|
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation(NTMSounds.BLOCK_FALLOUT_3_POPUP), 1.0F));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -42,8 +42,6 @@ public class ArcWelderRecipes extends SerializableRecipe {
|
|||||||
new OreDictStack(AL.plate(), 4), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot())));
|
new OreDictStack(AL.plate(), 4), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot())));
|
||||||
recipes.add(new ArcWelderRecipe(DictFrame.fromOne(ModItems.part_generic, EnumPartType.LDE), 200, 10_000L,
|
recipes.add(new ArcWelderRecipe(DictFrame.fromOne(ModItems.part_generic, EnumPartType.LDE), 200, 10_000L,
|
||||||
new OreDictStack(TI.plate(), 2), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot())));
|
new OreDictStack(TI.plate(), 2), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot())));
|
||||||
recipes.add(new ArcWelderRecipe(DictFrame.fromOne(ModItems.part_generic, EnumPartType.HDE), 600, 25_000_000L, new FluidStack(Fluids.STELLAR_FLUX, 4_000),
|
|
||||||
new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 2), new OreDictStack(CMB.plateWelded(), 1), new ComparableStack(ModItems.ingot_cft)));
|
|
||||||
|
|
||||||
//Dense Wires
|
//Dense Wires
|
||||||
recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.wire_dense, 1, Mats.MAT_COPPER.id), 100, 10_000L,
|
recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.wire_dense, 1, Mats.MAT_COPPER.id), 100, 10_000L,
|
||||||
|
|||||||
@ -557,6 +557,10 @@ public class AssemblyMachineRecipes extends GenericRecipes<GenericRecipe> {
|
|||||||
this.register(new GenericRecipe("ass.fusioncoupler").setup(300, 100).outputItems(new ItemStack(ModBlocks.fusion_coupler, 1))
|
this.register(new GenericRecipe("ass.fusioncoupler").setup(300, 100).outputItems(new ItemStack(ModBlocks.fusion_coupler, 1))
|
||||||
.inputItems(new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 4), new OreDictStack(CU.plate(), 32), new OreDictStack(BSCCO.wireDense(), 16), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.BISMOID))
|
.inputItems(new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 4), new OreDictStack(CU.plate(), 32), new OreDictStack(BSCCO.wireDense(), 16), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.BISMOID))
|
||||||
.inputItemsEx(new ComparableStack(ModItems.item_expensive, 4, EnumExpensiveType.FERRO_PLATING), new OreDictStack(BSCCO.wireDense(), 16), new ComparableStack(ModItems.item_expensive, 2, EnumExpensiveType.COMPUTER)));
|
.inputItemsEx(new ComparableStack(ModItems.item_expensive, 4, EnumExpensiveType.FERRO_PLATING), new OreDictStack(BSCCO.wireDense(), 16), new ComparableStack(ModItems.item_expensive, 2, EnumExpensiveType.COMPUTER)));
|
||||||
|
this.register(new GenericRecipe("ass.fusionplasmaforge").setup(1_200, 100).outputItems(new ItemStack(ModBlocks.fusion_plasma_forge, 1))
|
||||||
|
.inputItems(new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 8), new OreDictStack(BSCCO.wireDense(), 32), new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 16), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.BISMOID))
|
||||||
|
.inputItemsEx(new ComparableStack(ModItems.item_expensive, 16, EnumExpensiveType.FERRO_PLATING), new ComparableStack(ModItems.item_expensive, 16, EnumExpensiveType.PLASTIC), new OreDictStack(BSCCO.wireDense(), 32), new ComparableStack(ModItems.item_expensive, 4, EnumExpensiveType.COMPUTER))
|
||||||
|
.setPools528(GenericRecipes.POOL_PREFIX_528 + "chlorophyte"));
|
||||||
|
|
||||||
// watz
|
// watz
|
||||||
this.register(new GenericRecipe("ass.watzrod").setup(200, 100).outputItems(new ItemStack(ModBlocks.watz_element, 3))
|
this.register(new GenericRecipe("ass.watzrod").setup(200, 100).outputItems(new ItemStack(ModBlocks.watz_element, 3))
|
||||||
|
|||||||
@ -22,6 +22,7 @@ public class PlasmaForgeRecipe extends GenericRecipe {
|
|||||||
List<String> list = new ArrayList();
|
List<String> list = new ArrayList();
|
||||||
list.add(EnumChatFormatting.YELLOW + this.getLocalizedName());
|
list.add(EnumChatFormatting.YELLOW + this.getLocalizedName());
|
||||||
|
|
||||||
|
autoSwitch(list);
|
||||||
duration(list);
|
duration(list);
|
||||||
power(list);
|
power(list);
|
||||||
list.add(EnumChatFormatting.LIGHT_PURPLE + I18nUtil.resolveKey("gui.recipe.fusionIn") + ": " + BobMathUtil.getShortNumber(ignitionTemp) + "TU/t");
|
list.add(EnumChatFormatting.LIGHT_PURPLE + I18nUtil.resolveKey("gui.recipe.fusionIn") + ": " + BobMathUtil.getShortNumber(ignitionTemp) + "TU/t");
|
||||||
|
|||||||
@ -13,10 +13,12 @@ import com.google.gson.stream.JsonWriter;
|
|||||||
import com.hbm.blocks.ModBlocks;
|
import com.hbm.blocks.ModBlocks;
|
||||||
import com.hbm.blocks.machine.BlockICFLaserComponent.EnumICFPart;
|
import com.hbm.blocks.machine.BlockICFLaserComponent.EnumICFPart;
|
||||||
import com.hbm.inventory.FluidStack;
|
import com.hbm.inventory.FluidStack;
|
||||||
|
import com.hbm.inventory.OreDictManager.DictFrame;
|
||||||
import com.hbm.inventory.RecipesCommon.AStack;
|
import com.hbm.inventory.RecipesCommon.AStack;
|
||||||
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
import com.hbm.inventory.RecipesCommon.ComparableStack;
|
||||||
import com.hbm.inventory.RecipesCommon.OreDictStack;
|
import com.hbm.inventory.RecipesCommon.OreDictStack;
|
||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
|
import com.hbm.inventory.material.Mats;
|
||||||
import com.hbm.inventory.recipes.loader.GenericRecipe;
|
import com.hbm.inventory.recipes.loader.GenericRecipe;
|
||||||
import com.hbm.inventory.recipes.loader.GenericRecipes;
|
import com.hbm.inventory.recipes.loader.GenericRecipes;
|
||||||
import com.hbm.items.ModItems;
|
import com.hbm.items.ModItems;
|
||||||
@ -43,12 +45,60 @@ public class PlasmaForgeRecipes extends GenericRecipes<PlasmaForgeRecipe> {
|
|||||||
@Override
|
@Override
|
||||||
public void registerDefaults() {
|
public void registerDefaults() {
|
||||||
|
|
||||||
|
String autoPlate = "autoswitch.weldPlates";
|
||||||
|
|
||||||
// Plates
|
// Plates
|
||||||
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.plateeuphemium").setInputEnergy(1_000_000).setup(600, 10_000_000).outputItems(new ItemStack(ModItems.plate_euphemium, 1))
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.plateeuphemium").setInputEnergy(1_000_000).setup(600, 10_000_000).outputItems(new ItemStack(ModItems.plate_euphemium, 1))
|
||||||
.inputItems(new OreDictStack(EUPH.ingot(), 4), new OreDictStack(AT.dust(), 3), new OreDictStack(BI.dust(), 1), new OreDictStack(VOLCANIC.gem(), 1), new OreDictStack(OSMIRIDIUM.ingot())));
|
.inputItems(new OreDictStack(EUPH.ingot(), 4), new OreDictStack(AT.dust(), 3), new OreDictStack(BI.dust(), 1), new OreDictStack(VOLCANIC.gem(), 1), new OreDictStack(OSMIRIDIUM.ingot())));
|
||||||
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.platednt").setInputEnergy(1_000_000).setup(600, 10_000_000).outputItems(new ItemStack(ModItems.plate_dineutronium, 4))
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.platednt").setInputEnergy(1_000_000).setup(600, 10_000_000).outputItems(new ItemStack(ModItems.plate_dineutronium, 4))
|
||||||
.inputItems(new OreDictStack(DNT.ingot(), 4), new ComparableStack(ModItems.powder_spark_mix, 2), new OreDictStack(DESH.ingot(), 1)));
|
.inputItems(new OreDictStack(DNT.ingot(), 4), new ComparableStack(ModItems.powder_spark_mix, 2), new OreDictStack(DESH.ingot(), 1)));
|
||||||
|
|
||||||
|
// Components
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.hde").setInputEnergy(10_000_000).setup(600, 25_000_000L)
|
||||||
|
.outputItems(DictFrame.fromOne(ModItems.part_generic, EnumPartType.HDE))
|
||||||
|
.inputItems(new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 2), new OreDictStack(CMB.plateWelded(), 1), new ComparableStack(ModItems.ingot_cft))
|
||||||
|
.inputFluids(new FluidStack(Fluids.STELLAR_FLUX, 4_000)).setGroup(autoPlate, this));
|
||||||
|
|
||||||
|
// Welded Plates
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldiron").setInputEnergy(500_000).setup(50, 100L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_IRON.id))
|
||||||
|
.inputItems(new OreDictStack(IRON.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldsteel").setInputEnergy(500_000).setup(50, 500L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_STEEL.id))
|
||||||
|
.inputItems(new OreDictStack(STEEL.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldcopper").setInputEnergy(500_000).setup(50, 1_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_COPPER.id))
|
||||||
|
.inputItems(new OreDictStack(CU.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldtitanium").setInputEnergy(500_000).setup(300, 50_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_TITANIUM.id))
|
||||||
|
.inputItems(new OreDictStack(TI.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldzirconium").setInputEnergy(500_000).setup(300, 10_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_ZIRCONIUM.id))
|
||||||
|
.inputItems(new OreDictStack(ZR.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldaluminium").setInputEnergy(500_000).setup(150, 10_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_ALUMINIUM.id))
|
||||||
|
.inputItems(new OreDictStack(AL.plateCast(), 2)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldtcalloy").setInputEnergy(500_000).setup(600, 1_000_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_TCALLOY.id))
|
||||||
|
.inputItems(new OreDictStack(TCALLOY.plateCast(), 2))
|
||||||
|
.inputFluids(new FluidStack(Fluids.OXYGEN, 1_000)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldcdalloy").setInputEnergy(500_000).setup(600, 1_000_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_CDALLOY.id))
|
||||||
|
.inputItems(new OreDictStack(CDALLOY.plateCast(), 2))
|
||||||
|
.inputFluids(new FluidStack(Fluids.OXYGEN, 1_000)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldtungsten").setInputEnergy(500_000).setup(600, 250_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_TUNGSTEN.id))
|
||||||
|
.inputItems(new OreDictStack(W.plateCast(), 2))
|
||||||
|
.inputFluids(new FluidStack(Fluids.OXYGEN, 1_000)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldcmb").setInputEnergy(500_000).setup(600, 10_000_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_CMB.id))
|
||||||
|
.inputItems(new OreDictStack(CMB.plateCast(), 2))
|
||||||
|
.inputFluids(new FluidStack(Fluids.REFORMGAS, 1_000)).setGroup(autoPlate, this));
|
||||||
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.weldosmiridium").setInputEnergy(500_000).setup(3_000, 50_000_000L)
|
||||||
|
.outputItems(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_OSMIRIDIUM.id))
|
||||||
|
.inputItems(new OreDictStack(OSMIRIDIUM.plateCast(), 2))
|
||||||
|
.inputFluids(new FluidStack(Fluids.REFORMGAS, 16_000)).setGroup(autoPlate, this));
|
||||||
|
|
||||||
// ICF
|
// ICF
|
||||||
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.icfcell").setInputEnergy(1_000_000).setup(200, 10_000_000).outputItems(new ItemStack(ModBlocks.icf_laser_component, 1, EnumICFPart.CELL.ordinal()))
|
this.register((PlasmaForgeRecipe) new PlasmaForgeRecipe("plsm.icfcell").setInputEnergy(1_000_000).setup(200, 10_000_000).outputItems(new ItemStack(ModBlocks.icf_laser_component, 1, EnumICFPart.CELL.ordinal()))
|
||||||
.inputItems(new ComparableStack(ModItems.ingot_cft, 2), new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 4), new ComparableStack(ModBlocks.glass_quartz, 16))
|
.inputItems(new ComparableStack(ModItems.ingot_cft, 2), new OreDictStack(ANY_BISMOIDBRONZE.plateCast(), 4), new ComparableStack(ModBlocks.glass_quartz, 16))
|
||||||
|
|||||||
@ -16,6 +16,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -53,7 +54,7 @@ public class XFactory10ga {
|
|||||||
ModItems.gun_double_barrel = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
ModItems.gun_double_barrel = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
||||||
.dura(1000).draw(10).inspect(39).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(1000).draw(10).inspect(39).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).rounds(2).delay(10).reload(41).reloadOnEmpty(true).sound("hbm:weapon.fire.shotgun", 1.0F, 0.9F)
|
.dmg(30F).rounds(2).delay(10).reload(41).reloadOnEmpty(true).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 0.9F)
|
||||||
.mag(new MagazineFullReload(0, 2).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
.mag(new MagazineFullReload(0, 2).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_DOUBLE_BARREL))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_DOUBLE_BARREL))
|
||||||
@ -63,7 +64,7 @@ public class XFactory10ga {
|
|||||||
ModItems.gun_double_barrel_sacred_dragon = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_double_barrel_sacred_dragon = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(6000).draw(10).inspect(39).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(6000).draw(10).inspect(39).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(45F).spreadAmmo(1.35F).rounds(2).delay(10).reload(41).reloadOnEmpty(true).sound("hbm:weapon.fire.shotgun", 1.0F, 0.9F)
|
.dmg(45F).spreadAmmo(1.35F).rounds(2).delay(10).reload(41).reloadOnEmpty(true).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 0.9F)
|
||||||
.mag(new MagazineFullReload(0, 2).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
.mag(new MagazineFullReload(0, 2).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_DOUBLE_BARREL))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_DOUBLE_BARREL))
|
||||||
@ -74,7 +75,7 @@ public class XFactory10ga {
|
|||||||
ModItems.gun_autoshotgun_heretic = new ItemGunBaseNT(WeaponQuality.DEBUG, new GunConfig()
|
ModItems.gun_autoshotgun_heretic = new ItemGunBaseNT(WeaponQuality.DEBUG, new GunConfig()
|
||||||
.draw(20).inspect(65).reloadSequential(true).inspectCancel(false).crosshair(Crosshair.L_CIRCLE).hideCrosshair(false).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.draw(20).inspect(65).reloadSequential(true).inspectCancel(false).crosshair(Crosshair.L_CIRCLE).hideCrosshair(false).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(100F).delay(3).auto(true).dryfireAfterAuto(true).reload(110).jam(19).sound("hbm:weapon.fire.shotgunAuto", 1.0F, 1.0F)
|
.dmg(100F).delay(3).auto(true).dryfireAfterAuto(true).reload(110).jam(19).sound(NTMSounds.GUN_SHREDDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 250).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
.mag(new MagazineFullReload(0, 250).addConfigs(g10, g10_shrapnel, g10_du, g10_slug, g10_explosive))
|
||||||
.offset(0.75, -0.125, -0.25)
|
.offset(0.75, -0.125, -0.25)
|
||||||
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(XFactory12ga.LAMBDA_RECOIL_SEXY))
|
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(XFactory12ga.LAMBDA_RECOIL_SEXY))
|
||||||
|
|||||||
@ -27,6 +27,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.packet.PacketDispatcher;
|
import com.hbm.packet.PacketDispatcher;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
@ -97,7 +98,7 @@ public class XFactory12ga {
|
|||||||
pippo.posY = mop.hitVec.yCoord + 50;
|
pippo.posY = mop.hitVec.yCoord + 50;
|
||||||
pippo.posZ = mop.hitVec.zCoord;;
|
pippo.posZ = mop.hitVec.zCoord;;
|
||||||
bullet.worldObj.spawnEntityInWorld(pippo);
|
bullet.worldObj.spawnEntityInWorld(pippo);
|
||||||
bullet.worldObj.playSoundEffect(pippo.posX, pippo.posY + 50, pippo.posZ, "hbm:weapon.boat", 100F, 1F);
|
bullet.worldObj.playSoundEffect(pippo.posX, pippo.posY + 50, pippo.posZ, NTMSounds.GUN_SOLDIER_TF2_BOAT_EXE_WAV_MP3, 100F, 1F);
|
||||||
bullet.setDead();
|
bullet.setDead();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -292,7 +293,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_maresleg = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_maresleg = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(600).draw(10).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(600).draw(10).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(16F).delay(20).reload(22, 10, 13, 0).jam(24).sound("hbm:weapon.fire.shotgun", 1.0F, 1.0F)
|
.dmg(16F).delay(20).reload(22, 10, 13, 0).jam(24).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 6).addConfigs(all))
|
.mag(new MagazineSingleReload(0, 6).addConfigs(all))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
||||||
@ -303,7 +304,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_maresleg_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
ModItems.gun_maresleg_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
||||||
new GunConfig().dura(600).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(600).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(16F).spreadHipfire(0F).spreadAmmo(1.35F).delay(20).reload(22, 10, 13, 0).jam(24).sound("hbm:weapon.fire.shotgun", 1.0F, 1.0F)
|
.dmg(16F).spreadHipfire(0F).spreadAmmo(1.35F).delay(20).reload(22, 10, 13, 0).jam(24).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 6).addConfigs(all))
|
.mag(new MagazineSingleReload(0, 6).addConfigs(all))
|
||||||
.offset(0.75, -0.0625, 0.1875D)
|
.offset(0.75, -0.0625, 0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
||||||
@ -312,7 +313,7 @@ public class XFactory12ga {
|
|||||||
.anim(LAMBDA_MARESLEG_SHORT_ANIMS).orchestra(Orchestras.ORCHESTRA_MARESLEG_AKIMBO),
|
.anim(LAMBDA_MARESLEG_SHORT_ANIMS).orchestra(Orchestras.ORCHESTRA_MARESLEG_AKIMBO),
|
||||||
new GunConfig().dura(600).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(600).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(16F).spreadHipfire(0F).spreadAmmo(1.35F).delay(20).reload(22, 10, 13, 0).jam(24).sound("hbm:weapon.fire.shotgun", 1.0F, 1.0F)
|
.dmg(16F).spreadHipfire(0F).spreadAmmo(1.35F).delay(20).reload(22, 10, 13, 0).jam(24).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(1, 6).addConfigs(all))
|
.mag(new MagazineSingleReload(1, 6).addConfigs(all))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
||||||
@ -323,7 +324,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_maresleg_broken = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_maresleg_broken = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(0).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(0).draw(5).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(48F).spreadAmmo(1.15F).delay(20).reload(22, 10, 13, 0).jam(24).sound("hbm:weapon.fire.shotgun", 1.0F, 1.0F)
|
.dmg(48F).spreadAmmo(1.15F).delay(20).reload(22, 10, 13, 0).jam(24).sound(NTMSounds.GUN_SHOTGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 6).addConfigs(g12_equestrian_tkr, g12_bp, g12_bp_magnum, g12_bp_slug, g12, g12_slug, g12_flechette, g12_magnum, g12_explosive, g12_phosphorus))
|
.mag(new MagazineSingleReload(0, 6).addConfigs(g12_equestrian_tkr, g12_bp, g12_bp_magnum, g12_bp_slug, g12, g12_slug, g12_flechette, g12_magnum, g12_explosive, g12_phosphorus))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_MARESLEG))
|
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_MARESLEG))
|
||||||
@ -334,7 +335,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_liberator = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_liberator = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(200).draw(20).inspect(21).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(200).draw(20).inspect(21).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(16F).delay(20).rounds(4).reload(25, 15, 7, 0).jam(45).sound("hbm:weapon.fire.shotgunAlt", 1.0F, 1.0F)
|
.dmg(16F).delay(20).rounds(4).reload(25, 15, 7, 0).jam(45).sound(NTMSounds.GUN_LIBERATOR_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 4).addConfigs(all))
|
.mag(new MagazineSingleReload(0, 4).addConfigs(all))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_LIBERATOR))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_LIBERATOR))
|
||||||
@ -345,7 +346,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_spas12 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_spas12 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(600).draw(20).inspect(39).reloadSequential(true).reloadChangeType(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(600).draw(20).inspect(39).reloadSequential(true).reloadChangeType(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(32F).spreadHipfire(0F).delay(20).reload(5, 10, 10, 10, 0).jam(36).sound("hbm:weapon.shotgunShoot", 1.0F, 1.0F)
|
.dmg(32F).spreadHipfire(0F).delay(20).reload(5, 10, 10, 10, 0).jam(36).sound(NTMSounds.GUN_SPAS_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 8).addConfigs(all))
|
.mag(new MagazineSingleReload(0, 8).addConfigs(all))
|
||||||
.offset(0.75, -0.0625, -0.1875)
|
.offset(0.75, -0.0625, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MARESLEG))
|
||||||
@ -356,7 +357,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_autoshotgun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_autoshotgun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(2_000).draw(10).inspect(33).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(2_000).draw(10).inspect(33).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(48F).delay(10).auto(true).autoAfterDry(true).dryfireAfterAuto(true).reload(44).jam(19).sound("hbm:weapon.fire.shotgunAuto", 1.0F, 1.0F)
|
.dmg(48F).delay(10).auto(true).autoAfterDry(true).dryfireAfterAuto(true).reload(44).jam(19).sound(NTMSounds.GUN_SHREDDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 20).addConfigs(all))
|
.mag(new MagazineFullReload(0, 20).addConfigs(all))
|
||||||
.offset(0.75, -0.125, -0.25)
|
.offset(0.75, -0.125, -0.25)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AUTOSHOTGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AUTOSHOTGUN))
|
||||||
@ -366,7 +367,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_autoshotgun_shredder = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_autoshotgun_shredder = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(2_000).draw(10).inspect(33).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(2_000).draw(10).inspect(33).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(50F).delay(10).auto(true).autoAfterDry(true).dryfireAfterAuto(true).reload(44).jam(19).sound("hbm:weapon.fire.shotgunAuto", 1.0F, 1.0F)
|
.dmg(50F).delay(10).auto(true).autoAfterDry(true).dryfireAfterAuto(true).reload(44).jam(19).sound(NTMSounds.GUN_SHREDDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(g12_shredder, g12_shredder_slug, g12_shredder_flechette, g12_shredder_magnum, g12_shredder_explosive, g12_shredder_phosphorus))
|
.mag(new MagazineBelt().addConfigs(g12_shredder, g12_shredder_slug, g12_shredder_flechette, g12_shredder_magnum, g12_shredder_explosive, g12_shredder_phosphorus))
|
||||||
.offset(0.75, -0.125, -0.25)
|
.offset(0.75, -0.125, -0.25)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AUTOSHOTGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AUTOSHOTGUN))
|
||||||
@ -377,7 +378,7 @@ public class XFactory12ga {
|
|||||||
ModItems.gun_autoshotgun_sexy = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_autoshotgun_sexy = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(5_000).draw(20).inspect(65).reloadSequential(true).inspectCancel(false).crosshair(Crosshair.L_CIRCLE).hideCrosshair(false).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(5_000).draw(20).inspect(65).reloadSequential(true).inspectCancel(false).crosshair(Crosshair.L_CIRCLE).hideCrosshair(false).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(64F).delay(4).auto(true).dryfireAfterAuto(true).reload(110).jam(19).sound("hbm:weapon.fire.shotgunAuto", 1.0F, 1.0F)
|
.dmg(64F).delay(4).auto(true).dryfireAfterAuto(true).reload(110).jam(19).sound(NTMSounds.GUN_SHREDDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 100).addConfigs(g12_equestrian_bj, g12_bp, g12_bp_magnum, g12_bp_slug, g12, g12_slug, g12_flechette, g12_magnum, g12_explosive, g12_phosphorus))
|
.mag(new MagazineFullReload(0, 100).addConfigs(g12_equestrian_bj, g12_bp, g12_bp_magnum, g12_bp_slug, g12, g12_slug, g12_flechette, g12_magnum, g12_explosive, g12_phosphorus))
|
||||||
.offset(0.75, -0.125, -0.25)
|
.offset(0.75, -0.125, -0.25)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_SEXY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_SEXY))
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
@ -49,7 +50,7 @@ public class XFactory22lr {
|
|||||||
ModItems.gun_am180 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_am180 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(177 * 25).draw(15).inspect(38).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(177 * 25).draw(15).inspect(38).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(2F).delay(1).dry(10).auto(true).spread(0.01F).reload(66).jam(30).sound("hbm:weapon.fire.greaseGun", 1.0F, 1.0F)
|
.dmg(2F).delay(1).dry(10).auto(true).spread(0.01F).reload(66).jam(30).sound(NTMSounds.GUN_GREASEGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 177).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
.mag(new MagazineFullReload(0, 177).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AM180))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AM180))
|
||||||
@ -61,7 +62,7 @@ public class XFactory22lr {
|
|||||||
ModItems.gun_star_f = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_star_f = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound("hbm:weapon.fire.pistolLight", 1.0F, 1.0F)
|
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound(NTMSounds.GUN_STARF_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
.mag(new MagazineFullReload(0, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
||||||
@ -73,7 +74,7 @@ public class XFactory22lr {
|
|||||||
ModItems.gun_star_f_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
ModItems.gun_star_f_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
||||||
new GunConfig().dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
new GunConfig().dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound("hbm:weapon.fire.pistolLight", 1.0F, 1.0F)
|
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound(NTMSounds.GUN_STARF_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
.mag(new MagazineFullReload(0, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
||||||
.offset(1, -0.0625 * 1.5, 0.25D)
|
.offset(1, -0.0625 * 1.5, 0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
||||||
@ -82,7 +83,7 @@ public class XFactory22lr {
|
|||||||
.anim(LAMBDA_STAR_F_ANIMS).orchestra(Orchestras.ORCHESTRA_STAR_F_AKIMBO),
|
.anim(LAMBDA_STAR_F_ANIMS).orchestra(Orchestras.ORCHESTRA_STAR_F_AKIMBO),
|
||||||
new GunConfig().dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
new GunConfig().dura(15 * 25).draw(15).inspect(38).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound("hbm:weapon.fire.pistolLight", 1.0F, 1.0F)
|
.dmg(12.5F).delay(5).dry(17).spread(0.01F).reload(40).jam(32).sound(NTMSounds.GUN_STARF_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(1, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
.mag(new MagazineFullReload(1, 15).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap))
|
||||||
.offset(1, -0.0625 * 1.5, -0.25D)
|
.offset(1, -0.0625 * 1.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_STAR_F))
|
||||||
|
|||||||
@ -14,6 +14,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationKeyframe.IType;
|
import com.hbm.render.anim.BusAnimationKeyframe.IType;
|
||||||
@ -41,7 +42,7 @@ public class XFactory357 {
|
|||||||
ModItems.gun_light_revolver = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_light_revolver = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(7.5F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.pistol", 1.0F, 1.0F)
|
.dmg(7.5F).delay(11).reload(55).jam(45).sound(NTMSounds.GUN_PISTOL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ATLAS))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ATLAS))
|
||||||
@ -51,7 +52,7 @@ public class XFactory357 {
|
|||||||
ModItems.gun_light_revolver_atlas = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_light_revolver_atlas = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(12.5F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.pistol", 1.0F, 1.0F)
|
.dmg(12.5F).delay(11).reload(55).jam(45).sound(NTMSounds.GUN_PISTOL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ATLAS))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ATLAS))
|
||||||
@ -61,7 +62,7 @@ public class XFactory357 {
|
|||||||
ModItems.gun_light_revolver_dani = new ItemGunBaseNT(WeaponQuality.LEGENDARY,
|
ModItems.gun_light_revolver_dani = new ItemGunBaseNT(WeaponQuality.LEGENDARY,
|
||||||
new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).spreadHipfire(0F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.pistol", 1.0F, 1.1F)
|
.dmg(15F).spreadHipfire(0F).delay(11).reload(55).jam(45).sound(NTMSounds.GUN_PISTOL_FIRE, 1.0F, 1.1F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
||||||
.offset(0.75, -0.0625, 0.3125D)
|
.offset(0.75, -0.0625, 0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_DANI))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_DANI))
|
||||||
@ -70,7 +71,7 @@ public class XFactory357 {
|
|||||||
.anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_DANI),
|
.anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_DANI),
|
||||||
new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).spreadHipfire(0F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.pistol", 1.0F, 0.9F)
|
.dmg(15F).spreadHipfire(0F).delay(11).reload(55).jam(45).sound(NTMSounds.GUN_PISTOL_FIRE, 1.0F, 0.9F)
|
||||||
.mag(new MagazineFullReload(1, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
.mag(new MagazineFullReload(1, 6).addConfigs(m357_bp, m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_DANI))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_DANI))
|
||||||
|
|||||||
@ -16,6 +16,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmoSecret;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmoSecret;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -59,7 +60,7 @@ public class XFactory35800 {
|
|||||||
ModItems.gun_aberrator = new ItemGunBaseNT(WeaponQuality.SECRET, new GunConfig()
|
ModItems.gun_aberrator = new ItemGunBaseNT(WeaponQuality.SECRET, new GunConfig()
|
||||||
.dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(100F).delay(13).dry(21).reload(51).sound("hbm:weapon.fire.aberrator", 1.0F, 1.0F)
|
.dmg(100F).delay(13).dry(21).reload(51).sound(NTMSounds.GUN_ABERRATOR_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 5).addConfigs(p35800, p35800_bl))
|
.mag(new MagazineFullReload(0, 5).addConfigs(p35800, p35800_bl))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
||||||
@ -70,7 +71,7 @@ public class XFactory35800 {
|
|||||||
ModItems.gun_aberrator_eott = new ItemGunBaseNT(WeaponQuality.SECRET,
|
ModItems.gun_aberrator_eott = new ItemGunBaseNT(WeaponQuality.SECRET,
|
||||||
new GunConfig().dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(100F).spreadHipfire(0F).delay(13).dry(21).reload(51).sound("hbm:weapon.fire.aberrator", 1.0F, 1.0F)
|
.dmg(100F).spreadHipfire(0F).delay(13).dry(21).reload(51).sound(NTMSounds.GUN_ABERRATOR_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 5).addConfigs(p35800, p35800_bl))
|
.mag(new MagazineFullReload(0, 5).addConfigs(p35800, p35800_bl))
|
||||||
.offset(0.75, -0.0625 * 1.5, 0.1875)
|
.offset(0.75, -0.0625 * 1.5, 0.1875)
|
||||||
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
||||||
@ -79,7 +80,7 @@ public class XFactory35800 {
|
|||||||
.anim(LAMBDA_ABERRATOR).orchestra(Orchestras.ORCHESTRA_ABERRATOR),
|
.anim(LAMBDA_ABERRATOR).orchestra(Orchestras.ORCHESTRA_ABERRATOR),
|
||||||
new GunConfig().dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
new GunConfig().dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(100F).spreadHipfire(0F).delay(13).dry(21).reload(51).sound("hbm:weapon.fire.aberrator", 1.0F, 1.0F)
|
.dmg(100F).spreadHipfire(0F).delay(13).dry(21).reload(51).sound(NTMSounds.GUN_ABERRATOR_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(1, 5).addConfigs(p35800, p35800_bl))
|
.mag(new MagazineFullReload(1, 5).addConfigs(p35800, p35800_bl))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
.canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_NOWEAR_FIRE).recoil(LAMBDA_RECOIL_ABERRATOR))
|
||||||
|
|||||||
@ -27,6 +27,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
|||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
@ -156,7 +157,7 @@ public class XFactory40mm {
|
|||||||
ModItems.gun_flaregun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_flaregun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(100).draw(7).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE)
|
.dura(100).draw(7).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).delay(20).reload(28).jam(33).sound("hbm:weapon.hkShoot", 1.0F, 1.0F)
|
.dmg(15F).delay(20).reload(28).jam(33).sound(NTMSounds.GUN_UNDERBARREL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(g26_flare, g26_flare_supply, g26_flare_weapon))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(g26_flare, g26_flare_supply, g26_flare_weapon))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_GL))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_GL))
|
||||||
@ -167,7 +168,7 @@ public class XFactory40mm {
|
|||||||
ModItems.gun_congolake = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_congolake = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(400).draw(7).inspect(39).reloadSequential(true).reloadChangeType(true).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE)
|
.dura(400).draw(7).inspect(39).reloadSequential(true).reloadChangeType(true).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(20F).delay(24).reload(16, 16, 16, 0).jam(0).sound("hbm:weapon.glShoot", 1.0F, 1.0F)
|
.dmg(20F).delay(24).reload(16, 16, 16, 0).jam(0).sound(NTMSounds.GUN_CONGO_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 4).addConfigs(g40_he, g40_heat, g40_demo, g40_inc, g40_phosphorus))
|
.mag(new MagazineSingleReload(0, 4).addConfigs(g40_he, g40_heat, g40_demo, g40_inc, g40_phosphorus))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_GL))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_GL))
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
import com.hbm.lib.RefStrings;
|
import com.hbm.lib.RefStrings;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -53,7 +54,7 @@ public class XFactory44 {
|
|||||||
pippo.posY = mop.hitVec.yCoord + 50;
|
pippo.posY = mop.hitVec.yCoord + 50;
|
||||||
pippo.posZ = mop.hitVec.zCoord;;
|
pippo.posZ = mop.hitVec.zCoord;;
|
||||||
bullet.worldObj.spawnEntityInWorld(pippo);
|
bullet.worldObj.spawnEntityInWorld(pippo);
|
||||||
bullet.worldObj.playSoundEffect(pippo.posX, pippo.posY + 50, pippo.posZ, "hbm:alarm.trainHorn", 100F, 1F);
|
bullet.worldObj.playSoundEffect(pippo.posX, pippo.posY + 50, pippo.posZ, NTMSounds.GUN_GO_GO_GADGET_FUCK_EVERYTHING_IN_THIS_GENERAL_DIRECTION, 100F, 1F);
|
||||||
bullet.setDead();
|
bullet.setDead();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -88,7 +89,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_henry = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_henry = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(15).inspect(23).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(300).draw(15).inspect(23).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(10F).delay(20).reload(25, 11, 14, 8).jam(45).sound("hbm:weapon.fire.rifle", 1.0F, 1.0F)
|
.dmg(10F).delay(20).reload(25, 11, 14, 8).jam(45).sound(NTMSounds.GUN_RIFLE_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 14).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineSingleReload(0, 14).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_HENRY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_HENRY))
|
||||||
@ -98,7 +99,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_henry_lincoln = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_henry_lincoln = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(300).draw(15).inspect(23).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(300).draw(15).inspect(23).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(20F).spreadHipfire(0F).delay(20).reload(25, 11, 14, 8).jam(45).sound("hbm:weapon.fire.rifle", 1.0F, 1.25F)
|
.dmg(20F).spreadHipfire(0F).delay(20).reload(25, 11, 14, 8).jam(45).sound(NTMSounds.GUN_RIFLE_FIRE, 1.0F, 1.25F)
|
||||||
.mag(new MagazineSingleReload(0, 14).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineSingleReload(0, 14).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_HENRY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_HENRY))
|
||||||
@ -109,7 +110,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_heavy_revolver = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_heavy_revolver = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(600).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(600).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).delay(14).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 1.0F)
|
.dmg(15F).delay(14).reload(46).jam(23).sound(NTMSounds.GUN_HEAVY_REVOLVER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
||||||
@ -120,7 +121,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_heavy_revolver_lilmac = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_heavy_revolver_lilmac = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(31_000).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).scopeTexture(scope_lilmac).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(31_000).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).scopeTexture(scope_lilmac).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).delay(14).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 1.0F)
|
.dmg(30F).delay(14).reload(46).jam(23).sound(NTMSounds.GUN_HEAVY_REVOLVER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m44_equestrian_pip, m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m44_equestrian_pip, m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
||||||
@ -130,7 +131,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_heavy_revolver_protege = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_heavy_revolver_protege = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(31_000).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(31_000).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).delay(14).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 0.8F)
|
.dmg(30F).delay(14).reload(46).jam(23).sound(NTMSounds.GUN_HEAVY_REVOLVER_FIRE, 1.0F, 0.8F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(m44_equestrian_mn7, m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineFullReload(0, 6).addConfigs(m44_equestrian_mn7, m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(0.75, -0.0625, -0.3125D)
|
.offset(0.75, -0.0625, -0.3125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_NOPIP))
|
||||||
@ -141,7 +142,7 @@ public class XFactory44 {
|
|||||||
ModItems.gun_hangman = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_hangman = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(600).draw(10).inspect(31).inspectCancel(false).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(600).draw(10).inspect(31).inspectCancel(false).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(25F).delay(10).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 1.0F)
|
.dmg(25F).delay(10).reload(46).jam(23).sound(NTMSounds.GUN_HEAVY_REVOLVER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 8).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
.mag(new MagazineFullReload(0, 8).addConfigs(m44_bp, m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_HANGMAN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_HANGMAN))
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmoSecret;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.lib.RefStrings;
|
import com.hbm.lib.RefStrings;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -83,7 +84,7 @@ public class XFactory50 {
|
|||||||
ModItems.gun_amat = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_amat = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(350).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
.dura(350).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).delay(25).dry(25).spreadHipfire(0.05F).reload(51).jam(43).sound("hbm:weapon.fire.amat", 1.0F, 1.0F)
|
.dmg(30F).delay(25).dry(25).spreadHipfire(0.05F).reload(51).jam(43).sound(NTMSounds.GUN_AMAT_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he))
|
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he))
|
||||||
.offset(1, -0.0625 * 1.5, -0.25D)
|
.offset(1, -0.0625 * 1.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
||||||
@ -93,7 +94,7 @@ public class XFactory50 {
|
|||||||
ModItems.gun_amat_subtlety = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_amat_subtlety = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(1_000).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
.dura(1_000).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(50F).delay(25).dry(25).spreadHipfire(0.05F).reload(51).jam(43).sound("hbm:weapon.fire.amat", 1.0F, 1.0F)
|
.dmg(50F).delay(25).dry(25).spreadHipfire(0.05F).reload(51).jam(43).sound(NTMSounds.GUN_AMAT_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_equestrian, bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he))
|
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_equestrian, bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he))
|
||||||
.offset(1, -0.0625 * 1.5, -0.25D)
|
.offset(1, -0.0625 * 1.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
||||||
@ -103,7 +104,7 @@ public class XFactory50 {
|
|||||||
ModItems.gun_amat_penance = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_amat_penance = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(5_000).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope_thermal).thermalSights(true).smoke(LAMBDA_SMOKE)
|
.dura(5_000).draw(20).inspect(50).crosshair(Crosshair.CIRCLE).scopeTexture(scope_thermal).thermalSights(true).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(45F).delay(25).dry(25).spreadHipfire(0F).reload(51).jam(43).sound("hbm:weapon.silencerShoot", 1.0F, 1.0F)
|
.dmg(45F).delay(25).dry(25).spreadHipfire(0F).reload(51).jam(43).sound(NTMSounds.GUN_AMAT_SILENCER, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he, bmg50_black))
|
.mag(new MagazineFullReload(0, 7).addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_sm, bmg50_he, bmg50_black))
|
||||||
.offset(1, -0.0625 * 1.5, -0.25D)
|
.offset(1, -0.0625 * 1.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_AMAT))
|
||||||
@ -114,7 +115,7 @@ public class XFactory50 {
|
|||||||
ModItems.gun_m2 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_m2 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(10).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(10).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(7.5F).delay(2).dry(10).auto(true).spread(0.005F).sound("hbm:turret.chekhov_fire", 1.0F, 1.0F)
|
.dmg(7.5F).delay(2).dry(10).auto(true).spread(0.005F).sound(NTMSounds.TURRET_50BMG, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_he))
|
.mag(new MagazineBelt().addConfigs(bmg50_sp, bmg50_fmj, bmg50_jhp, bmg50_ap, bmg50_du, bmg50_he))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_M2))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_M2))
|
||||||
|
|||||||
@ -22,6 +22,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
|||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
import com.hbm.lib.RefStrings;
|
import com.hbm.lib.RefStrings;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
@ -75,7 +76,7 @@ public class XFactory556mm {
|
|||||||
ModItems.gun_g3 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_g3 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(5F).delay(2).auto(true).dry(15).reload(50).jam(47).sound("hbm:weapon.fire.assault", 1.0F, 1.0F)
|
.dmg(5F).delay(2).auto(true).dry(15).reload(50).jam(47).sound(NTMSounds.GUN_ASSAULT_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(r556_sp, r556_fmj, r556_jhp, r556_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(r556_sp, r556_fmj, r556_jhp, r556_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_G3))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_G3))
|
||||||
@ -85,7 +86,7 @@ public class XFactory556mm {
|
|||||||
ModItems.gun_g3_zebra = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_g3_zebra = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(6_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).scopeTexture(scope)
|
.dura(6_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).scopeTexture(scope)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(7.5F).delay(2).auto(true).dry(15).spreadHipfire(0.01F).reload(50).jam(47).sound("hbm:weapon.fire.silenced", 1.0F, 1.0F)
|
.dmg(7.5F).delay(2).auto(true).dry(15).spreadHipfire(0.01F).reload(50).jam(47).sound(NTMSounds.GUN_RIFLE_SILENCER, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(r556_inc_sp, r556_inc_fmj, r556_inc_jhp, r556_inc_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(r556_inc_sp, r556_inc_fmj, r556_inc_jhp, r556_inc_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ZEBRA))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ZEBRA))
|
||||||
@ -96,7 +97,7 @@ public class XFactory556mm {
|
|||||||
ModItems.gun_stg77 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_stg77 = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(10).inspect(125).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(10).inspect(125).crosshair(Crosshair.CIRCLE).scopeTexture(scope).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(10F).delay(2).dry(15).auto(true).reload(46).jam(0).sound("hbm:weapon.fire.assault", 1.0F, 1.0F)
|
.dmg(10F).delay(2).dry(15).auto(true).reload(46).jam(0).sound(NTMSounds.GUN_ASSAULT_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(r556_sp, r556_fmj, r556_jhp, r556_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(r556_sp, r556_fmj, r556_jhp, r556_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_STG))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_STG))
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -58,7 +59,7 @@ public class XFactory75Bolt {
|
|||||||
ModItems.gun_bolter = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
ModItems.gun_bolter = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
||||||
.dura(3_000).draw(20).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(20).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).delay(2).auto(true).spread(0.005F).reload(40).jam(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F)
|
.dmg(15F).delay(2).auto(true).spread(0.005F).reload(40).jam(55).sound(NTMSounds.GUN_POWDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(b75, b75_inc, b75_exp))
|
.mag(new MagazineFullReload(0, 30).addConfigs(b75, b75_inc, b75_exp))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_BOLT))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_BOLT))
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -69,7 +70,7 @@ public class XFactory762mm {
|
|||||||
ModItems.gun_carbine = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_carbine = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(10).inspect(31).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(10).inspect(31).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(15F).delay(5).dry(15).spread(0.0F).reload(30, 0, 15, 0).jam(60).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F)
|
.dmg(15F).delay(5).dry(15).spread(0.0F).reload(30, 0, 15, 0).jam(60).sound(NTMSounds.GUN_POWDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 14).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
.mag(new MagazineFullReload(0, 14).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_CARBINE))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_CARBINE))
|
||||||
@ -80,7 +81,7 @@ public class XFactory762mm {
|
|||||||
ModItems.gun_minigun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_minigun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound("hbm:weapon.calShoot", 1.0F, 1.0F)
|
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound(NTMSounds.GUN_MINIGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
||||||
@ -90,7 +91,7 @@ public class XFactory762mm {
|
|||||||
ModItems.gun_minigun_lacunae = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_minigun_lacunae = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE)
|
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(12F).delay(1).auto(true).dry(15).reload(15).spread(0.01F).sound("hbm:weapon.fire.laserGatling", 1.0F, 1.0F)
|
.dmg(12F).delay(1).auto(true).dry(15).reload(15).spread(0.01F).sound(NTMSounds.GUN_LASER_GATLING_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 200).addConfigs(energy_lacunae, energy_lacunae_overcharge, energy_lacunae_ir))
|
.mag(new MagazineFullReload(0, 200).addConfigs(energy_lacunae, energy_lacunae_overcharge, energy_lacunae_ir))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_LACUNAE))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_LACUNAE))
|
||||||
@ -101,7 +102,7 @@ public class XFactory762mm {
|
|||||||
new GunConfig()
|
new GunConfig()
|
||||||
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound("hbm:weapon.calShoot", 1.0F, 1.0F)
|
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound(NTMSounds.GUN_MINIGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
||||||
.offset(1, -0.0625 * 2.5, 0.25D)
|
.offset(1, -0.0625 * 2.5, 0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
||||||
@ -111,7 +112,7 @@ public class XFactory762mm {
|
|||||||
new GunConfig()
|
new GunConfig()
|
||||||
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(50_000).draw(20).inspect(20).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound("hbm:weapon.calShoot", 1.0F, 1.0F)
|
.dmg(6F).delay(1).auto(true).dry(15).spread(0.01F).sound(NTMSounds.GUN_MINIGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
.mag(new MagazineBelt().addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_MINIGUN))
|
||||||
@ -123,7 +124,7 @@ public class XFactory762mm {
|
|||||||
ModItems.gun_mas36 = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_mas36 = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(5_000).draw(20).inspect(31).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(5_000).draw(20).inspect(31).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).delay(25).dry(25).spread(0.0F).reload(43).jam(43).sound("hbm:weapon.fire.rifleHeavy", 1.0F, 1.0F)
|
.dmg(30F).delay(25).dry(25).spread(0.0F).reload(43).jam(43).sound(NTMSounds.GUN_HEAVY_RIFLE_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 7).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
.mag(new MagazineFullReload(0, 7).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du, r762_he))
|
||||||
.offset(1, -0.0625 * 1.5, -0.25D)
|
.offset(1, -0.0625 * 1.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_CARBINE))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_CARBINE))
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import com.hbm.items.weapon.sedna.mags.IMagazine;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.particle.SpentCasing;
|
import com.hbm.particle.SpentCasing;
|
||||||
import com.hbm.particle.SpentCasing.CasingType;
|
import com.hbm.particle.SpentCasing.CasingType;
|
||||||
@ -53,7 +54,7 @@ public class XFactory9mm {
|
|||||||
ModItems.gun_greasegun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_greasegun = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(20).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(20).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(3F).delay(4).dry(40).auto(true).spread(0.015F).reload(60).jam(55).sound("hbm:weapon.fire.greaseGun", 1.0F, 1.0F)
|
.dmg(3F).delay(4).dry(40).auto(true).spread(0.015F).reload(60).jam(55).sound(NTMSounds.GUN_GREASEGUN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_GREASEGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_GREASEGUN))
|
||||||
@ -65,7 +66,7 @@ public class XFactory9mm {
|
|||||||
ModItems.gun_lag = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_lag = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(1_700).draw(7).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(1_700).draw(7).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(25F).delay(4).dry(10).spread(0.005F).reload(53).jam(44).sound("hbm:weapon.fire.pistol", 1.0F, 1.0F)
|
.dmg(25F).delay(4).dry(10).spread(0.005F).reload(53).jam(44).sound(NTMSounds.GUN_PISTOL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 17).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
.mag(new MagazineFullReload(0, 17).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().fire(LAMBDA_FIRE_LAG).recoil(LAMBDA_RECOIL_LAG))
|
.setupStandardFire().fire(LAMBDA_FIRE_LAG).recoil(LAMBDA_RECOIL_LAG))
|
||||||
@ -76,7 +77,7 @@ public class XFactory9mm {
|
|||||||
ModItems.gun_uzi = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_uzi = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
.dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(3F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound("hbm:weapon.fire.uzi", 1.0F, 1.0F)
|
.dmg(3F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound(NTMSounds.GUN_UZI_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
||||||
@ -87,7 +88,7 @@ public class XFactory9mm {
|
|||||||
ModItems.gun_uzi_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
ModItems.gun_uzi_akimbo = new ItemGunBaseNT(WeaponQuality.B_SIDE,
|
||||||
new GunConfig().dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
new GunConfig().dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(3F).spreadHipfire(0F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound("hbm:weapon.fire.uzi", 1.0F, 1.0F)
|
.dmg(3F).spreadHipfire(0F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound(NTMSounds.GUN_UZI_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
.mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
||||||
.offset(1, -0.0625 * 2.5, 0.375D)
|
.offset(1, -0.0625 * 2.5, 0.375D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
||||||
@ -96,7 +97,7 @@ public class XFactory9mm {
|
|||||||
.anim(LAMBDA_UZI_ANIMS).orchestra(Orchestras.ORCHESTRA_UZI_AKIMBO),
|
.anim(LAMBDA_UZI_ANIMS).orchestra(Orchestras.ORCHESTRA_UZI_AKIMBO),
|
||||||
new GunConfig().dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
new GunConfig().dura(3_000).draw(15).inspect(31).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(3F).spreadHipfire(0F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound("hbm:weapon.fire.uzi", 1.0F, 1.0F)
|
.dmg(3F).spreadHipfire(0F).delay(2).dry(25).auto(true).spread(0.005F).reload(55).jam(50).sound(NTMSounds.GUN_UZI_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(1, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
.mag(new MagazineFullReload(1, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap))
|
||||||
.offset(1, -0.0625 * 2.5, -0.375D)
|
.offset(1, -0.0625 * 2.5, -0.375D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_UZI))
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineInfinite;
|
import com.hbm.items.weapon.sedna.mags.MagazineInfinite;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
@ -121,7 +122,7 @@ public class XFactoryAccelerator {
|
|||||||
ModItems.gun_coilgun = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
ModItems.gun_coilgun = new ItemGunBaseNT(WeaponQuality.SPECIAL, new GunConfig()
|
||||||
.dura(400).draw(5).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX)
|
.dura(400).draw(5).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(35F).delay(5).reload(20).jam(33).sound("hbm:weapon.coilgunShoot", 1.0F, 1.0F)
|
.dmg(35F).delay(5).reload(20).jam(33).sound(NTMSounds.GUN_COIL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(coil_tungsten, coil_ferrouranium))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(coil_tungsten, coil_ferrouranium))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_COILGUN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_COILGUN))
|
||||||
@ -132,7 +133,7 @@ public class XFactoryAccelerator {
|
|||||||
ModItems.gun_n_i_4_n_i = new ItemGunNI4NI(WeaponQuality.SPECIAL, new GunConfig()
|
ModItems.gun_n_i_4_n_i = new ItemGunNI4NI(WeaponQuality.SPECIAL, new GunConfig()
|
||||||
.dura(0).draw(5).inspect(39).crosshair(Crosshair.CIRCLE)
|
.dura(0).draw(5).inspect(39).crosshair(Crosshair.CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(35F).delay(10).sound("hbm:weapon.coilgunShoot", 1.0F, 1.0F)
|
.dmg(35F).delay(10).sound(NTMSounds.GUN_COIL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineInfinite(ni4ni_arc))
|
.mag(new MagazineInfinite(ni4ni_arc))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().fire(Lego.LAMBDA_NOWEAR_FIRE))
|
.setupStandardFire().fire(Lego.LAMBDA_NOWEAR_FIRE))
|
||||||
@ -144,7 +145,7 @@ public class XFactoryAccelerator {
|
|||||||
|
|
||||||
public static BiConsumer<ItemStack, LambdaContext> LAMBDA_TAU_PRIMARY_RELEASE = (stack, ctx) -> {
|
public static BiConsumer<ItemStack, LambdaContext> LAMBDA_TAU_PRIMARY_RELEASE = (stack, ctx) -> {
|
||||||
if(ctx.getPlayer() == null || ItemGunBaseNT.getLastAnim(stack, ctx.configIndex) != GunAnimation.CYCLE) return;
|
if(ctx.getPlayer() == null || ItemGunBaseNT.getLastAnim(stack, ctx.configIndex) != GunAnimation.CYCLE) return;
|
||||||
ctx.getPlayer().worldObj.playSoundEffect(ctx.getPlayer().posX, ctx.getPlayer().posY, ctx.getPlayer().posZ, "hbm:weapon.fire.tauRelease", 1F, 1F);
|
ctx.getPlayer().worldObj.playSoundEffect(ctx.getPlayer().posX, ctx.getPlayer().posY, ctx.getPlayer().posZ, NTMSounds.GUN_TAU_STOPFIRE, 1F, 1F);
|
||||||
};
|
};
|
||||||
|
|
||||||
public static BiConsumer<ItemStack, LambdaContext> LAMBDA_TAU_SECONDARY_PRESS = (stack, ctx) -> {
|
public static BiConsumer<ItemStack, LambdaContext> LAMBDA_TAU_SECONDARY_PRESS = (stack, ctx) -> {
|
||||||
@ -200,7 +201,7 @@ public class XFactoryAccelerator {
|
|||||||
coin.setThrower(player);
|
coin.setThrower(player);
|
||||||
player.worldObj.spawnEntityInWorld(coin);
|
player.worldObj.spawnEntityInWorld(coin);
|
||||||
|
|
||||||
player.worldObj.playSoundAtEntity(player, "random.orb", 1.0F, 1F + player.getRNG().nextFloat() * 0.25F);
|
player.worldObj.playSoundAtEntity(player, NTMSounds.VANILLA_ORB, 1.0F, 1F + player.getRNG().nextFloat() * 0.25F);
|
||||||
|
|
||||||
ItemGunNI4NI.setCoinCount(stack, ItemGunNI4NI.getCoinCount(stack) - 1);
|
ItemGunNI4NI.setCoinCount(stack, ItemGunNI4NI.getCoinCount(stack) - 1);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,6 +13,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
@ -32,7 +33,7 @@ public class XFactoryBlackPowder {
|
|||||||
ModItems.gun_pepperbox = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_pepperbox = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
.dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(5F).delay(27).reload(67).jam(58).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F)
|
.dmg(5F).delay(27).reload(67).jam(58).sound(NTMSounds.GUN_POWDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot))
|
.mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot))
|
||||||
.offset(0.75, -0.0625, -0.1875D)
|
.offset(0.75, -0.0625, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_PEPPERBOX))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_PEPPERBOX))
|
||||||
|
|||||||
@ -27,6 +27,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
|||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
@ -100,7 +101,7 @@ public class XFactoryCatapult {
|
|||||||
|
|
||||||
incrementRad(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, 1.5F);
|
incrementRad(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, 1.5F);
|
||||||
|
|
||||||
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, "hbm:weapon.mukeExplosion", 15.0F, 1.0F);
|
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, NTMSounds.GUN_MINI_NUKE_EXPLOSION, 15.0F, 1.0F);
|
||||||
NBTTagCompound data = new NBTTagCompound();
|
NBTTagCompound data = new NBTTagCompound();
|
||||||
data.setString("type", "muke");
|
data.setString("type", "muke");
|
||||||
data.setBoolean("balefire", true);
|
data.setBoolean("balefire", true);
|
||||||
@ -117,7 +118,7 @@ public class XFactoryCatapult {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void spawnMush(EntityBulletBaseMK4 bullet, MovingObjectPosition mop) {
|
public static void spawnMush(EntityBulletBaseMK4 bullet, MovingObjectPosition mop) {
|
||||||
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, "hbm:weapon.mukeExplosion", 15.0F, 1.0F);
|
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, NTMSounds.GUN_MINI_NUKE_EXPLOSION, 15.0F, 1.0F);
|
||||||
NBTTagCompound data = new NBTTagCompound();
|
NBTTagCompound data = new NBTTagCompound();
|
||||||
data.setString("type", "muke");
|
data.setString("type", "muke");
|
||||||
data.setBoolean("balefire", MainRegistry.polaroidID == 11 || bullet.worldObj.rand.nextInt(100) == 0);
|
data.setBoolean("balefire", MainRegistry.polaroidID == 11 || bullet.worldObj.rand.nextInt(100) == 0);
|
||||||
@ -135,7 +136,7 @@ public class XFactoryCatapult {
|
|||||||
vnt.explode();
|
vnt.explode();
|
||||||
|
|
||||||
incrementRad(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, 0.25F);
|
incrementRad(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, 0.25F);
|
||||||
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, "hbm:weapon.mukeExplosion", 15.0F, 1.0F);
|
bullet.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord, NTMSounds.GUN_MINI_NUKE_EXPLOSION, 15.0F, 1.0F);
|
||||||
NBTTagCompound data = new NBTTagCompound();
|
NBTTagCompound data = new NBTTagCompound();
|
||||||
data.setString("type", "tinytot");
|
data.setString("type", "tinytot");
|
||||||
data.setBoolean("balefire", MainRegistry.polaroidID == 11 || bullet.worldObj.rand.nextInt(100) == 0);
|
data.setBoolean("balefire", MainRegistry.polaroidID == 11 || bullet.worldObj.rand.nextInt(100) == 0);
|
||||||
@ -165,7 +166,7 @@ public class XFactoryCatapult {
|
|||||||
ModItems.gun_fatman = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_fatman = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(20).inspect(30).reloadChangeType(true).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
.dura(300).draw(20).inspect(30).reloadChangeType(true).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(100F).spreadHipfire(0F).delay(10).reload(57).jam(40).sound("hbm:weapon.fire.fatman", 1.0F, 1.0F)
|
.dmg(100F).spreadHipfire(0F).delay(10).reload(57).jam(40).sound(NTMSounds.GUN_FATMAN_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(nuke_standard, nuke_demo, nuke_high, nuke_tots, nuke_hive, nuke_balefire))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(nuke_standard, nuke_demo, nuke_high, nuke_tots, nuke_hive, nuke_balefire))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D).offsetScoped(1, -0.0625 * 1.5, -0.125D)
|
.offset(1, -0.0625 * 1.5, -0.1875D).offsetScoped(1, -0.0625 * 1.5, -0.125D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_FATMAN))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_FATMAN))
|
||||||
|
|||||||
@ -17,6 +17,7 @@ import com.hbm.items.weapon.sedna.impl.ItemGunDrill;
|
|||||||
import com.hbm.items.weapon.sedna.mags.IMagazine;
|
import com.hbm.items.weapon.sedna.mags.IMagazine;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineLiquidEngine;
|
import com.hbm.items.weapon.sedna.mags.MagazineLiquidEngine;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
import com.hbm.render.anim.HbmAnimations;
|
import com.hbm.render.anim.HbmAnimations;
|
||||||
@ -89,6 +90,8 @@ public class XFactoryDrill {
|
|||||||
for(int i = -aoe; i <= aoe; i++) for(int j = -aoe; j <= aoe; j++) for(int k = -aoe; k <= aoe; k++) {
|
for(int i = -aoe; i <= aoe; i++) for(int j = -aoe; j <= aoe; j++) for(int k = -aoe; k <= aoe; k++) {
|
||||||
breakExtraBlock(player.worldObj, mop.blockX + i, mop.blockY + j, mop.blockZ + k, player, mop.blockX, mop.blockY, mop.blockZ);
|
breakExtraBlock(player.worldObj, mop.blockX + i, mop.blockY + j, mop.blockZ + k, player, mop.blockX, mop.blockY, mop.blockZ);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
didPlink = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -98,6 +101,8 @@ public class XFactoryDrill {
|
|||||||
if(calcWear) ItemGunBaseNT.setWear(stack, index, Math.min(ItemGunBaseNT.getWear(stack, index), ctx.config.getDurability(stack)));
|
if(calcWear) ItemGunBaseNT.setWear(stack, index, Math.min(ItemGunBaseNT.getWear(stack, index), ctx.config.getDurability(stack)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean didPlink = false;
|
||||||
|
|
||||||
public static void breakExtraBlock(World world, int x, int y, int z, EntityPlayer playerEntity, int refX, int refY, int refZ) {
|
public static void breakExtraBlock(World world, int x, int y, int z, EntityPlayer playerEntity, int refX, int refY, int refZ) {
|
||||||
if(world.isAirBlock(x, y, z)) return;
|
if(world.isAirBlock(x, y, z)) return;
|
||||||
if(!(playerEntity instanceof EntityPlayerMP)) return;
|
if(!(playerEntity instanceof EntityPlayerMP)) return;
|
||||||
@ -107,8 +112,12 @@ public class XFactoryDrill {
|
|||||||
int meta = world.getBlockMetadata(x, y, z);
|
int meta = world.getBlockMetadata(x, y, z);
|
||||||
|
|
||||||
if(!block.canHarvestBlock(player, meta) || (block.getBlockHardness(world, x, y, z) == -1.0F && block.getPlayerRelativeBlockHardness(player, world, x, y, z) == 0.0F) || block == ModBlocks.stone_keyhole) {
|
if(!block.canHarvestBlock(player, meta) || (block.getBlockHardness(world, x, y, z) == -1.0F && block.getPlayerRelativeBlockHardness(player, world, x, y, z) == 0.0F) || block == ModBlocks.stone_keyhole) {
|
||||||
world.playSoundAtEntity(player, "random.break", 0.5F, 0.8F + world.rand.nextFloat() * 0.6F);
|
if(!didPlink) {
|
||||||
|
world.playSoundAtEntity(player, NTMSounds.VANILLA_PLINK, 0.5F, 0.8F + world.rand.nextFloat() * 0.6F);
|
||||||
|
didPlink = true;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// we are serverside and tryHarvestBlock already invokes the 2001 packet for every player except the user, so we manually send it for the user as well
|
// we are serverside and tryHarvestBlock already invokes the 2001 packet for every player except the user, so we manually send it for the user as well
|
||||||
|
|||||||
@ -25,6 +25,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineBelt;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.lib.RefStrings;
|
import com.hbm.lib.RefStrings;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
@ -77,7 +78,7 @@ public class XFactoryEnergy {
|
|||||||
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
||||||
vnt.explode();
|
vnt.explode();
|
||||||
beam.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, "hbm:entity.ufoBlast", 5.0F, 0.9F + beam.worldObj.rand.nextFloat() * 0.2F);
|
beam.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, "hbm:entity.ufoBlast", 5.0F, 0.9F + beam.worldObj.rand.nextFloat() * 0.2F);
|
||||||
beam.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, "fireworks.blast", 5.0F, 0.5F);
|
beam.worldObj.playSoundEffect(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, NTMSounds.VANILLA_FIREWORKS_BANG, 5.0F, 0.5F);
|
||||||
|
|
||||||
float yaw = beam.worldObj.rand.nextFloat() * 180F;
|
float yaw = beam.worldObj.rand.nextFloat() * 180F;
|
||||||
for(int i = 0; i < 3; i++) {
|
for(int i = 0; i < 3; i++) {
|
||||||
@ -173,7 +174,7 @@ public class XFactoryEnergy {
|
|||||||
ModItems.gun_tesla_cannon = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_tesla_cannon = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(1_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE)
|
.dura(1_000).draw(10).inspect(33).crosshair(Crosshair.CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(35F).delay(20).spreadHipfire(1.5F).reload(44).jam(19).sound("hbm:weapon.fire.tesla", 1.0F, 1.0F)
|
.dmg(35F).delay(20).spreadHipfire(1.5F).reload(44).jam(19).sound(NTMSounds.GUN_TESLA_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineBelt().addConfigs(energy_tesla, energy_tesla_overcharge, energy_tesla_ir))
|
.mag(new MagazineBelt().addConfigs(energy_tesla, energy_tesla_overcharge, energy_tesla_ir))
|
||||||
.offset(0.75, 0, -0.375).offsetScoped(0.75, 0, -0.25)
|
.offset(0.75, 0, -0.375).offsetScoped(0.75, 0, -0.25)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
||||||
@ -184,7 +185,7 @@ public class XFactoryEnergy {
|
|||||||
ModItems.gun_laser_pistol = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_laser_pistol = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
.dura(500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(25F).delay(5).spread(1F).spreadHipfire(1F).reload(45).jam(37).sound("hbm:weapon.fire.laserPistol", 1.0F, 1.0F)
|
.dmg(25F).delay(5).spread(1F).spreadHipfire(1F).reload(45).jam(37).sound(NTMSounds.GUN_LASER_PISTOL_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 30).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
.mag(new MagazineFullReload(0, 30).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
||||||
@ -194,7 +195,7 @@ public class XFactoryEnergy {
|
|||||||
ModItems.gun_laser_pistol_pew_pew = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
ModItems.gun_laser_pistol_pew_pew = new ItemGunBaseNT(WeaponQuality.B_SIDE, new GunConfig()
|
||||||
.dura(500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
.dura(500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(30F).rounds(5).delay(10).spread(0.25F).spreadHipfire(1F).reload(45).jam(37).sound("hbm:weapon.fire.laserPistol", 1.0F, 0.8F)
|
.dmg(30F).rounds(5).delay(10).spread(0.25F).spreadHipfire(1F).reload(45).jam(37).sound(NTMSounds.GUN_LASER_PISTOL_FIRE, 1.0F, 0.8F)
|
||||||
.mag(new MagazineFullReload(0, 10).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
.mag(new MagazineFullReload(0, 10).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
||||||
@ -204,7 +205,7 @@ public class XFactoryEnergy {
|
|||||||
ModItems.gun_laser_pistol_morning_glory = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_laser_pistol_morning_glory = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(1_500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
.dura(1_500).draw(10).inspect(26).crosshair(Crosshair.CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(20F).delay(7).spread(0F).spreadHipfire(0.5F).reload(45).jam(37).sound("hbm:weapon.fire.laserPistol", 1.0F, 1.1F)
|
.dmg(20F).delay(7).spread(0F).spreadHipfire(0.5F).reload(45).jam(37).sound(NTMSounds.GUN_LASER_PISTOL_FIRE, 1.0F, 1.1F)
|
||||||
.mag(new MagazineFullReload(0, 20).addConfigs(energy_emerald, energy_emerald_overcharge, energy_emerald_ir))
|
.mag(new MagazineFullReload(0, 20).addConfigs(energy_emerald, energy_emerald_overcharge, energy_emerald_ir))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
||||||
@ -215,7 +216,7 @@ public class XFactoryEnergy {
|
|||||||
ModItems.gun_lasrifle = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_lasrifle = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).scopeTexture(scope_luna)
|
.dura(2_000).draw(10).inspect(26).crosshair(Crosshair.CIRCLE).scopeTexture(scope_luna)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(50F).delay(8).spreadHipfire(1F).reload(44).jam(36).sound("hbm:weapon.fire.laser", 1.0F, 1.0F)
|
.dmg(50F).delay(8).spreadHipfire(1F).reload(44).jam(36).sound(NTMSounds.GUN_LASER_RIFLE_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 24).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
.mag(new MagazineFullReload(0, 24).addConfigs(energy_las, energy_las_overcharge, energy_las_ir))
|
||||||
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
.offset(0.75, -0.0625 * 1.5, -0.1875)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ENERGY))
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.hbm.items.weapon.sedna.impl.ItemGunChemthrower;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineFluid;
|
import com.hbm.items.weapon.sedna.mags.MagazineFluid;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.particle.helper.FlameCreator;
|
import com.hbm.particle.helper.FlameCreator;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
@ -160,7 +161,7 @@ public class XFactoryFlamer {
|
|||||||
ModItems.gun_flamer_daybreaker = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
ModItems.gun_flamer_daybreaker = new ItemGunBaseNT(WeaponQuality.LEGENDARY, new GunConfig()
|
||||||
.dura(20_000).draw(10).inspect(17).crosshair(Crosshair.L_CIRCLE)
|
.dura(20_000).draw(10).inspect(17).crosshair(Crosshair.L_CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(25F).spreadHipfire(0F).delay(10).auto(true).reload(90).jam(17).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F)
|
.dmg(25F).spreadHipfire(0F).delay(10).auto(true).reload(90).jam(17).sound(NTMSounds.GUN_POWDER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 50).addConfigs(flame_daybreaker_diesel, flame_daybreaker_gas, flame_daybreaker_napalm, flame_daybreaker_balefire))
|
.mag(new MagazineFullReload(0, 50).addConfigs(flame_daybreaker_diesel, flame_daybreaker_gas, flame_daybreaker_napalm, flame_daybreaker_balefire))
|
||||||
.offset(0.75, -0.0625, -0.25D)
|
.offset(0.75, -0.0625, -0.25D)
|
||||||
.setupStandardFire())
|
.setupStandardFire())
|
||||||
|
|||||||
@ -21,6 +21,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT.WeaponQuality;
|
||||||
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmoSecret;
|
import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmoSecret;
|
||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
@ -107,7 +108,7 @@ public class XFactoryFolly {
|
|||||||
ModItems.gun_folly = new ItemGunBaseNT(WeaponQuality.SECRET, new GunConfig()
|
ModItems.gun_folly = new ItemGunBaseNT(WeaponQuality.SECRET, new GunConfig()
|
||||||
.dura(0).draw(40).crosshair(Crosshair.NONE)
|
.dura(0).draw(40).crosshair(Crosshair.NONE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(1_000F).delay(26).dryfire(false).reload(160).jam(0).sound("hbm:weapon.fire.loudestNoiseOnEarth", 100.0F, 1.0F)
|
.dmg(1_000F).delay(26).dryfire(false).reload(160).jam(0).sound(NTMSounds.GUN_PLEASE_REMOVE_MY_EARDRUMS_THANKS, 100.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(folly_sm, folly_nuke))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(folly_sm, folly_nuke))
|
||||||
.offset(0.75, -0.0625, -0.1875D).offsetScoped(0.75, -0.0625, -0.125D)
|
.offset(0.75, -0.0625, -0.1875D).offsetScoped(0.75, -0.0625, -0.125D)
|
||||||
.canFire(LAMBDA_CAN_FIRE).fire(LAMBDA_FIRE).recoil(LAMBDA_RECOIL_FOLLY))
|
.canFire(LAMBDA_CAN_FIRE).fire(LAMBDA_FIRE).recoil(LAMBDA_RECOIL_FOLLY))
|
||||||
|
|||||||
@ -24,6 +24,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
|||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
|
/** Power-armor conditional weapons (melee controller and ranged attack remote) */
|
||||||
public class XFactoryPA {
|
public class XFactoryPA {
|
||||||
|
|
||||||
public static void init() {
|
public static void init() {
|
||||||
|
|||||||
@ -26,6 +26,7 @@ import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineSingleReload;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
@ -185,7 +186,7 @@ public class XFactoryRocket {
|
|||||||
ModItems.gun_panzerschreck = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_panzerschreck = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(7).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX)
|
.dura(300).draw(7).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(25F).delay(5).reload(50).jam(40).sound("hbm:weapon.rpgShoot", 1.0F, 1.0F)
|
.dmg(25F).delay(5).reload(50).jam(40).sound(NTMSounds.GUN_ROCKET_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_rpzb))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_rpzb))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
||||||
@ -196,7 +197,7 @@ public class XFactoryRocket {
|
|||||||
ModItems.gun_stinger = new ItemGunStinger(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_stinger = new ItemGunStinger(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(300).draw(7).inspect(40).crosshair(Crosshair.L_BOX_OUTLINE)
|
.dura(300).draw(7).inspect(40).crosshair(Crosshair.L_BOX_OUTLINE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(35F).delay(5).reload(50).jam(40).sound("hbm:weapon.rpgShoot", 1.0F, 1.0F)
|
.dmg(35F).delay(5).reload(50).jam(40).sound(NTMSounds.GUN_ROCKET_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_rpzb))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_rpzb))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupLockonFire().recoil(LAMBDA_RECOIL_ROCKET))
|
.setupLockonFire().recoil(LAMBDA_RECOIL_ROCKET))
|
||||||
@ -207,7 +208,7 @@ public class XFactoryRocket {
|
|||||||
ModItems.gun_quadro = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_quadro = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(400).draw(7).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
.dura(400).draw(7).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(40F).spreadHipfire(0F).delay(10).reload(55).jam(40).sound("hbm:weapon.rpgShoot", 1.0F, 1.0F)
|
.dmg(40F).spreadHipfire(0F).delay(10).reload(55).jam(40).sound(NTMSounds.GUN_ROCKET_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 4).addConfigs(rocket_qd))
|
.mag(new MagazineFullReload(0, 4).addConfigs(rocket_qd))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
||||||
@ -218,7 +219,7 @@ public class XFactoryRocket {
|
|||||||
ModItems.gun_missile_launcher = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
ModItems.gun_missile_launcher = new ItemGunBaseNT(WeaponQuality.A_SIDE, new GunConfig()
|
||||||
.dura(500).draw(20).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
.dura(500).draw(20).inspect(40).crosshair(Crosshair.L_CIRCUMFLEX).hideCrosshair(false)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(50F).spreadHipfire(0F).delay(5).reload(48).jam(33).sound("hbm:weapon.rpgShoot", 1.0F, 1.0F)
|
.dmg(50F).spreadHipfire(0F).delay(5).reload(48).jam(33).sound(NTMSounds.GUN_ROCKET_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_ml))
|
.mag(new MagazineSingleReload(0, 1).addConfigs(rocket_ml))
|
||||||
.offset(1, -0.0625 * 1.5, -0.1875D)
|
.offset(1, -0.0625 * 1.5, -0.1875D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_ROCKET))
|
||||||
|
|||||||
@ -28,6 +28,7 @@ import com.hbm.items.weapon.sedna.impl.ItemGunChargeThrower;
|
|||||||
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
import com.hbm.items.weapon.sedna.mags.MagazineFullReload;
|
||||||
import com.hbm.lib.RefStrings;
|
import com.hbm.lib.RefStrings;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.particle.helper.ExplosionCreator;
|
import com.hbm.particle.helper.ExplosionCreator;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
@ -77,7 +78,7 @@ public class XFactoryTool {
|
|||||||
}
|
}
|
||||||
TileEntity core = CompatExternal.getCoreFromPos(bullet.worldObj, ix, iy, iz);
|
TileEntity core = CompatExternal.getCoreFromPos(bullet.worldObj, ix, iy, iz);
|
||||||
if(core instanceof IRepairable) ((IRepairable) core).tryExtinguish(bullet.worldObj, ix, iy, iz, EnumExtinguishType.WATER);
|
if(core instanceof IRepairable) ((IRepairable) core).tryExtinguish(bullet.worldObj, ix, iy, iz, EnumExtinguishType.WATER);
|
||||||
if(fizz) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, "random.fizz", 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
if(fizz) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, NTMSounds.VANILLA_HISS, 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
||||||
bullet.setDead();
|
bullet.setDead();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -133,7 +134,7 @@ public class XFactoryTool {
|
|||||||
else bullet.worldObj.setBlock(ix, iy, iz, ModBlocks.block_foam);
|
else bullet.worldObj.setBlock(ix, iy, iz, ModBlocks.block_foam);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(fizz) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, "random.fizz", 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
if(fizz) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, NTMSounds.VANILLA_HISS, 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -171,7 +172,7 @@ public class XFactoryTool {
|
|||||||
if(meta < 6) bullet.worldObj.setBlockMetadataWithNotify(ix, iy, iz, meta + 1, 3);
|
if(meta < 6) bullet.worldObj.setBlockMetadataWithNotify(ix, iy, iz, meta + 1, 3);
|
||||||
else bullet.worldObj.setBlock(ix, iy, iz, ModBlocks.sand_mix, EnumSandType.BORON.ordinal(), 3);
|
else bullet.worldObj.setBlock(ix, iy, iz, ModBlocks.sand_mix, EnumSandType.BORON.ordinal(), 3);
|
||||||
}
|
}
|
||||||
if(b.getMaterial() == Material.fire) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, "random.fizz", 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
if(b.getMaterial() == Material.fire) bullet.worldObj.playSoundEffect(bullet.posX, bullet.posY, bullet.posZ, NTMSounds.VANILLA_HISS, 1.0F, 1.5F + bullet.worldObj.rand.nextFloat() * 0.5F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -259,7 +260,7 @@ public class XFactoryTool {
|
|||||||
ModItems.gun_fireext = new ItemGunBaseNT(WeaponQuality.UTILITY, new GunConfig()
|
ModItems.gun_fireext = new ItemGunBaseNT(WeaponQuality.UTILITY, new GunConfig()
|
||||||
.dura(5_000).draw(10).inspect(55).reloadChangeType(true).hideCrosshair(false).crosshair(Crosshair.L_CIRCLE)
|
.dura(5_000).draw(10).inspect(55).reloadChangeType(true).hideCrosshair(false).crosshair(Crosshair.L_CIRCLE)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(0F).delay(1).dry(0).auto(true).spread(0F).spreadHipfire(0F).reload(20).jam(0).sound("hbm:weapon.extinguisher", 1.0F, 1.0F)
|
.dmg(0F).delay(1).dry(0).auto(true).spread(0F).spreadHipfire(0F).reload(20).jam(0).sound(NTMSounds.GUN_EXTINGUISHER_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 300).addConfigs(fext_water, fext_foam, fext_sand))
|
.mag(new MagazineFullReload(0, 300).addConfigs(fext_water, fext_foam, fext_sand))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire())
|
.setupStandardFire())
|
||||||
@ -270,7 +271,7 @@ public class XFactoryTool {
|
|||||||
ModItems.gun_charge_thrower = new ItemGunChargeThrower(WeaponQuality.UTILITY, new GunConfig()
|
ModItems.gun_charge_thrower = new ItemGunChargeThrower(WeaponQuality.UTILITY, new GunConfig()
|
||||||
.dura(3_000).draw(10).inspect(55).reloadChangeType(true).hideCrosshair(false).crosshair(Crosshair.L_CIRCUMFLEX)
|
.dura(3_000).draw(10).inspect(55).reloadChangeType(true).hideCrosshair(false).crosshair(Crosshair.L_CIRCUMFLEX)
|
||||||
.rec(new Receiver(0)
|
.rec(new Receiver(0)
|
||||||
.dmg(10F).delay(4).dry(10).auto(true).spread(0F).spreadHipfire(0F).reload(60).jam(0).sound("hbm:weapon.fire.grenade", 1.0F, 1.0F)
|
.dmg(10F).delay(4).dry(10).auto(true).spread(0F).spreadHipfire(0F).reload(60).jam(0).sound(NTMSounds.GUN_CHARGE_FIRE, 1.0F, 1.0F)
|
||||||
.mag(new MagazineFullReload(0, 1).addConfigs(ct_hook, ct_mortar, ct_mortar_charge))
|
.mag(new MagazineFullReload(0, 1).addConfigs(ct_hook, ct_mortar, ct_mortar_charge))
|
||||||
.offset(1, -0.0625 * 2.5, -0.25D)
|
.offset(1, -0.0625 * 2.5, -0.25D)
|
||||||
.setupStandardFire().recoil(LAMBDA_RECOIL_CT))
|
.setupStandardFire().recoil(LAMBDA_RECOIL_CT))
|
||||||
|
|||||||
@ -6,6 +6,7 @@ import com.hbm.items.ICustomizable;
|
|||||||
import com.hbm.items.weapon.sedna.GunConfig;
|
import com.hbm.items.weapon.sedna.GunConfig;
|
||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
||||||
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
import com.hbm.items.weapon.sedna.mods.XWeaponModManager;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.util.ChatBuilder;
|
import com.hbm.util.ChatBuilder;
|
||||||
|
|
||||||
import cpw.mods.fml.relauncher.Side;
|
import cpw.mods.fml.relauncher.Side;
|
||||||
@ -42,7 +43,7 @@ public class ItemGunNI4NI extends ItemGunBaseNT implements ICustomizable {
|
|||||||
this.setCoinCount(stack, newCount);
|
this.setCoinCount(stack, newCount);
|
||||||
|
|
||||||
if(isHeld) {
|
if(isHeld) {
|
||||||
world.playSoundAtEntity(entity, "hbm:item.techBoop", 1.0F, 1F + newCount / (float) maxCoin);
|
world.playSoundAtEntity(entity, NTMSounds.TECH_BOOP, 1.0F, 1F + newCount / (float) maxCoin);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
import com.hbm.items.weapon.sedna.GunConfig;
|
import com.hbm.items.weapon.sedna.GunConfig;
|
||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
||||||
import com.hbm.items.weapon.sedna.hud.IHUDComponent;
|
import com.hbm.items.weapon.sedna.hud.IHUDComponent;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.util.RenderScreenOverlay;
|
import com.hbm.render.util.RenderScreenOverlay;
|
||||||
import com.hbm.util.Vec3NT;
|
import com.hbm.util.Vec3NT;
|
||||||
|
|
||||||
@ -58,7 +59,7 @@ public class ItemGunStinger extends ItemGunBaseNT {
|
|||||||
progressLockon(world, stack);
|
progressLockon(world, stack);
|
||||||
|
|
||||||
if(this.getLockonProgress(stack) >= 60 && !this.getIsLockedOn(stack)) {
|
if(this.getLockonProgress(stack) >= 60 && !this.getIsLockedOn(stack)) {
|
||||||
player.worldObj.playSoundAtEntity(player, "hbm:item.techBleep", 1F, 1F);
|
player.worldObj.playSoundAtEntity(player, NTMSounds.TECH_BLEEP, 1F, 1F);
|
||||||
this.setIsLockedOn(stack, true);
|
this.setIsLockedOn(stack, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.factory.Orchestras;
|
import com.hbm.items.weapon.sedna.factory.Orchestras;
|
||||||
import com.hbm.items.weapon.sedna.factory.XFactory44;
|
import com.hbm.items.weapon.sedna.factory.XFactory44;
|
||||||
import com.hbm.items.weapon.sedna.factory.XFactory762mm;
|
import com.hbm.items.weapon.sedna.factory.XFactory762mm;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
@ -53,7 +54,7 @@ public class WeaponModCarbineBayonet extends WeaponModBase {
|
|||||||
mop.entityHit.attackEntityFrom(DamageSource.causePlayerDamage(ctx.getPlayer()), damage);
|
mop.entityHit.attackEntityFrom(DamageSource.causePlayerDamage(ctx.getPlayer()), damage);
|
||||||
mop.entityHit.motionX *= 2;
|
mop.entityHit.motionX *= 2;
|
||||||
mop.entityHit.motionZ *= 2;
|
mop.entityHit.motionZ *= 2;
|
||||||
entity.worldObj.playSoundAtEntity(mop.entityHit, "hbm:weapon.fire.stab", 1F, 0.9F + entity.getRNG().nextFloat() * 0.2F);
|
entity.worldObj.playSoundAtEntity(mop.entityHit, NTMSounds.GUN_STAB_A_FUCKER, 1F, 0.9F + entity.getRNG().nextFloat() * 0.2F);
|
||||||
}
|
}
|
||||||
if(mop.typeOfHit == mop.typeOfHit.BLOCK) {
|
if(mop.typeOfHit == mop.typeOfHit.BLOCK) {
|
||||||
Block b = entity.worldObj.getBlock(mop.blockX, mop.blockY, mop.blockZ);
|
Block b = entity.worldObj.getBlock(mop.blockX, mop.blockY, mop.blockZ);
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext;
|
|||||||
import com.hbm.items.weapon.sedna.factory.Orchestras;
|
import com.hbm.items.weapon.sedna.factory.Orchestras;
|
||||||
import com.hbm.items.weapon.sedna.factory.XFactory44;
|
import com.hbm.items.weapon.sedna.factory.XFactory44;
|
||||||
import com.hbm.items.weapon.sedna.factory.XFactory762mm;
|
import com.hbm.items.weapon.sedna.factory.XFactory762mm;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
import com.hbm.render.anim.AnimationEnums.GunAnimation;
|
||||||
import com.hbm.render.anim.BusAnimation;
|
import com.hbm.render.anim.BusAnimation;
|
||||||
import com.hbm.render.anim.BusAnimationSequence;
|
import com.hbm.render.anim.BusAnimationSequence;
|
||||||
@ -53,7 +54,7 @@ public class WeaponModMASBayonet extends WeaponModBase {
|
|||||||
mop.entityHit.attackEntityFrom(DamageSource.causePlayerDamage(ctx.getPlayer()), damage);
|
mop.entityHit.attackEntityFrom(DamageSource.causePlayerDamage(ctx.getPlayer()), damage);
|
||||||
mop.entityHit.motionX *= 2;
|
mop.entityHit.motionX *= 2;
|
||||||
mop.entityHit.motionZ *= 2;
|
mop.entityHit.motionZ *= 2;
|
||||||
entity.worldObj.playSoundAtEntity(mop.entityHit, "hbm:weapon.fire.stab", 1F, 0.9F + entity.getRNG().nextFloat() * 0.2F);
|
entity.worldObj.playSoundAtEntity(mop.entityHit, NTMSounds.GUN_STAB_A_FUCKER, 1F, 0.9F + entity.getRNG().nextFloat() * 0.2F);
|
||||||
}
|
}
|
||||||
if(mop.typeOfHit == mop.typeOfHit.BLOCK) {
|
if(mop.typeOfHit == mop.typeOfHit.BLOCK) {
|
||||||
Block b = entity.worldObj.getBlock(mop.blockX, mop.blockY, mop.blockZ);
|
Block b = entity.worldObj.getBlock(mop.blockX, mop.blockY, mop.blockZ);
|
||||||
|
|||||||
@ -2,6 +2,7 @@ package com.hbm.items.weapon.sedna.mods;
|
|||||||
|
|
||||||
import com.hbm.items.ModItems;
|
import com.hbm.items.ModItems;
|
||||||
import com.hbm.items.weapon.sedna.Receiver;
|
import com.hbm.items.weapon.sedna.Receiver;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
|
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
@ -15,8 +16,8 @@ public class WeaponModSilencer extends WeaponModBase {
|
|||||||
public <T> T eval(T base, ItemStack gun, String key, Object parent) {
|
public <T> T eval(T base, ItemStack gun, String key, Object parent) {
|
||||||
|
|
||||||
if(key == Receiver.S_FIRESOUND) {
|
if(key == Receiver.S_FIRESOUND) {
|
||||||
if(gun.getItem() == ModItems.gun_amat) return (T) "hbm:weapon.silencerShoot";
|
if(gun.getItem() == ModItems.gun_amat) return (T) NTMSounds.GUN_AMAT_SILENCER;
|
||||||
return (T) "hbm:weapon.fire.silenced";
|
return (T) NTMSounds.GUN_RIFLE_SILENCER;
|
||||||
}
|
}
|
||||||
|
|
||||||
return base;
|
return base;
|
||||||
|
|||||||
@ -110,6 +110,7 @@ public class CraftingManager {
|
|||||||
|
|
||||||
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), new Object[] { "G", "W", "I", 'G', KEY_ANYPANE, 'W', W.wireFine(), 'I', ModItems.plate_polymer });
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), new Object[] { "G", "W", "I", 'G', KEY_ANYPANE, 'W', W.wireFine(), 'I', ModItems.plate_polymer });
|
||||||
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), new Object[] { "G", "W", "I", 'G', KEY_ANYPANE, 'W', CARBON.wireFine(), 'I', ModItems.plate_polymer });
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), new Object[] { "G", "W", "I", 'G', KEY_ANYPANE, 'W', CARBON.wireFine(), 'I', ModItems.plate_polymer });
|
||||||
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.NUMITRON, 3), new Object[] { "G", "W", "I", 'G', KEY_ANYPANE, 'W', ModItems.coil_tungsten, 'I', CU.plate() });
|
||||||
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), new Object[] { "I", "N", "W", 'I', ModItems.plate_polymer, 'N', NB.nugget(), 'W', AL.wireFine() });
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), new Object[] { "I", "N", "W", 'I', ModItems.plate_polymer, 'N', NB.nugget(), 'W', AL.wireFine() });
|
||||||
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), new Object[] { "I", "N", "W", 'I', ModItems.plate_polymer, 'N', NB.nugget(), 'W', CU.wireFine() });
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), new Object[] { "I", "N", "W", 'I', ModItems.plate_polymer, 'N', NB.nugget(), 'W', CU.wireFine() });
|
||||||
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR, 2), new Object[] { "IAI", "W W", 'I', ModItems.plate_polymer, 'A', AL.dust(), 'W', AL.wireFine() });
|
addRecipeAuto(DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR, 2), new Object[] { "IAI", "W W", 'I', ModItems.plate_polymer, 'A', AL.dust(), 'W', AL.wireFine() });
|
||||||
@ -151,6 +152,7 @@ public class CraftingManager {
|
|||||||
addRecipeAuto(new ItemStack(Items.gold_ingot, 1), new Object[] { "###", "###", "###", '#', GOLD.wireFine() });
|
addRecipeAuto(new ItemStack(Items.gold_ingot, 1), new Object[] { "###", "###", "###", '#', GOLD.wireFine() });
|
||||||
addRecipeAuto(new ItemStack(ModItems.ingot_schrabidium, 1), new Object[] { "###", "###", "###", '#', SA326.wireFine() });
|
addRecipeAuto(new ItemStack(ModItems.ingot_schrabidium, 1), new Object[] { "###", "###", "###", '#', SA326.wireFine() });
|
||||||
addRecipeAuto(new ItemStack(ModItems.ingot_magnetized_tungsten, 1), new Object[] { "###", "###", "###", '#', MAGTUNG.wireFine() });
|
addRecipeAuto(new ItemStack(ModItems.ingot_magnetized_tungsten, 1), new Object[] { "###", "###", "###", '#', MAGTUNG.wireFine() });
|
||||||
|
addRecipeAuto(new ItemStack(ModItems.ingot_graphite, 1), new Object[] { "###", "###", "###", '#', CARBON.wireFine() });
|
||||||
|
|
||||||
addShapelessAuto(new ItemStack(ModItems.biomass, 4), new Object[] { Items.sugar, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust });
|
addShapelessAuto(new ItemStack(ModItems.biomass, 4), new Object[] { Items.sugar, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust, ModItems.powder_sawdust });
|
||||||
addShapelessAuto(new ItemStack(ModItems.biomass, 4), new Object[] { Items.sugar, ModItems.powder_sawdust, ModItems.powder_sawdust, Items.apple, Items.apple, Items.apple });
|
addShapelessAuto(new ItemStack(ModItems.biomass, 4), new Object[] { Items.sugar, ModItems.powder_sawdust, ModItems.powder_sawdust, Items.apple, Items.apple, Items.apple });
|
||||||
|
|||||||
137
src/main/java/com/hbm/main/NTMSounds.java
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
package com.hbm.main;
|
||||||
|
|
||||||
|
import com.hbm.interfaces.NotableComments;
|
||||||
|
|
||||||
|
/** Because having to remember or look up sound names is getting on my nerves. Who has time for this shit. */
|
||||||
|
@NotableComments
|
||||||
|
public class NTMSounds {
|
||||||
|
|
||||||
|
/// RELOADING ///
|
||||||
|
public static final String GUN_REVOLVER_COCK = "hbm:weapon.reload.revolverCock";
|
||||||
|
public static final String GUN_REVOLVER_CLOSE = "hbm:weapon.reload.revolverClose";
|
||||||
|
public static final String GUN_REVOLVER_SPIN = "hbm:weapon.reload.revolverSpin";
|
||||||
|
public static final String GUN_PISTOL_COCK = "hbm:weapon.reload.pistolCock";
|
||||||
|
public static final String GUN_MAG_SMALL_REMOVE = "hbm:weapon.reload.magSmallRemove";
|
||||||
|
public static final String GUN_MAG_SMALL_INSERT = "hbm:weapon.reload.magSmallInsert";
|
||||||
|
public static final String GUN_MAG_REMOVE = "hbm:weapon.reload.magRemove";
|
||||||
|
public static final String GUN_MAG_INSERT = "hbm:weapon.reload.magInsert";
|
||||||
|
public static final String GUN_CANISTER_INSERT = "hbm:weapon.reload.insertCanister";
|
||||||
|
public static final String GUN_ROCKET_INSERT = "hbm:weapon.reload.insertRocket";
|
||||||
|
public static final String GUN_BOLT_OPEN = "hbm:weapon.reload.boltOpen";
|
||||||
|
public static final String GUN_BOLT_CLOSE = "hbm:weapon.reload.boltClose";
|
||||||
|
public static final String GUN_RIFLE_COCK = "hbm:weapon.reload.rifleCock";
|
||||||
|
public static final String GUN_LEVER_COCK = "hbm:weapon.reload.leverCock";
|
||||||
|
public static final String GUN_SHOTGUN_LOAD = "hbm:weapon.reload.shotgunReload";
|
||||||
|
public static final String GUN_SHOTGUN_OPEN = "hbm:weapon.reload.shotgunCockOpen";
|
||||||
|
public static final String GUN_SHOTGUN_CLOSE = "hbm:weapon.reload.shotgunCockClose";
|
||||||
|
public static final String GUN_SHOTGUN_COCK = "hbm:weapon.reload.shotgunCock";
|
||||||
|
public static final String GUN_GRENADE_RELOAD = "hbm:weapon.glReload";
|
||||||
|
public static final String GUN_GRENADE_OPEN = "hbm:weapon.glOpen";
|
||||||
|
public static final String GUN_GRENADE_CLOSE = "hbm:weapon.glClose";
|
||||||
|
public static final String GUN_SCREW = "hbm:weapon.reload.screw";
|
||||||
|
public static final String GUN_COIL_RELOAD = "hbm:weapon.coilgunReload";
|
||||||
|
public static final String GUN_IMPACT = "hbm:weapon.reload.impact"; // when hitting the weapon or dropping a magazine
|
||||||
|
public static final String GUN_LATCH_OPEN = "hbm:weapon.reload.openLatch";
|
||||||
|
public static final String GUN_VALVE = "hbm:weapon.reload.pressureValve";
|
||||||
|
public static final String GUN_FATMAN_RELOAD = "hbm:weapon.reload.fatmanFull";
|
||||||
|
|
||||||
|
/// FOLEY ///
|
||||||
|
public static final String GUN_WHACK = "hbm:weapon.foley.gunWhack";
|
||||||
|
|
||||||
|
/// FIRING ///
|
||||||
|
public static final String GUN_LOCKON = "hbm:weapon.fire.lockon";
|
||||||
|
public static final String GUN_SMACK = "hbm:weapon.fire.smack"; // hitting people with the butt of the gun
|
||||||
|
public static final String GUN_STAB_A_FUCKER = "hbm:weapon.fire.stab"; // stabbing people with a bayonet
|
||||||
|
public static final String GUN_SHREDDER_CYCLE = "hbm:weapon.fire.shredderCycle";
|
||||||
|
public static final String GUN_DRY_FIRE = "hbm:weapon.reload.dryFireClick";
|
||||||
|
public static final String GUN_POWDER_FIRE = "hbm:weapon.fire.blackPowder";
|
||||||
|
public static final String GUN_RIFLE_FIRE = "hbm:weapon.fire.rifle";
|
||||||
|
public static final String GUN_RIFLE_SILENCER = "hbm:weapon.fire.silenced";
|
||||||
|
public static final String GUN_HEAVY_RIFLE_FIRE = "hbm:weapon.fire.rifleHeavy";
|
||||||
|
public static final String GUN_ASSAULT_FIRE = "hbm:weapon.fire.assault";
|
||||||
|
public static final String GUN_HEAVY_REVOLVER_FIRE = "hbm:weapon.44Shoot";
|
||||||
|
public static final String GUN_AMAT_FIRE = "hbm:weapon.fire.amat";
|
||||||
|
public static final String GUN_AMAT_SILENCER = "hbm:weapon.silencerShoot";
|
||||||
|
public static final String GUN_SHOTGUN_FIRE = "hbm:weapon.fire.shotgun";
|
||||||
|
public static final String GUN_SPAS_FIRE = "hbm:weapon.shotgunShoot";
|
||||||
|
public static final String GUN_LIBERATOR_FIRE = "hbm:weapon.fire.shotgunAlt";
|
||||||
|
public static final String GUN_SHREDDER_FIRE = "hbm:weapon.fire.shotgunAuto";
|
||||||
|
public static final String GUN_GREASEGUN_FIRE = "hbm:weapon.fire.greaseGun";
|
||||||
|
public static final String GUN_STARF_FIRE = "hbm:weapon.fire.pistolLight";
|
||||||
|
public static final String GUN_PISTOL_FIRE = "hbm:weapon.fire.pistol";
|
||||||
|
public static final String GUN_UZI_FIRE = "hbm:weapon.fire.uzi";
|
||||||
|
public static final String GUN_ABERRATOR_FIRE = "hbm:weapon.fire.aberrator";
|
||||||
|
public static final String GUN_UNDERBARREL_FIRE = "hbm:weapon.hkShoot";
|
||||||
|
public static final String GUN_CONGO_FIRE = "hbm:weapon.glShoot";
|
||||||
|
public static final String GUN_CHARGE_FIRE = "hbm:weapon.fire.grenade";
|
||||||
|
public static final String GUN_FLAMER_LOOP = "hbm:weapon.fire.flameLoop";
|
||||||
|
public static final String GUN_FATMAN_FIRE = "hbm:weapon.fire.fatman";
|
||||||
|
public static final String GUN_MINIGUN_FIRE = "hbm:weapon.calShoot";
|
||||||
|
public static final String GUN_LASER_GATLING_FIRE = "hbm:weapon.fire.laserGatling";
|
||||||
|
public static final String GUN_LASER_PISTOL_FIRE = "hbm:weapon.fire.laserPistol";
|
||||||
|
public static final String GUN_LASER_RIFLE_FIRE = "hbm:weapon.fire.laser";
|
||||||
|
public static final String GUN_COIL_FIRE = "hbm:weapon.coilgunShoot";
|
||||||
|
public static final String GUN_TAU_FIRE = "hbm:weapon.fire.tau";
|
||||||
|
public static final String GUN_TAU_STOPFIRE = "hbm:weapon.fire.tauRelease"; // spark sound when tau cannon fire stops
|
||||||
|
public static final String GUN_TAU_LOOP = "hbm:weapon.fire.tauLoop";
|
||||||
|
public static final String GUN_TESLA_FIRE = "hbm:weapon.fire.tesla";
|
||||||
|
public static final String GUN_TESLA_BLAST = "hbm:entity.ufoBlast"; // electric crackle sound explosion
|
||||||
|
public static final String GUN_ROCKET_FIRE = "hbm:weapon.rpgShoot";
|
||||||
|
public static final String GUN_EXTINGUISHER_FIRE = "hbm:weapon.extinguisher";
|
||||||
|
public static final String GUN_PLEASE_REMOVE_MY_EARDRUMS_THANKS = "hbm:weapon.fire.loudestNoiseOnEarth"; // folly fires
|
||||||
|
public static final String GUN_VYLET_PONY_CUTIEMARKS_AND_THE_THINGS_THAT_BIND_US_INTRO_JINGLE = "hbm:weapon.fire.vstar"; // you know how we do it
|
||||||
|
|
||||||
|
/// WEAPON SPECIAL EFFECTS ///
|
||||||
|
public static final String GUN_GO_GO_GADGET_FUCK_EVERYTHING_IN_THIS_GENERAL_DIRECTION = "hbm:alarm.trainHorn";
|
||||||
|
public static final String GUN_SOLDIER_TF2_BOAT_EXE_WAV_MP3 = "hbm:weapon.boat";
|
||||||
|
public static final String GUN_MINI_NUKE_EXPLOSION = "hbm:weapon.mukeExplosion";
|
||||||
|
|
||||||
|
/// TURRETS ///
|
||||||
|
public static final String TURRET_50BMG = "hbm:turret.chekhov_fire";
|
||||||
|
public static final String TURRET_CIWS_RELOAD = "hbm:turret.howard_reload";
|
||||||
|
|
||||||
|
/// PEEP NOISES ///
|
||||||
|
public static final String PLAYER_GULP = "hbm:player.gulp";
|
||||||
|
public static final String PLAYER_GROAN = "hbm:player.groan";
|
||||||
|
|
||||||
|
/// BLOCKS ///
|
||||||
|
public static final String BLOCK_PLUSHY = "hbm:block.squeakyToy"; // squee
|
||||||
|
public static final String BLOCK_HUNDUNS_MAGNIFICENT_HOWL = "hbm:block.hunduns_magnificent_howl"; // tragic yuri
|
||||||
|
public static final String BLOCK_FALLOUT_3_POPUP = "hbm:block.bobble";
|
||||||
|
|
||||||
|
/// MACHINE SOUNDS, MOSTLY LOOPS ///
|
||||||
|
public static final String ELECTRIC_MOTOR_LOOP = "hbm:block.motor";
|
||||||
|
public static final String ENGINE_LOOP = "hbm:block.engine"; // diesel engine
|
||||||
|
public static final String TURBINE_LARGE_LOOP = "hbm:block.largeTurbineRunning";
|
||||||
|
public static final String TURBINE_LEVI_LOOP = "hbm:block.chungusTurbineRunning"; // big chungus
|
||||||
|
public static final String FEL_LOOP = "hbm:block.fel";
|
||||||
|
public static final String ELECTRIC_HUM_LOOP = "hbm:block.electricHum";
|
||||||
|
public static final String FUSION_REACTOR_LOOP = "hbm:block.fusionReactorRunning";
|
||||||
|
public static final String BOILER_LOOP = "hbm:block.boiler";
|
||||||
|
public static final String BOILER_GROAN = "hbm:block.boilerGroan";
|
||||||
|
public static final String CENTRIFUGE_LOOP = "hbm:block.centrifugeOperate";
|
||||||
|
public static final String TURBOFAN_LOOP = "hbm:block.turbofanOperate";
|
||||||
|
public static final String TURBOFAN_DAMAGE = "hbm:block.damage";
|
||||||
|
public static final String ASSEMBLER_STRIKE = "hbm:block.assemblerStrike";
|
||||||
|
public static final String ASSEMBLER_CUT = "hbm:block.assemblerCut";
|
||||||
|
public static final String ASSEMBLER_START = "hbm:block.assemblerStart";
|
||||||
|
public static final String ASSEMBLER_STOP = "hbm:block.assemblerStop";
|
||||||
|
public static final String CHEMPLANT_LOOP = "hbm:block.chemicalPlant";
|
||||||
|
public static final String HEPHAESTUS_LOOP = "hbm:block.hephaestusRunning";
|
||||||
|
public static final String STEAM_ENGINE_HIT = "hbm:block.steamEngineOperate";
|
||||||
|
public static final String REACTOR_GEIGER_LOOP = "hbm:block.reactorLoop";
|
||||||
|
|
||||||
|
/// MISC ///
|
||||||
|
public static final String TECH_BOOP = "hbm:item.techBoop"; // boop
|
||||||
|
public static final String TECH_BLEEP = "hbm:item.techBleep"; // blee-boo-bee-boop
|
||||||
|
public static final String UPGRADE_PLUG = "hbm:item.upgradePlug"; // plok
|
||||||
|
|
||||||
|
/// VANILLA CRAP I CANNOT BE ASSED TO REMEMBER ///
|
||||||
|
public static final String VANILLA_ORB = "random.orb"; // xp orb ping
|
||||||
|
public static final String VANILLA_PLINK = "random.break"; // item breaks
|
||||||
|
public static final String VANILLA_FIREWORKS_BANG = "fireworks.blast";
|
||||||
|
public static final String VANILLA_HISS = "random.fizz"; // fire extinguishes
|
||||||
|
public static final String VANILLA_FIRE = "fire.fire"; // fire crackles
|
||||||
|
public static final String VANILLA_MINECART = "minecart.base"; // minecart rolling loop
|
||||||
|
public static final String VANILLA_GIB = "mob.zombie.woodbreak"; // zombie breaks door down
|
||||||
|
}
|
||||||
@ -864,6 +864,12 @@ public class ResourceManager {
|
|||||||
public static final ResourceLocation pipe_anchor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/network/pipe_anchor.png");
|
public static final ResourceLocation pipe_anchor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/network/pipe_anchor.png");
|
||||||
public static final ResourceLocation fluid_pump_tex = new ResourceLocation(RefStrings.MODID, "textures/models/network/fluid_diode.png");
|
public static final ResourceLocation fluid_pump_tex = new ResourceLocation(RefStrings.MODID, "textures/models/network/fluid_diode.png");
|
||||||
|
|
||||||
|
//Barrels
|
||||||
|
public static ResourceLocation barrel_plastic_tex = new ResourceLocation(RefStrings.MODID, "textures/blocks/barrel_plastic.png");
|
||||||
|
public static ResourceLocation barrel_steel_tex = new ResourceLocation(RefStrings.MODID, "textures/blocks/barrel_steel.png");
|
||||||
|
public static ResourceLocation barrel_tcalloy_tex = new ResourceLocation(RefStrings.MODID, "textures/blocks/barrel_tcalloy.png");
|
||||||
|
public static ResourceLocation barrel_antimatter_tex = new ResourceLocation(RefStrings.MODID, "textures/blocks/barrel_antimatter.png");
|
||||||
|
|
||||||
//Radiolysis
|
//Radiolysis
|
||||||
public static final ResourceLocation radiolysis_tex = new ResourceLocation(RefStrings.MODID, "textures/models/radiolysis.png");
|
public static final ResourceLocation radiolysis_tex = new ResourceLocation(RefStrings.MODID, "textures/models/radiolysis.png");
|
||||||
|
|
||||||
|
|||||||
@ -30,7 +30,7 @@ public class RenderBarrel implements ISimpleBlockRenderingHandler {
|
|||||||
|
|
||||||
GL11.glTranslated(0, -0.5, 0);
|
GL11.glTranslated(0, -0.5, 0);
|
||||||
tessellator.startDrawingQuads();
|
tessellator.startDrawingQuads();
|
||||||
ObjUtil.renderWithIcon((HFRWavefrontObject) ResourceManager.barrel, iicon, tessellator, 0, false);
|
ObjUtil.renderPartWithIcon((HFRWavefrontObject) ResourceManager.barrel, "Barrel", iicon, tessellator, 0, false);
|
||||||
tessellator.draw();
|
tessellator.draw();
|
||||||
|
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
@ -50,7 +50,7 @@ public class RenderBarrel implements ISimpleBlockRenderingHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
tessellator.addTranslation(x + 0.5F, y, z + 0.5F);
|
tessellator.addTranslation(x + 0.5F, y, z + 0.5F);
|
||||||
ObjUtil.renderWithIcon((HFRWavefrontObject) ResourceManager.barrel, iicon, tessellator, 0, true);
|
ObjUtil.renderPartWithIcon((HFRWavefrontObject) ResourceManager.barrel, "Barrel", iicon, tessellator, 0, true);
|
||||||
tessellator.addTranslation(-x - 0.5F, -y, -z - 0.5F);
|
tessellator.addTranslation(-x - 0.5F, -y, -z - 0.5F);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import org.lwjgl.opengl.GL11;
|
|||||||
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
import com.hbm.items.weapon.sedna.ItemGunBaseNT;
|
||||||
import com.hbm.items.weapon.sedna.mags.IMagazine;
|
import com.hbm.items.weapon.sedna.mags.IMagazine;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.render.anim.HbmAnimations;
|
import com.hbm.render.anim.HbmAnimations;
|
||||||
import com.hbm.util.EntityDamageUtil;
|
import com.hbm.util.EntityDamageUtil;
|
||||||
@ -104,7 +105,7 @@ public class ItemRenderFolly extends ItemRenderWeaponBase {
|
|||||||
String splash = getBootSplash();
|
String splash = getBootSplash();
|
||||||
|
|
||||||
if(!jingle && !splash.isEmpty()) {
|
if(!jingle && !splash.isEmpty()) {
|
||||||
MainRegistry.proxy.playSoundClient(player.posX, player.posY, player.posZ, "hbm:weapon.fire.vstar", 0.5F, 1F);
|
MainRegistry.proxy.playSoundClient(player.posX, player.posY, player.posZ, NTMSounds.GUN_VYLET_PONY_CUTIEMARKS_AND_THE_THINGS_THAT_BIND_US_INTRO_JINGLE, 0.5F, 1F);
|
||||||
jingle = true;
|
jingle = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2,10 +2,13 @@ package com.hbm.render.tileentity;
|
|||||||
|
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
|
import com.hbm.blocks.ModBlocks;
|
||||||
import com.hbm.inventory.fluid.FluidType;
|
import com.hbm.inventory.fluid.FluidType;
|
||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.render.util.DiamondPronter;
|
import com.hbm.render.util.DiamondPronter;
|
||||||
import com.hbm.render.util.EnumSymbol;
|
import com.hbm.render.util.EnumSymbol;
|
||||||
|
import com.hbm.lib.Library;
|
||||||
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.tileentity.machine.storage.TileEntityBarrel;
|
import com.hbm.tileentity.machine.storage.TileEntityBarrel;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.RenderHelper;
|
import net.minecraft.client.renderer.RenderHelper;
|
||||||
@ -21,6 +24,7 @@ public class RenderFluidBarrel extends TileEntitySpecialRenderer {
|
|||||||
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
|
GL11.glTranslated(x + 0.5, y + 0.5, z + 0.5);
|
||||||
GL11.glEnable(GL11.GL_LIGHTING);
|
GL11.glEnable(GL11.GL_LIGHTING);
|
||||||
|
|
||||||
|
|
||||||
if(te instanceof TileEntityBarrel) {
|
if(te instanceof TileEntityBarrel) {
|
||||||
|
|
||||||
TileEntityBarrel barrel = (TileEntityBarrel)te;
|
TileEntityBarrel barrel = (TileEntityBarrel)te;
|
||||||
@ -28,7 +32,6 @@ public class RenderFluidBarrel extends TileEntitySpecialRenderer {
|
|||||||
|
|
||||||
if(type != Fluids.NONE) {
|
if(type != Fluids.NONE) {
|
||||||
|
|
||||||
RenderHelper.disableStandardItemLighting();
|
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
|
|
||||||
int poison = type.poison;
|
int poison = type.poison;
|
||||||
@ -36,16 +39,63 @@ public class RenderFluidBarrel extends TileEntitySpecialRenderer {
|
|||||||
int reactivity = type.reactivity;
|
int reactivity = type.reactivity;
|
||||||
EnumSymbol symbol = type.symbol;
|
EnumSymbol symbol = type.symbol;
|
||||||
|
|
||||||
|
int cx = te.xCoord;
|
||||||
|
int cy = te.yCoord;
|
||||||
|
int cz = te.zCoord;
|
||||||
|
|
||||||
|
if(te.getBlockType() == ModBlocks.barrel_plastic)
|
||||||
|
bindTexture(ResourceManager.barrel_plastic_tex);
|
||||||
|
else if(te.getBlockType() == ModBlocks.barrel_steel)
|
||||||
|
bindTexture(ResourceManager.barrel_steel_tex);
|
||||||
|
else if(te.getBlockType() == ModBlocks.barrel_tcalloy)
|
||||||
|
bindTexture(ResourceManager.barrel_tcalloy_tex);
|
||||||
|
else if(te.getBlockType() == ModBlocks.barrel_antimatter)
|
||||||
|
bindTexture(ResourceManager.barrel_antimatter_tex);
|
||||||
|
|
||||||
|
if(Library.canConnectFluid(te.getWorldObj(), cx + 1, cy, cz, Library.POS_X, type)) {
|
||||||
|
GL11.glTranslatef(0.0F, -0.5F, 0.0F);
|
||||||
|
GL11.glRotatef(0F, 0F, 0F, 0F);
|
||||||
|
ResourceManager.barrel.renderPart("Connector");
|
||||||
|
GL11.glTranslatef(0.0F, 0.5F, 0.0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Library.canConnectFluid(te.getWorldObj(), cx - 1, cy, cz, Library.NEG_X, type)) {
|
||||||
|
GL11.glRotatef(180, 0F, 1F, 0F);
|
||||||
|
GL11.glTranslatef(0.0F, -0.5F, 0.0F);
|
||||||
|
ResourceManager.barrel.renderPart("Connector");
|
||||||
|
GL11.glTranslatef(0.0F, 0.5F, 0.0F);
|
||||||
|
GL11.glRotatef(-180, 0F, 1F, 0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Library.canConnectFluid(te.getWorldObj(), cx, cy, cz - 1, Library.NEG_Z, type)) {
|
||||||
|
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||||
|
GL11.glTranslatef(0.0F, -0.5F, 0.0F);
|
||||||
|
ResourceManager.barrel.renderPart("Connector");
|
||||||
|
GL11.glTranslatef(0.0F, 0.5F, 0.0F);
|
||||||
|
GL11.glRotatef(-90, 0F, 1F, 0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Library.canConnectFluid(te.getWorldObj(), cx, cy, cz + 1, Library.POS_Z, type)) {
|
||||||
|
GL11.glRotatef(-90, 0F, 1F, 0F);
|
||||||
|
GL11.glTranslatef(0.0F, -0.5F, 0.0F);
|
||||||
|
ResourceManager.barrel.renderPart("Connector");
|
||||||
|
GL11.glTranslatef(0.0F, 0.5F, 0.0F);
|
||||||
|
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderHelper.disableStandardItemLighting();
|
||||||
|
|
||||||
for(int j = 0; j < 4; j++) {
|
for(int j = 0; j < 4; j++) {
|
||||||
|
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
GL11.glTranslated(0.4, 0.25, -0.15);
|
GL11.glTranslated(0.4, 0.30, -0.24);
|
||||||
GL11.glScalef(1.0F, 0.35F, 0.35F);
|
GL11.glScalef(1.0F, 0.25F, 0.25F);
|
||||||
DiamondPronter.pront(poison, flammability, reactivity, symbol);
|
DiamondPronter.pront(poison, flammability, reactivity, symbol);
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
GL11.glRotatef(90, 0, 1, 0);
|
GL11.glRotatef(90, 0, 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
RenderHelper.enableStandardItemLighting();
|
RenderHelper.enableStandardItemLighting();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,19 +4,33 @@ import org.lwjgl.opengl.GL11;
|
|||||||
|
|
||||||
import com.hbm.blocks.BlockDummyable;
|
import com.hbm.blocks.BlockDummyable;
|
||||||
import com.hbm.blocks.ModBlocks;
|
import com.hbm.blocks.ModBlocks;
|
||||||
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
|
import com.hbm.inventory.recipes.PlasmaForgeRecipes;
|
||||||
|
import com.hbm.inventory.recipes.loader.GenericRecipe;
|
||||||
|
import com.hbm.main.MainRegistry;
|
||||||
import com.hbm.main.ResourceManager;
|
import com.hbm.main.ResourceManager;
|
||||||
import com.hbm.render.item.ItemRenderBase;
|
import com.hbm.render.item.ItemRenderBase;
|
||||||
import com.hbm.tileentity.machine.fusion.TileEntityFusionPlasmaForge;
|
import com.hbm.tileentity.machine.fusion.TileEntityFusionPlasmaForge;
|
||||||
import com.hbm.util.BobMathUtil;
|
import com.hbm.util.BobMathUtil;
|
||||||
import com.hbm.util.Clock;
|
import com.hbm.util.Clock;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.client.renderer.RenderBlocks;
|
||||||
|
import net.minecraft.client.renderer.Tessellator;
|
||||||
|
import net.minecraft.client.renderer.entity.RenderItem;
|
||||||
|
import net.minecraft.client.renderer.entity.RenderManager;
|
||||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||||
|
import net.minecraft.entity.item.EntityItem;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemBlock;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraftforge.client.IItemRenderer;
|
import net.minecraftforge.client.IItemRenderer;
|
||||||
|
|
||||||
public class RenderFusionPlasmaForge extends TileEntitySpecialRenderer implements IItemRendererProvider {
|
public class RenderFusionPlasmaForge extends TileEntitySpecialRenderer implements IItemRendererProvider {
|
||||||
|
|
||||||
|
public static EntityItem dummy;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float interp) {
|
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float interp) {
|
||||||
GL11.glPushMatrix();
|
GL11.glPushMatrix();
|
||||||
@ -39,56 +53,149 @@ public class RenderFusionPlasmaForge extends TileEntitySpecialRenderer implement
|
|||||||
bindTexture(ResourceManager.fusion_plasma_forge_tex);
|
bindTexture(ResourceManager.fusion_plasma_forge_tex);
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("Body");
|
ResourceManager.fusion_plasma_forge.renderPart("Body");
|
||||||
|
|
||||||
GL11.glPushMatrix();
|
GenericRecipe recipe = PlasmaForgeRecipes.INSTANCE.recipeNameMap.get(forge.plasmaModule.recipe);
|
||||||
GL11.glRotated(20, 0, 1, 0);
|
|
||||||
GL11.glPushMatrix();
|
renderPlasma(forge);
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("SliderStriker");
|
renderItem(forge, recipe, interp);
|
||||||
GL11.glTranslated(-2.75, 2.5, 0);
|
renderBeam(forge, recipe, interp);
|
||||||
GL11.glRotated(-20, 0, 0, 1);
|
|
||||||
GL11.glTranslated(2.75, -2.5, 0);
|
bindTexture(ResourceManager.fusion_plasma_forge_tex);
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("ArmLowerStriker");
|
|
||||||
GL11.glTranslated(-2.75, 3.75, 0);
|
double[] striker = forge.armStriker.getPositions(interp);
|
||||||
GL11.glRotated(30, 0, 0, 1);
|
double[] jet = forge.armJet.getPositions(interp);
|
||||||
GL11.glTranslated(2.75, -3.75, 0);
|
double rotor = forge.prevRing + (forge.ring - forge.prevRing) * interp;
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("ArmUpperStriker");
|
|
||||||
GL11.glTranslated(-1.5, 3.75, 0);
|
GL11.glPushMatrix(); { // brackets added in post for readability for the common person. i don't have such weaknesses.
|
||||||
GL11.glRotated(20, 0, 0, 1);
|
GL11.glRotated(rotor, 0, 1, 0);
|
||||||
GL11.glTranslated(1.5, -3.75, 0);
|
GL11.glPushMatrix(); {
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("StrikerMount");
|
ResourceManager.fusion_plasma_forge.renderPart("SliderStriker");
|
||||||
GL11.glPushMatrix();
|
GL11.glTranslated(-2.75, 2.5, 0);
|
||||||
GL11.glTranslated(0, 3.375, 0.5);
|
GL11.glRotated(-striker[0], 0, 0, 1);
|
||||||
GL11.glRotated(30, 1, 0, 0);
|
GL11.glTranslated(2.75, -2.5, 0);
|
||||||
GL11.glTranslated(0, -3.375, -0.5);
|
ResourceManager.fusion_plasma_forge.renderPart("ArmLowerStriker");
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("StrikerRight");
|
GL11.glTranslated(-2.75, 3.75, 0);
|
||||||
GL11.glTranslated(0, -0.5, 0);
|
GL11.glRotated(-striker[1], 0, 0, 1);
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("PistonRight");
|
GL11.glTranslated(2.75, -3.75, 0);
|
||||||
GL11.glPopMatrix();
|
ResourceManager.fusion_plasma_forge.renderPart("ArmUpperStriker");
|
||||||
GL11.glPushMatrix();
|
GL11.glTranslated(-1.5, 3.75, 0);
|
||||||
GL11.glTranslated(0, 3.375, -0.5);
|
GL11.glRotated(-striker[2], 0, 0, 1);
|
||||||
GL11.glRotated(-30, 1, 0, 0);
|
GL11.glTranslated(1.5, -3.75, 0);
|
||||||
GL11.glTranslated(0, -3.375, 0.5);
|
ResourceManager.fusion_plasma_forge.renderPart("StrikerMount");
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("StrikerLeft");
|
GL11.glPushMatrix(); {
|
||||||
GL11.glTranslated(0, -0.5, 0);
|
GL11.glTranslated(0, 3.375, 0.5);
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("PistonLeft");
|
GL11.glRotated(striker[3], 1, 0, 0);
|
||||||
GL11.glPopMatrix();
|
GL11.glTranslated(0, -3.375, -0.5);
|
||||||
GL11.glPopMatrix();
|
ResourceManager.fusion_plasma_forge.renderPart("StrikerRight");
|
||||||
|
GL11.glTranslated(0, -striker[4], 0);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("PistonRight");
|
||||||
|
} GL11.glPopMatrix();
|
||||||
|
GL11.glPushMatrix(); {
|
||||||
|
GL11.glTranslated(0, 3.375, -0.5);
|
||||||
|
GL11.glRotated(-striker[3], 1, 0, 0);
|
||||||
|
GL11.glTranslated(0, -3.375, 0.5);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("StrikerLeft");
|
||||||
|
GL11.glTranslated(0, -striker[5], 0);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("PistonLeft");
|
||||||
|
} GL11.glPopMatrix();
|
||||||
|
} GL11.glPopMatrix();
|
||||||
|
|
||||||
|
GL11.glPushMatrix(); {
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("SliderJet");
|
||||||
|
GL11.glTranslated(2.75, 2.5, 0);
|
||||||
|
GL11.glRotated(jet[0], 0, 0, 1);
|
||||||
|
GL11.glTranslated(-2.75, -2.5, 0);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("ArmLowerJet");
|
||||||
|
GL11.glTranslated(2.75, 3.75, 0);
|
||||||
|
GL11.glRotated(jet[1], 0, 0, 1);
|
||||||
|
GL11.glTranslated(-2.75, -3.75, 0);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("ArmUpperJet");
|
||||||
|
GL11.glTranslated(1.5, 3.75, 0);
|
||||||
|
GL11.glRotated(jet[2], 0, 0, 1);
|
||||||
|
GL11.glTranslated(-1.5, -3.75, 0);
|
||||||
|
ResourceManager.fusion_plasma_forge.renderPart("Jet");
|
||||||
|
if(forge.didProcess && forge.armJet.angles[2] == forge.armJet.prevAngles[2]) renderJet(forge);
|
||||||
|
} GL11.glPopMatrix();
|
||||||
|
} GL11.glPopMatrix();
|
||||||
|
|
||||||
|
GL11.glShadeModel(GL11.GL_FLAT);
|
||||||
|
|
||||||
GL11.glPushMatrix();
|
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("SliderJet");
|
|
||||||
GL11.glTranslated(2.75, 2.5, 0);
|
|
||||||
GL11.glRotated(20, 0, 0, 1);
|
|
||||||
GL11.glTranslated(-2.75, -2.5, 0);
|
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("ArmLowerJet");
|
|
||||||
GL11.glTranslated(2.75, 3.75, 0);
|
|
||||||
GL11.glRotated(-20, 0, 0, 1);
|
|
||||||
GL11.glTranslated(-2.75, -3.75, 0);
|
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("ArmUpperJet");
|
|
||||||
GL11.glTranslated(1.5, 3.75, 0);
|
|
||||||
GL11.glRotated(-30, 0, 0, 1);
|
|
||||||
GL11.glTranslated(-1.5, -3.75, 0);
|
|
||||||
ResourceManager.fusion_plasma_forge.renderPart("Jet");
|
|
||||||
GL11.glPopMatrix();
|
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void renderJet(TileEntityFusionPlasmaForge forge) {
|
||||||
|
|
||||||
|
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||||
|
GL11.glDisable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glEnable(GL11.GL_BLEND);
|
||||||
|
GL11.glAlphaFunc(GL11.GL_GREATER, 0);
|
||||||
|
GL11.glDepthMask(false);
|
||||||
|
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||||
|
GL11.glDisable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||||
|
GL11.glDisable(GL11.GL_TEXTURE_2D);
|
||||||
|
GL11.glColor3f(1F, 1F, 1F);
|
||||||
|
|
||||||
|
double outerLen = 1 + MainRegistry.proxy.me().getRNG().nextDouble() * 0.125;
|
||||||
|
double narrow = 0.01;
|
||||||
|
double side = 0.125;
|
||||||
|
double near = 1.375;
|
||||||
|
double far = 1.625;
|
||||||
|
|
||||||
|
Tessellator tess = Tessellator.instance;
|
||||||
|
tess.startDrawingQuads();
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, side - narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, side - narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, -side + narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, side - narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, side - narrow);
|
||||||
|
|
||||||
|
narrow = 0.0625 * 1.5;
|
||||||
|
outerLen *= 1.5;
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, side - narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, side - narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, -side + narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(near, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(near + narrow, 3 - outerLen, side - narrow);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 1F); tess.addVertex(far, 3, -side);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, -side + narrow);
|
||||||
|
tess.setColorRGBA_F(forge.plasmaRed, forge.plasmaGreen, forge.plasmaBlue, 0F); tess.addVertex(far - narrow, 3 - outerLen, side - narrow);
|
||||||
|
tess.draw();
|
||||||
|
|
||||||
|
GL11.glDepthMask(true);
|
||||||
|
GL11.glEnable(GL11.GL_TEXTURE_2D);
|
||||||
|
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||||
|
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F);
|
||||||
|
GL11.glEnable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glDisable(GL11.GL_BLEND);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void renderPlasma(TileEntityFusionPlasmaForge forge) {
|
||||||
|
|
||||||
if(forge.plasmaEnergySync <= 0) {
|
if(forge.plasmaEnergySync <= 0) {
|
||||||
GL11.glColor3f(0F, 0F, 0F);
|
GL11.glColor3f(0F, 0F, 0F);
|
||||||
@ -148,12 +255,95 @@ public class RenderFusionPlasmaForge extends TileEntitySpecialRenderer implement
|
|||||||
RenderArcFurnace.fullbright(false);
|
RenderArcFurnace.fullbright(false);
|
||||||
}
|
}
|
||||||
GL11.glColor3f(1F, 1F, 1F);
|
GL11.glColor3f(1F, 1F, 1F);
|
||||||
|
}
|
||||||
|
|
||||||
GL11.glShadeModel(GL11.GL_FLAT);
|
protected void renderItem(TileEntityFusionPlasmaForge forge, GenericRecipe recipe, float interp) {
|
||||||
|
if(recipe == null) return;
|
||||||
|
if(MainRegistry.proxy.me().getDistanceSq(forge.xCoord + 0.5, forge.yCoord + 1, forge.zCoord + 0.5) > 35 * 35) return;
|
||||||
|
|
||||||
|
GL11.glPushMatrix();
|
||||||
|
GL11.glRotated(90, 0, 1, 0);
|
||||||
|
GL11.glTranslated(0, 1.75, 0);
|
||||||
|
|
||||||
|
ItemStack stack = recipe.getIcon();
|
||||||
|
stack.stackSize = 1;
|
||||||
|
|
||||||
|
if(stack.getItemSpriteNumber() == 0 && stack.getItem() instanceof ItemBlock) {
|
||||||
|
if(RenderBlocks.renderItemIn3d(Block.getBlockFromItem(stack.getItem()).getRenderType())) {
|
||||||
|
GL11.glTranslated(0, -0.0625, 0);
|
||||||
|
} else {
|
||||||
|
GL11.glScaled(0.5, 0.5, 0.5);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
GL11.glRotated(90, 0, 1, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
GL11.glTranslated(0, Math.sin((MainRegistry.proxy.me().ticksExisted + interp) * 0.1) * 0.0625, 0);
|
||||||
|
GL11.glScaled(1.5, 1.5, 1.5);
|
||||||
|
|
||||||
|
if(dummy == null || dummy.worldObj != forge.getWorldObj()) dummy = new EntityItem(forge.getWorldObj(), 0, 0, 0, stack);
|
||||||
|
dummy.setEntityItemStack(stack);
|
||||||
|
dummy.hoverStart = 0.0F;
|
||||||
|
|
||||||
|
RenderItem.renderInFrame = true;
|
||||||
|
RenderManager.instance.renderEntityWithPosYaw(dummy, 0.0D, 0.0D, 0.0D, 0.0F, 0.0F);
|
||||||
|
RenderItem.renderInFrame = false;
|
||||||
GL11.glPopMatrix();
|
GL11.glPopMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// beam renders after the item so the transparency works correctly. beam is also larger, so the LOD sets off a bit later
|
||||||
|
public void renderBeam(TileEntityFusionPlasmaForge forge, GenericRecipe recipe, float interp) {
|
||||||
|
if(recipe == null) return;
|
||||||
|
if(MainRegistry.proxy.me().getDistanceSq(forge.xCoord + 0.5, forge.yCoord + 1, forge.zCoord + 0.5) > 50 * 50) return;
|
||||||
|
|
||||||
|
GL11.glDisable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glEnable(GL11.GL_BLEND);
|
||||||
|
GL11.glAlphaFunc(GL11.GL_GREATER, 0);
|
||||||
|
GL11.glDepthMask(false);
|
||||||
|
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE);
|
||||||
|
GL11.glDisable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glDisable(GL11.GL_CULL_FACE);
|
||||||
|
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||||
|
|
||||||
|
// i fucking love reusing textures
|
||||||
|
this.bindTexture(Fluids.STELLAR_FLUX.getTexture());
|
||||||
|
|
||||||
|
double offset = ((MainRegistry.proxy.me().ticksExisted + interp) / 15D) % 1D;
|
||||||
|
double in = 0.4375;
|
||||||
|
double b = 1;
|
||||||
|
double t = 1.5;
|
||||||
|
double h = b + t;
|
||||||
|
|
||||||
|
Tessellator tess = Tessellator.instance;
|
||||||
|
tess.startDrawingQuads();
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(-in, b, in, offset + t, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(-in, h, in, offset + 0, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(-in, h, -in, offset + 0, 1);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(-in, b, -in, offset + t, 1);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(in, h, in, offset + 0, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(in, b, in, offset + t, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(in, b, -in, offset + t, 1);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(in, h, -in, offset + 0, 1);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(in, b, in, offset + t, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(in, h, in, offset + 0, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(-in, h, in, offset + 0, 1);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(-in, b, in, offset + t, 1);
|
||||||
|
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(in, h, -in, offset + 0, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(in, b, -in, offset + t, 0);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 1F); tess.addVertexWithUV(-in, b, -in, offset + t, 1);
|
||||||
|
tess.setColorRGBA_F(1F, 1F, 1F, 0F); tess.addVertexWithUV(-in, h, -in, offset + 0, 1);
|
||||||
|
tess.draw();
|
||||||
|
|
||||||
|
GL11.glDepthMask(true);
|
||||||
|
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||||
|
GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F);
|
||||||
|
GL11.glEnable(GL11.GL_LIGHTING);
|
||||||
|
GL11.glDisable(GL11.GL_BLEND);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Item getItemForRenderer() {
|
public Item getItemForRenderer() {
|
||||||
return Item.getItemFromBlock(ModBlocks.fusion_plasma_forge);
|
return Item.getItemFromBlock(ModBlocks.fusion_plasma_forge);
|
||||||
|
|||||||
@ -10,6 +10,8 @@ import api.hbm.fluid.IFluidStandardSender;
|
|||||||
|
|
||||||
import com.hbm.inventory.fluid.trait.FT_Polluting;
|
import com.hbm.inventory.fluid.trait.FT_Polluting;
|
||||||
import com.hbm.inventory.fluid.trait.FluidTrait;
|
import com.hbm.inventory.fluid.trait.FluidTrait;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
|
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraftforge.common.util.ForgeDirection;
|
import net.minecraftforge.common.util.ForgeDirection;
|
||||||
|
|
||||||
@ -40,7 +42,7 @@ public abstract class TileEntityMachinePolluting extends TileEntityMachineBase i
|
|||||||
tank.setFill(tank.getMaxFill());
|
tank.setFill(tank.getMaxFill());
|
||||||
PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, type, overflow / 100F);
|
PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, type, overflow / 100F);
|
||||||
|
|
||||||
if(worldObj.rand.nextInt(3) == 0) worldObj.playSoundEffect(xCoord, yCoord, zCoord, "random.fizz", 0.1F, 1.5F);
|
if(worldObj.rand.nextInt(3) == 0) worldObj.playSoundEffect(xCoord, yCoord, zCoord, NTMSounds.VANILLA_HISS, 0.1F, 1.5F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void pollute(FluidType type, FluidTrait.FluidReleaseType release, float amount) {
|
public void pollute(FluidType type, FluidTrait.FluidReleaseType release, float amount) {
|
||||||
@ -52,19 +54,7 @@ public abstract class TileEntityMachinePolluting extends TileEntityMachineBase i
|
|||||||
HashMap<PollutionType, Float> map = release == FluidTrait.FluidReleaseType.BURN ? trait.burnMap : trait.releaseMap;
|
HashMap<PollutionType, Float> map = release == FluidTrait.FluidReleaseType.BURN ? trait.burnMap : trait.releaseMap;
|
||||||
|
|
||||||
for(Map.Entry<PollutionType, Float> entry : map.entrySet()) {
|
for(Map.Entry<PollutionType, Float> entry : map.entrySet()) {
|
||||||
|
pollute(entry.getKey(), entry.getValue());
|
||||||
tank = entry.getKey() == PollutionType.SOOT ? smoke : entry.getKey() == PollutionType.HEAVYMETAL ? smoke_leaded : smoke_poison;
|
|
||||||
int fluidAmount = (int) Math.ceil(entry.getValue() * amount * 100);
|
|
||||||
tank.setFill(tank.getFill() + fluidAmount);
|
|
||||||
|
|
||||||
if (tank.getFill() > tank.getMaxFill()) {
|
|
||||||
int overflow = tank.getFill() - tank.getMaxFill();
|
|
||||||
tank.setFill(tank.getMaxFill());
|
|
||||||
PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, entry.getKey(), overflow / 100F);
|
|
||||||
|
|
||||||
if (worldObj.rand.nextInt(3) == 0)
|
|
||||||
worldObj.playSoundEffect(xCoord, yCoord, zCoord, "random.fizz", 0.1F, 1.5F);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.hbm.handler.CompatHandler;
|
|||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.util.fauxpointtwelve.DirPos;
|
import com.hbm.util.fauxpointtwelve.DirPos;
|
||||||
@ -123,7 +124,7 @@ public class TileEntityChungus extends TileEntityTurbineBase implements SimpleCo
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.chungusTurbineRunning", xCoord, yCoord, zCoord, 1.0F, 20F, 1.0F, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.TURBINE_LEVI_LOOP, xCoord, yCoord, zCoord, 1.0F, 20F, 1.0F, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import com.hbm.handler.pollution.PollutionHandler.PollutionType;
|
|||||||
import com.hbm.inventory.fluid.FluidType;
|
import com.hbm.inventory.fluid.FluidType;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.items.ItemEnums.EnumAshType;
|
import com.hbm.items.ItemEnums.EnumAshType;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.ModuleBurnTime;
|
import com.hbm.module.ModuleBurnTime;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
import com.hbm.tileentity.TileEntityMachinePolluting;
|
import com.hbm.tileentity.TileEntityMachinePolluting;
|
||||||
@ -111,7 +112,7 @@ public abstract class TileEntityFireboxBase extends TileEntityMachinePolluting i
|
|||||||
this.wasOn = true;
|
this.wasOn = true;
|
||||||
|
|
||||||
if(worldObj.rand.nextInt(15) == 0 && !this.muffled) {
|
if(worldObj.rand.nextInt(15) == 0 && !this.muffled) {
|
||||||
worldObj.playSoundEffect(xCoord, yCoord, zCoord, "fire.fire", 1.0F, 0.5F + worldObj.rand.nextFloat() * 0.5F);
|
worldObj.playSoundEffect(xCoord, yCoord, zCoord, NTMSounds.VANILLA_FIRE, 1.0F, 0.5F + worldObj.rand.nextFloat() * 0.5F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -16,6 +16,7 @@ import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingStep;
|
|||||||
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.saveddata.TomSaveData;
|
import com.hbm.saveddata.TomSaveData;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
@ -127,7 +128,7 @@ public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IBufPa
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.boiler", xCoord, yCoord, zCoord, 0.125F, 10F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.BOILER_LOOP, xCoord, yCoord, zCoord, 0.125F, 10F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -227,7 +228,7 @@ public class TileEntityHeatBoiler extends TileEntityLoadedBase implements IBufPa
|
|||||||
this.heat -= heatReq * ops;
|
this.heat -= heatReq * ops;
|
||||||
|
|
||||||
if(ops > 0 && worldObj.rand.nextInt(400) == 0) {
|
if(ops > 0 && worldObj.rand.nextInt(400) == 0) {
|
||||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 2, zCoord + 0.5, "hbm:block.boilerGroan", 0.5F, 1.0F);
|
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 2, zCoord + 0.5, NTMSounds.BOILER_GROAN, 0.5F, 1.0F);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(ops > 0) {
|
if(ops > 0) {
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingStep;
|
|||||||
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.saveddata.TomSaveData;
|
import com.hbm.saveddata.TomSaveData;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
@ -116,7 +117,7 @@ public class TileEntityHeatBoilerIndustrial extends TileEntityLoadedBase impleme
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.boiler", xCoord, yCoord, zCoord, 0.125F, 10F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.BOILER_LOOP, xCoord, yCoord, zCoord, 0.125F, 10F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -213,7 +214,7 @@ public class TileEntityHeatBoilerIndustrial extends TileEntityLoadedBase impleme
|
|||||||
this.heat -= heatReq * ops;
|
this.heat -= heatReq * ops;
|
||||||
|
|
||||||
if(ops > 0 && worldObj.rand.nextInt(400) == 0) {
|
if(ops > 0 && worldObj.rand.nextInt(400) == 0) {
|
||||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 2, zCoord + 0.5, "hbm:block.boilerGroan", 0.5F, 1.0F);
|
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 2, zCoord + 0.5, NTMSounds.BOILER_GROAN, 0.5F, 1.0F);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(ops > 0) {
|
if(ops > 0) {
|
||||||
|
|||||||
@ -3,6 +3,7 @@ package com.hbm.tileentity.machine;
|
|||||||
import com.hbm.blocks.BlockDummyable;
|
import com.hbm.blocks.BlockDummyable;
|
||||||
import com.hbm.interfaces.ICopiable;
|
import com.hbm.interfaces.ICopiable;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
import com.hbm.tileentity.TileEntityLoadedBase;
|
import com.hbm.tileentity.TileEntityLoadedBase;
|
||||||
@ -78,7 +79,7 @@ public class TileEntityHeaterElectric extends TileEntityLoadedBase implements IH
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.electricHum", xCoord, yCoord, zCoord, 0.25F, 7.5F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.ELECTRIC_HUM_LOOP, xCoord, yCoord, zCoord, 0.25F, 7.5F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import com.hbm.items.machine.ItemMachineUpgrade;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -97,7 +98,7 @@ public class TileEntityMachineArcFurnaceLarge extends TileEntityMachineBase impl
|
|||||||
super.setInventorySlotContents(i, stack);
|
super.setInventorySlotContents(i, stack);
|
||||||
|
|
||||||
if(stack != null && stack.getItem() instanceof ItemMachineUpgrade && i == 4) {
|
if(stack != null && stack.getItem() instanceof ItemMachineUpgrade && i == 4) {
|
||||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "hbm:item.upgradePlug", 1.0F, 1.0F);
|
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, NTMSounds.UPGRADE_PLUG, 1.0F, 1.0F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -212,7 +213,7 @@ public class TileEntityMachineArcFurnaceLarge extends TileEntityMachineBase impl
|
|||||||
|
|
||||||
if(this.isProgressing) {
|
if(this.isProgressing) {
|
||||||
if(this.audioProgress == null || !this.audioProgress.isPlaying()) {
|
if(this.audioProgress == null || !this.audioProgress.isPlaying()) {
|
||||||
this.audioProgress = MainRegistry.proxy.getLoopedSound("hbm:block.electricHum", xCoord, yCoord, zCoord, this.getVolume(1.5F), 15F, 0.75F, 5);
|
this.audioProgress = MainRegistry.proxy.getLoopedSound(NTMSounds.ELECTRIC_HUM_LOOP, xCoord, yCoord, zCoord, this.getVolume(1.5F), 15F, 0.75F, 5);
|
||||||
this.audioProgress.startSound();
|
this.audioProgress.startSound();
|
||||||
}
|
}
|
||||||
this.audioProgress.updatePitch(0.75F);
|
this.audioProgress.updatePitch(0.75F);
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import com.hbm.items.machine.ItemMachineUpgrade;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.machine.ModuleMachineAssembler;
|
import com.hbm.module.machine.ModuleMachineAssembler;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConditionalInvAccess;
|
import com.hbm.tileentity.IConditionalInvAccess;
|
||||||
@ -234,7 +235,7 @@ public class TileEntityMachineAssemblyFactory extends TileEntityMachineBase impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override public AudioWrapper createAudioLoop() {
|
@Override public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.motor", xCoord, yCoord, zCoord, 0.5F, 15F, 0.75F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.ELECTRIC_MOTOR_LOOP, xCoord, yCoord, zCoord, 0.5F, 15F, 0.75F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void onChunkUnload() {
|
@Override public void onChunkUnload() {
|
||||||
@ -493,7 +494,7 @@ public class TileEntityMachineAssemblyFactory extends TileEntityMachineBase impl
|
|||||||
if(striker.state == ArmState.WAIT && saw.state == ArmState.WAIT) { // only progress as soon as both arms are done moving
|
if(striker.state == ArmState.WAIT && saw.state == ArmState.WAIT) { // only progress as soon as both arms are done moving
|
||||||
state = YuriState.SLIDING;
|
state = YuriState.SLIDING;
|
||||||
direction = !direction;
|
direction = !direction;
|
||||||
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerStart", getVolume(0.25F), 1.25F + worldObj.rand.nextFloat() * 0.25F);
|
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_START, getVolume(0.25F), 1.25F + worldObj.rand.nextFloat() * 0.25F);
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
case SLIDING: {
|
case SLIDING: {
|
||||||
@ -590,11 +591,11 @@ public class TileEntityMachineAssemblyFactory extends TileEntityMachineBase impl
|
|||||||
if(saw) {
|
if(saw) {
|
||||||
state = ArmState.CUT;
|
state = ArmState.CUT;
|
||||||
targetAngles[2] = -targetAngles[2];
|
targetAngles[2] = -targetAngles[2];
|
||||||
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerCut", getVolume(0.5F), 1F + rand.nextFloat() * 0.25F);
|
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_CUT, getVolume(0.5F), 1F + rand.nextFloat() * 0.25F);
|
||||||
} else {
|
} else {
|
||||||
state = ArmState.RETRACT;
|
state = ArmState.RETRACT;
|
||||||
targetAngles[3] = 0D;
|
targetAngles[3] = 0D;
|
||||||
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerStrike", getVolume(0.5F), 1F);
|
if(!muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_STRIKE, getVolume(0.5F), 1F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import com.hbm.items.machine.ItemMachineUpgrade;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.machine.ModuleMachineAssembler;
|
import com.hbm.module.machine.ModuleMachineAssembler;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -156,7 +157,7 @@ public class TileEntityMachineAssemblyMachine extends TileEntityMachineBase impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(!this.muffled && arm.prevAngles[3] != arm.angles[3] && arm.angles[3] == -0.75) {
|
if(!this.muffled && arm.prevAngles[3] != arm.angles[3] && arm.angles[3] == -0.75) {
|
||||||
MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerStrike", this.getVolume(0.5F), 1F);
|
MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_STRIKE, this.getVolume(0.5F), 1F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -180,7 +181,7 @@ public class TileEntityMachineAssemblyMachine extends TileEntityMachineBase impl
|
|||||||
if(this.ringDelay <= 0) {
|
if(this.ringDelay <= 0) {
|
||||||
this.ringTarget += (worldObj.rand.nextDouble() * 2 - 1) * 135;
|
this.ringTarget += (worldObj.rand.nextDouble() * 2 - 1) * 135;
|
||||||
this.ringSpeed = 10D + worldObj.rand.nextDouble() * 5D;
|
this.ringSpeed = 10D + worldObj.rand.nextDouble() * 5D;
|
||||||
if(!this.muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerStart", this.getVolume(0.25F), 1.25F + worldObj.rand.nextFloat() * 0.25F);
|
if(!this.muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_START, this.getVolume(0.25F), 1.25F + worldObj.rand.nextFloat() * 0.25F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -188,7 +189,7 @@ public class TileEntityMachineAssemblyMachine extends TileEntityMachineBase impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override public AudioWrapper createAudioLoop() {
|
@Override public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.motor", xCoord, yCoord, zCoord, 0.5F, 15F, 0.75F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.ELECTRIC_MOTOR_LOOP, xCoord, yCoord, zCoord, 0.5F, 15F, 0.75F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void onChunkUnload() {
|
@Override public void onChunkUnload() {
|
||||||
@ -240,7 +241,7 @@ public class TileEntityMachineAssemblyMachine extends TileEntityMachineBase impl
|
|||||||
this.assemblerModule.deserialize(buf);
|
this.assemblerModule.deserialize(buf);
|
||||||
|
|
||||||
if(wasProcessing && !didProcess) {
|
if(wasProcessing && !didProcess) {
|
||||||
MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, "hbm:block.assemblerStop", this.getVolume(0.25F), 1.5F);
|
MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_STOP, this.getVolume(0.25F), 1.5F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,6 +14,7 @@ import com.hbm.inventory.recipes.CentrifugeRecipes;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -277,7 +278,7 @@ public class TileEntityMachineCentrifuge extends TileEntityMachineBase implement
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.centrifugeOperate", xCoord, yCoord, zCoord, 1.0F, 10F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.CENTRIFUGE_LOOP, xCoord, yCoord, zCoord, 1.0F, 10F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -17,6 +17,7 @@ import com.hbm.items.machine.ItemMachineUpgrade;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.machine.ModuleMachineChemplant;
|
import com.hbm.module.machine.ModuleMachineChemplant;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConditionalInvAccess;
|
import com.hbm.tileentity.IConditionalInvAccess;
|
||||||
@ -248,7 +249,7 @@ public class TileEntityMachineChemicalFactory extends TileEntityMachineBase impl
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override public AudioWrapper createAudioLoop() {
|
@Override public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.chemicalPlant", xCoord, yCoord, zCoord, 1F, 15F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.CHEMPLANT_LOOP, xCoord, yCoord, zCoord, 1F, 15F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void onChunkUnload() {
|
@Override public void onChunkUnload() {
|
||||||
|
|||||||
@ -17,6 +17,7 @@ import com.hbm.items.machine.ItemMachineUpgrade;
|
|||||||
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.machine.ModuleMachineChemplant;
|
import com.hbm.module.machine.ModuleMachineChemplant;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -158,7 +159,7 @@ public class TileEntityMachineChemicalPlant extends TileEntityMachineBase implem
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override public AudioWrapper createAudioLoop() {
|
@Override public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.chemicalPlant", xCoord, yCoord, zCoord, 1F, 15F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.CHEMPLANT_LOOP, xCoord, yCoord, zCoord, 1F, 15F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void onChunkUnload() {
|
@Override public void onChunkUnload() {
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import com.hbm.inventory.gui.GUIMachineDiesel;
|
|||||||
import com.hbm.items.ModItems;
|
import com.hbm.items.ModItems;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
@ -170,7 +171,7 @@ public class TileEntityMachineDiesel extends TileEntityMachinePolluting implemen
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.engine", xCoord, yCoord, zCoord, 1.0F, 10F, 1.0F, 10);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.ENGINE_LOOP, xCoord, yCoord, zCoord, 1.0F, 10F, 1.0F, 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingStep;
|
|||||||
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
import com.hbm.inventory.fluid.trait.FT_Heatable.HeatingType;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
@ -105,7 +106,7 @@ public class TileEntityMachineHephaestus extends TileEntityLoadedBase implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.hephaestusRunning", xCoord, yCoord + 5F, zCoord, 0.75F, 10F, 1.0F);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.HEPHAESTUS_LOOP, xCoord, yCoord + 5F, zCoord, 0.75F, 10F, 1.0F);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import com.hbm.inventory.fluid.tank.FluidTank;
|
|||||||
import com.hbm.inventory.fluid.trait.FT_Coolable;
|
import com.hbm.inventory.fluid.trait.FT_Coolable;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Coolable.CoolingType;
|
import com.hbm.inventory.fluid.trait.FT_Coolable.CoolingType;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.util.fauxpointtwelve.DirPos;
|
import com.hbm.util.fauxpointtwelve.DirPos;
|
||||||
@ -116,7 +117,7 @@ public class TileEntityMachineIndustrialTurbine extends TileEntityTurbineBase im
|
|||||||
float pitch = 0.5F + spinNum * 0.5F + this.audioDesync;
|
float pitch = 0.5F + spinNum * 0.5F + this.audioDesync;
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.largeTurbineRunning", xCoord + 0.5F, yCoord + 0.5F, zCoord + 0.5F, volume, 20F, pitch, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.TURBINE_LARGE_LOOP, xCoord + 0.5F, yCoord + 0.5F, zCoord + 0.5F, volume, 20F, pitch, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import com.hbm.inventory.fluid.FluidType;
|
|||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.TileEntityLoadedBase;
|
import com.hbm.tileentity.TileEntityLoadedBase;
|
||||||
import com.hbm.util.fauxpointtwelve.DirPos;
|
import com.hbm.util.fauxpointtwelve.DirPos;
|
||||||
@ -97,7 +98,7 @@ public class TileEntityMachineIntake extends TileEntityLoadedBase implements IEn
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override public AudioWrapper createAudioLoop() {
|
@Override public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.motor", xCoord, yCoord, zCoord, 0.25F, 10F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.ELECTRIC_MOTOR_LOOP, xCoord, yCoord, zCoord, 0.25F, 10F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void onChunkUnload() {
|
@Override public void onChunkUnload() {
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType;
|
|||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.lib.ModDamageSource;
|
import com.hbm.lib.ModDamageSource;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -152,7 +153,7 @@ public class TileEntityMachineOreSlopper extends TileEntityMachineBase implement
|
|||||||
vdat.setInteger("cDiv", 5);
|
vdat.setInteger("cDiv", 5);
|
||||||
PacketThreading.createAllAroundThreadedPacket(new AuxParticlePacketNT(vdat, e.posX, e.posY + e.height * 0.5, e.posZ), new TargetPoint(e.dimension, e.posX, e.posY + e.height * 0.5, e.posZ, 150));
|
PacketThreading.createAllAroundThreadedPacket(new AuxParticlePacketNT(vdat, e.posX, e.posY + e.height * 0.5, e.posZ), new TargetPoint(e.dimension, e.posX, e.posY + e.height * 0.5, e.posZ, 150));
|
||||||
|
|
||||||
worldObj.playSoundEffect(e.posX, e.posY, e.posZ, "mob.zombie.woodbreak", 2.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
worldObj.playSoundEffect(e.posX, e.posY, e.posZ, NTMSounds.VANILLA_GIB, 2.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import com.hbm.inventory.gui.GUIMachineShredder;
|
|||||||
import com.hbm.inventory.recipes.ShredderRecipes;
|
import com.hbm.inventory.recipes.ShredderRecipes;
|
||||||
import com.hbm.items.machine.ItemBlades;
|
import com.hbm.items.machine.ItemBlades;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
import com.hbm.tileentity.TileEntityLoadedBase;
|
import com.hbm.tileentity.TileEntityLoadedBase;
|
||||||
|
|
||||||
@ -252,7 +253,7 @@ public class TileEntityMachineShredder extends TileEntityLoadedBase implements I
|
|||||||
flag1 = true;
|
flag1 = true;
|
||||||
}
|
}
|
||||||
if(soundCycle == 0)
|
if(soundCycle == 0)
|
||||||
this.worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, "minecart.base", getVolume(1.0F), 0.75F);
|
this.worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, NTMSounds.VANILLA_MINECART, getVolume(1.0F), 0.75F);
|
||||||
soundCycle++;
|
soundCycle++;
|
||||||
|
|
||||||
if(soundCycle >= 50)
|
if(soundCycle >= 50)
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType;
|
|||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.lib.ModDamageSource;
|
import com.hbm.lib.ModDamageSource;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
import com.hbm.packet.toclient.AuxParticlePacketNT;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
@ -222,7 +223,7 @@ public class TileEntityMachineTurbofan extends TileEntityMachinePolluting implem
|
|||||||
}*/
|
}*/
|
||||||
|
|
||||||
if(this.afterburner > 90 && worldObj.rand.nextInt(30) == 0) {
|
if(this.afterburner > 90 && worldObj.rand.nextInt(30) == 0) {
|
||||||
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, "hbm:block.damage", 3.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
worldObj.playSoundEffect(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, NTMSounds.TURBOFAN_DAMAGE, 3.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(this.afterburner > 90) {
|
if(this.afterburner > 90) {
|
||||||
@ -285,7 +286,7 @@ public class TileEntityMachineTurbofan extends TileEntityMachinePolluting implem
|
|||||||
vdat.setInteger("cDiv", 5);
|
vdat.setInteger("cDiv", 5);
|
||||||
PacketThreading.createAllAroundThreadedPacket(new AuxParticlePacketNT(vdat, e.posX, e.posY + e.height * 0.5, e.posZ), new TargetPoint(e.dimension, e.posX, e.posY + e.height * 0.5, e.posZ, 150));
|
PacketThreading.createAllAroundThreadedPacket(new AuxParticlePacketNT(vdat, e.posX, e.posY + e.height * 0.5, e.posZ), new TargetPoint(e.dimension, e.posX, e.posY + e.height * 0.5, e.posZ, 150));
|
||||||
|
|
||||||
worldObj.playSoundEffect(e.posX, e.posY, e.posZ, "mob.zombie.woodbreak", 2.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
worldObj.playSoundEffect(e.posX, e.posY, e.posZ, NTMSounds.VANILLA_GIB, 2.0F, 0.95F + worldObj.rand.nextFloat() * 0.2F);
|
||||||
|
|
||||||
blood.setFill(blood.getFill() + 50);
|
blood.setFill(blood.getFill() + 50);
|
||||||
if(blood.getFill() > blood.getMaxFill()) {
|
if(blood.getFill() > blood.getMaxFill()) {
|
||||||
@ -417,7 +418,7 @@ public class TileEntityMachineTurbofan extends TileEntityMachinePolluting implem
|
|||||||
}
|
}
|
||||||
|
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.turbofanOperate", xCoord, yCoord, zCoord, 1.0F, 50F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.TURBOFAN_LOOP, xCoord, yCoord, zCoord, 1.0F, 50F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.hbm.items.ModItems;
|
|||||||
import com.hbm.items.machine.ItemPWRFuel.EnumPWRFuel;
|
import com.hbm.items.machine.ItemPWRFuel.EnumPWRFuel;
|
||||||
import com.hbm.items.machine.ItemPWRPrinter;
|
import com.hbm.items.machine.ItemPWRPrinter;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
import com.hbm.tileentity.TileEntityMachineBase;
|
import com.hbm.tileentity.TileEntityMachineBase;
|
||||||
@ -328,7 +329,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AudioWrapper createAudioLoop() {
|
public AudioWrapper createAudioLoop() {
|
||||||
return MainRegistry.proxy.getLoopedSound("hbm:block.reactorLoop", xCoord, yCoord, zCoord, 1F, 10F, 1.0F, 20);
|
return MainRegistry.proxy.getLoopedSound(NTMSounds.REACTOR_GEIGER_LOOP, xCoord, yCoord, zCoord, 1F, 10F, 1.0F, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import com.hbm.inventory.fluid.Fluids;
|
|||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Coolable;
|
import com.hbm.inventory.fluid.trait.FT_Coolable;
|
||||||
import com.hbm.inventory.fluid.trait.FT_Coolable.CoolingType;
|
import com.hbm.inventory.fluid.trait.FT_Coolable.CoolingType;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
@ -110,7 +111,7 @@ public class TileEntitySteamEngine extends TileEntityLoadedBase implements IEner
|
|||||||
if(this.rotor >= 360D) {
|
if(this.rotor >= 360D) {
|
||||||
this.rotor -= 360D;
|
this.rotor -= 360D;
|
||||||
|
|
||||||
this.worldObj.playSoundEffect(xCoord, yCoord, zCoord, "hbm:block.steamEngineOperate", getVolume(1.0F), 0.5F + (acceleration / 80F));
|
this.worldObj.playSoundEffect(xCoord, yCoord, zCoord, NTMSounds.STEAM_ENGINE_HIT, getVolume(1.0F), 0.5F + (acceleration / 80F));
|
||||||
}
|
}
|
||||||
|
|
||||||
buf.writeLong(this.powerBuffer);
|
buf.writeLong(this.powerBuffer);
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.hbm.inventory.fluid.tank.FluidTank;
|
|||||||
import com.hbm.inventory.gui.GUIFusionKlystron;
|
import com.hbm.inventory.gui.GUIFusionKlystron;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
import com.hbm.tileentity.TileEntityMachineBase;
|
import com.hbm.tileentity.TileEntityMachineBase;
|
||||||
@ -129,7 +130,7 @@ public class TileEntityFusionKlystron extends TileEntityMachineBase implements I
|
|||||||
float speed = this.fanSpeed / 5F;
|
float speed = this.fanSpeed / 5F;
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.fel", xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 15F, speed, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.FEL_LOOP, xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 15F, speed, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
} else {
|
} else {
|
||||||
audio.updateVolume(getVolume(speed));
|
audio.updateVolume(getVolume(speed));
|
||||||
|
|||||||
@ -2,6 +2,7 @@ package com.hbm.tileentity.machine.fusion;
|
|||||||
|
|
||||||
import com.hbm.inventory.recipes.FusionRecipes;
|
import com.hbm.inventory.recipes.FusionRecipes;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.TileEntityLoadedBase;
|
import com.hbm.tileentity.TileEntityLoadedBase;
|
||||||
import com.hbm.uninos.GenNode;
|
import com.hbm.uninos.GenNode;
|
||||||
@ -56,7 +57,7 @@ public class TileEntityFusionKlystronCreative extends TileEntityLoadedBase {
|
|||||||
float speed = this.fanSpeed / 5F;
|
float speed = this.fanSpeed / 5F;
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.fel", xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 15F, speed, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.FEL_LOOP, xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 15F, speed, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
} else {
|
} else {
|
||||||
audio.updateVolume(getVolume(speed));
|
audio.updateVolume(getVolume(speed));
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import com.hbm.handler.CompatHandler;
|
|||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
import com.hbm.tileentity.TileEntityLoadedBase;
|
import com.hbm.tileentity.TileEntityLoadedBase;
|
||||||
@ -125,7 +126,7 @@ public class TileEntityFusionMHDT extends TileEntityLoadedBase implements IEnerg
|
|||||||
float speed = this.rotorSpeed / 15F;
|
float speed = this.rotorSpeed / 15F;
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.largeTurbineRunning", xCoord + 0.5F, yCoord + 1.5F, zCoord + 0.5F, getVolume(speed), 20F, speed, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.TURBINE_LARGE_LOOP, xCoord + 0.5F, yCoord + 1.5F, zCoord + 0.5F, getVolume(speed), 20F, speed, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
} else {
|
} else {
|
||||||
audio.updateVolume(getVolume(speed));
|
audio.updateVolume(getVolume(speed));
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
package com.hbm.tileentity.machine.fusion;
|
package com.hbm.tileentity.machine.fusion;
|
||||||
|
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
import java.util.Random;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import com.hbm.interfaces.IControlReceiver;
|
import com.hbm.interfaces.IControlReceiver;
|
||||||
import com.hbm.inventory.container.ContainerMachinePlasmaForge;
|
import com.hbm.inventory.container.ContainerMachinePlasmaForge;
|
||||||
@ -48,6 +50,7 @@ public class TileEntityFusionPlasmaForge extends TileEntityMachineBase implement
|
|||||||
public float plasmaBlue;
|
public float plasmaBlue;
|
||||||
public long plasmaEnergy;
|
public long plasmaEnergy;
|
||||||
public long plasmaEnergySync;
|
public long plasmaEnergySync;
|
||||||
|
public double neutronEnergy;
|
||||||
protected GenNode receiverNode;
|
protected GenNode receiverNode;
|
||||||
protected GenNode providerNode;
|
protected GenNode providerNode;
|
||||||
|
|
||||||
@ -55,12 +58,24 @@ public class TileEntityFusionPlasmaForge extends TileEntityMachineBase implement
|
|||||||
|
|
||||||
public ModuleMachinePlasma plasmaModule;
|
public ModuleMachinePlasma plasmaModule;
|
||||||
|
|
||||||
|
// animation crap
|
||||||
|
public double prevRing;
|
||||||
|
public double ring;
|
||||||
|
public double ringSpeed;
|
||||||
|
public double ringTarget;
|
||||||
|
public int ringDelay;
|
||||||
|
public ForgeArm armStriker;
|
||||||
|
public ForgeArm armJet;
|
||||||
|
|
||||||
public TileEntityFusionPlasmaForge() {
|
public TileEntityFusionPlasmaForge() {
|
||||||
super(16);
|
super(16);
|
||||||
this.inputTank = new FluidTank(Fluids.NONE, 16_000);
|
this.inputTank = new FluidTank(Fluids.NONE, 16_000);
|
||||||
|
|
||||||
this.plasmaModule = new ModuleMachinePlasma(0, this, slots)
|
this.plasmaModule = new ModuleMachinePlasma(0, this, slots)
|
||||||
.itemInput(3).itemOutput(15).fluidInput(inputTank);
|
.itemInput(3).itemOutput(15).fluidInput(inputTank);
|
||||||
|
|
||||||
|
this.armStriker = new ForgeArm(ForgeArmType.STRIKER);
|
||||||
|
this.armJet = new ForgeArm(ForgeArmType.JET);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -71,6 +86,7 @@ public class TileEntityFusionPlasmaForge extends TileEntityMachineBase implement
|
|||||||
@Override public boolean receivesFusionPower() { return true; }
|
@Override public boolean receivesFusionPower() { return true; }
|
||||||
@Override public void receiveFusionPower(long fusionPower, double neutronPower, float r, float g, float b) {
|
@Override public void receiveFusionPower(long fusionPower, double neutronPower, float r, float g, float b) {
|
||||||
this.plasmaEnergy = fusionPower;
|
this.plasmaEnergy = fusionPower;
|
||||||
|
this.neutronEnergy = neutronPower;
|
||||||
this.plasmaRed = r;
|
this.plasmaRed = r;
|
||||||
this.plasmaGreen = g;
|
this.plasmaGreen = g;
|
||||||
this.plasmaBlue = b;
|
this.plasmaBlue = b;
|
||||||
@ -113,22 +129,52 @@ public class TileEntityFusionPlasmaForge extends TileEntityMachineBase implement
|
|||||||
this.didProcess = this.plasmaModule.didProcess;
|
this.didProcess = this.plasmaModule.didProcess;
|
||||||
if(this.plasmaModule.markDirty) this.markDirty();
|
if(this.plasmaModule.markDirty) this.markDirty();
|
||||||
|
|
||||||
if(providerNode != null && providerNode.hasValidNet()) {
|
long powerReceived = (long) Math.ceil(this.plasmaEnergySync * 0.75);
|
||||||
|
if(powerReceived > 0 && providerNode != null && providerNode.hasValidNet()) {
|
||||||
|
|
||||||
for(Object o : providerNode.net.receiverEntries.entrySet()) {
|
for(Object o : providerNode.net.receiverEntries.entrySet()) {
|
||||||
Entry<Object, Long> entry = (Entry<Object, Long>) o;
|
Entry<Object, Long> entry = (Entry<Object, Long>) o;
|
||||||
|
|
||||||
if(entry.getKey() instanceof IFusionPowerReceiver) {
|
if(entry.getKey() instanceof IFusionPowerReceiver) {
|
||||||
long powerReceived = (long) Math.ceil(this.plasmaEnergySync * 0.75);
|
((IFusionPowerReceiver) entry.getKey()).receiveFusionPower(powerReceived, this.neutronEnergy, plasmaRed, plasmaGreen, plasmaBlue);
|
||||||
((IFusionPowerReceiver) entry.getKey()).receiveFusionPower(powerReceived, 0, plasmaRed, plasmaGreen, plasmaBlue);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.neutronEnergy = 0D;
|
||||||
|
|
||||||
this.networkPackNT(100);
|
this.networkPackNT(100);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if(timeOffset == -1) this.timeOffset = worldObj.rand.nextInt(30_000);
|
if(timeOffset == -1) this.timeOffset = worldObj.rand.nextInt(30_000);
|
||||||
|
|
||||||
|
this.armStriker.updateArm();
|
||||||
|
this.armJet.updateArm();
|
||||||
|
|
||||||
|
this.prevRing = this.ring;
|
||||||
|
|
||||||
|
if(didProcess) {
|
||||||
|
if(this.ring != this.ringTarget) {
|
||||||
|
double ringDelta = Math.abs(this.ringTarget - this.ring);
|
||||||
|
if(ringDelta <= this.ringSpeed) this.ring = this.ringTarget;
|
||||||
|
if(this.ringTarget > this.ring) this.ring += this.ringSpeed;
|
||||||
|
if(this.ringTarget < this.ring) this.ring -= this.ringSpeed;
|
||||||
|
if(this.ringTarget == this.ring) {
|
||||||
|
double sub = ringTarget >= 360 ? -360D : 360D;
|
||||||
|
this.ringTarget += sub;
|
||||||
|
this.ring += sub;
|
||||||
|
this.prevRing += sub;
|
||||||
|
this.ringDelay = 100 + worldObj.rand.nextInt(41);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(this.ringDelay > 0) this.ringDelay--;
|
||||||
|
if(this.ringDelay <= 0) {
|
||||||
|
this.ringTarget += (worldObj.rand.nextDouble() + 1) * 60 * (worldObj.rand.nextBoolean() ? - 1 : 1);
|
||||||
|
this.ringSpeed = 2.5D;
|
||||||
|
//if(!this.muffled) MainRegistry.proxy.playSoundClient(xCoord, yCoord, zCoord, NTMSounds.ASSEMBLER_START, this.getVolume(0.25F), 1.25F + worldObj.rand.nextFloat() * 0.25F);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -265,4 +311,205 @@ public class TileEntityFusionPlasmaForge extends TileEntityMachineBase implement
|
|||||||
|
|
||||||
@Override public Container provideContainer(int ID, EntityPlayer player, World world, int x, int y, int z) { return new ContainerMachinePlasmaForge(player.inventory, this); }
|
@Override public Container provideContainer(int ID, EntityPlayer player, World world, int x, int y, int z) { return new ContainerMachinePlasmaForge(player.inventory, this); }
|
||||||
@Override @SideOnly(Side.CLIENT) public Object provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { return new GUIMachinePlasmaForge(player.inventory, this); }
|
@Override @SideOnly(Side.CLIENT) public Object provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { return new GUIMachinePlasmaForge(player.inventory, this); }
|
||||||
|
|
||||||
|
public class ForgeArm {
|
||||||
|
|
||||||
|
public ForgeArmType type;
|
||||||
|
public ForgeArmState state = ForgeArmState.RETIRE;
|
||||||
|
public double[] angles;
|
||||||
|
public double[] prevAngles;
|
||||||
|
public double[] targetAngles;
|
||||||
|
public double[] speed;
|
||||||
|
public int actionDelay = 0;
|
||||||
|
|
||||||
|
public ForgeArm(ForgeArmType type) {
|
||||||
|
this.type = type;
|
||||||
|
this.angles = new double[type.angleCount];
|
||||||
|
this.prevAngles = new double[type.angleCount];
|
||||||
|
this.targetAngles = new double[type.angleCount];
|
||||||
|
this.speed = new double[type.angleCount];
|
||||||
|
|
||||||
|
for(int i = 0; i < speed.length; i++) {
|
||||||
|
if(i < 3 || i == 4) speed[i] = 15;
|
||||||
|
if(i == 3) speed[i] = 15;
|
||||||
|
if(i > 4) speed[i] = 0.5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void updateArm() {
|
||||||
|
for(int i = 0; i < angles.length; i++) prevAngles[i] = angles[i];
|
||||||
|
|
||||||
|
if(this.actionDelay > 0) {
|
||||||
|
this.actionDelay--;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.type.stateMachine.accept(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean didProcess() { return didProcess; }
|
||||||
|
|
||||||
|
public boolean move() {
|
||||||
|
boolean didMove = false;
|
||||||
|
|
||||||
|
for(int i = 0; i < angles.length; i++) {
|
||||||
|
if(angles[i] == targetAngles[i]) continue;
|
||||||
|
didMove = true;
|
||||||
|
|
||||||
|
double angle = angles[i];
|
||||||
|
double target = targetAngles[i];
|
||||||
|
double turn = speed[i];
|
||||||
|
double delta = Math.abs(angle - target);
|
||||||
|
|
||||||
|
if(delta <= turn) {
|
||||||
|
angles[i] = targetAngles[i];
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if(angle < target) angles[i] += turn;
|
||||||
|
else angles[i] -= turn;
|
||||||
|
}
|
||||||
|
|
||||||
|
return !didMove;
|
||||||
|
}
|
||||||
|
|
||||||
|
public double[] getPositions(float interp) {
|
||||||
|
double[] pos = new double[this.angles.length];
|
||||||
|
for(int i = 0; i < pos.length; i++) {
|
||||||
|
pos[i] = BobMathUtil.interp(this.prevAngles[i], this.angles[i], interp);
|
||||||
|
}
|
||||||
|
return pos;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static enum ForgeArmType {
|
||||||
|
STRIKER(STRIKER_STATE_MACHINE, 6), // pivot to lower arm, lower arm to upper arm, upper arm to mount, mount to strikers, striker 1, striker 2
|
||||||
|
JET(JET_STATE_MACHINE, 4); // pivot to lower arm, lower arm to upper arm, upper arm to jet, jet
|
||||||
|
|
||||||
|
protected final int angleCount;
|
||||||
|
protected final Consumer<ForgeArm> stateMachine;
|
||||||
|
|
||||||
|
private ForgeArmType(Consumer<ForgeArm> stateMachine, int angleCount) {
|
||||||
|
this.stateMachine = stateMachine;
|
||||||
|
this.angleCount = angleCount;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static enum ForgeArmState {
|
||||||
|
REPOSITION,
|
||||||
|
EXTEND1,
|
||||||
|
EXTEND2,
|
||||||
|
RETRACT1,
|
||||||
|
RETRACT2,
|
||||||
|
RETIRE
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Random rand = new Random();
|
||||||
|
|
||||||
|
public static double[][] strikerPositions = new double[][] {
|
||||||
|
{20, -30, -20, 30},
|
||||||
|
{45, -80, 15, 30},
|
||||||
|
{30, -45, -10, 30},
|
||||||
|
{15, -20, -30, 30},
|
||||||
|
{0, 10, -55, 30}
|
||||||
|
};
|
||||||
|
|
||||||
|
public static double[][] jetPositions = new double[][] {
|
||||||
|
{10, 45, -120},
|
||||||
|
{20, 45, -140},
|
||||||
|
{0, 30, -80},
|
||||||
|
{0, 40, -100},
|
||||||
|
{30, 50, -160}
|
||||||
|
};
|
||||||
|
|
||||||
|
public static Consumer<ForgeArm> STRIKER_STATE_MACHINE = (arm) -> {
|
||||||
|
|
||||||
|
if(!arm.didProcess()) arm.state = ForgeArmState.RETIRE;
|
||||||
|
|
||||||
|
switch(arm.state) {
|
||||||
|
case REPOSITION: {
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 5;
|
||||||
|
arm.state = ForgeArmState.EXTEND1;
|
||||||
|
arm.targetAngles[4] = 0.5D;
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case EXTEND1: {
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 0;
|
||||||
|
arm.state = ForgeArmState.RETRACT1;
|
||||||
|
arm.targetAngles[4] = 0D;
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case RETRACT1: {
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 0;
|
||||||
|
arm.state = ForgeArmState.EXTEND2;
|
||||||
|
arm.targetAngles[5] = 0.5D;
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case EXTEND2: {
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 0;
|
||||||
|
arm.state = ForgeArmState.RETRACT2;
|
||||||
|
arm.targetAngles[5] = 0D;
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case RETRACT2: {
|
||||||
|
if(arm.move()) {
|
||||||
|
if(rand.nextInt(3) == 0) {
|
||||||
|
arm.actionDelay = 10;
|
||||||
|
arm.state = ForgeArmState.REPOSITION;
|
||||||
|
choosePosition(arm, strikerPositions);
|
||||||
|
} else {
|
||||||
|
arm.actionDelay = 5;
|
||||||
|
arm.state = ForgeArmState.EXTEND1;
|
||||||
|
arm.targetAngles[4] = 0.5D;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case RETIRE: {
|
||||||
|
for(int i = 0; i < arm.targetAngles.length; i++) arm.targetAngles[i] = 0;
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 10;
|
||||||
|
arm.state = ForgeArmState.REPOSITION;
|
||||||
|
choosePosition(arm, strikerPositions);
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*if(arm.state == ForgeArmState.REPOSITION || arm.state == ForgeArmState.RETIRE) {
|
||||||
|
arm.targetAngles[3] = 0;
|
||||||
|
} else {
|
||||||
|
arm.targetAngles[3] = 30;
|
||||||
|
}*/
|
||||||
|
};
|
||||||
|
|
||||||
|
@SuppressWarnings("incomplete-switch") // shut up
|
||||||
|
public static Consumer<ForgeArm> JET_STATE_MACHINE = (arm) -> {
|
||||||
|
|
||||||
|
if(!arm.didProcess()) arm.state = ForgeArmState.RETIRE;
|
||||||
|
|
||||||
|
switch(arm.state) {
|
||||||
|
case REPOSITION: {
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 20;
|
||||||
|
arm.state = ForgeArmState.REPOSITION;
|
||||||
|
choosePosition(arm, jetPositions);
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
case RETIRE: {
|
||||||
|
for(int i = 0; i < arm.targetAngles.length; i++) arm.targetAngles[i] = 0;
|
||||||
|
if(arm.move()) {
|
||||||
|
arm.actionDelay = 10;
|
||||||
|
arm.state = ForgeArmState.REPOSITION;
|
||||||
|
choosePosition(arm, jetPositions);
|
||||||
|
}
|
||||||
|
} break;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
public static void choosePosition(ForgeArm arm, double[][] positions) {
|
||||||
|
double[] newPos = positions[rand.nextInt(positions.length)];
|
||||||
|
for(int i = 0; i < newPos.length; i++) arm.targetAngles[i] = newPos[i];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import com.hbm.inventory.recipes.FusionRecipe;
|
|||||||
import com.hbm.items.ModItems;
|
import com.hbm.items.ModItems;
|
||||||
import com.hbm.lib.Library;
|
import com.hbm.lib.Library;
|
||||||
import com.hbm.main.MainRegistry;
|
import com.hbm.main.MainRegistry;
|
||||||
|
import com.hbm.main.NTMSounds;
|
||||||
import com.hbm.module.machine.ModuleMachineFusion;
|
import com.hbm.module.machine.ModuleMachineFusion;
|
||||||
import com.hbm.sound.AudioWrapper;
|
import com.hbm.sound.AudioWrapper;
|
||||||
import com.hbm.tileentity.IGUIProvider;
|
import com.hbm.tileentity.IGUIProvider;
|
||||||
@ -231,7 +232,7 @@ public class TileEntityFusionTorus extends TileEntityCooledBase implements IGUIP
|
|||||||
float speed = this.magnetSpeed / 30F;
|
float speed = this.magnetSpeed / 30F;
|
||||||
|
|
||||||
if(audio == null) {
|
if(audio == null) {
|
||||||
audio = MainRegistry.proxy.getLoopedSound("hbm:block.fusionReactorRunning", xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 30F, speed, 20);
|
audio = MainRegistry.proxy.getLoopedSound(NTMSounds.FUSION_REACTOR_LOOP, xCoord + 0.5F, yCoord + 2.5F, zCoord + 0.5F, getVolume(speed), 30F, speed, 20);
|
||||||
audio.startSound();
|
audio.startSound();
|
||||||
} else {
|
} else {
|
||||||
audio.updateVolume(getVolume(speed));
|
audio.updateVolume(getVolume(speed));
|
||||||
|
|||||||
@ -191,6 +191,7 @@ autoswitch.plates=Metal Plates
|
|||||||
autoswitch.pwr=Reprocessing PWR Fuel
|
autoswitch.pwr=Reprocessing PWR Fuel
|
||||||
autoswitch.schrab=Schrabidium Extraction
|
autoswitch.schrab=Schrabidium Extraction
|
||||||
autoswitch.watz=Reprocessing Watz Pellet
|
autoswitch.watz=Reprocessing Watz Pellet
|
||||||
|
autoswitch.weldPlates=Welded Plates
|
||||||
autoswitch.zirnox=Reprocessing ZIRNOX Fuel
|
autoswitch.zirnox=Reprocessing ZIRNOX Fuel
|
||||||
|
|
||||||
battery.mode.buffer=Input/Output Mode
|
battery.mode.buffer=Input/Output Mode
|
||||||
|
|||||||
@ -1,13 +1,58 @@
|
|||||||
# Blender v2.76 (sub 0) OBJ File: 'barrel.blend'
|
# Blender v2.82 (sub 7) OBJ File: 'barrel.blend'
|
||||||
# www.blender.org
|
# www.blender.org
|
||||||
o Cube_Cube.001
|
mtllib barrel.mtl
|
||||||
v -0.375000 0.000000 0.375000
|
o Connector
|
||||||
v -0.375000 1.000000 0.375000
|
v 0.500000 0.687500 0.187500
|
||||||
v -0.375000 0.000000 -0.375000
|
v 0.500000 0.312500 -0.187500
|
||||||
v -0.375000 1.000000 -0.375000
|
v 0.500000 0.687500 -0.187500
|
||||||
v 0.375000 0.000000 0.375000
|
v 0.375000 0.312500 -0.187500
|
||||||
|
v 0.375000 0.687500 0.187500
|
||||||
|
v 0.375000 0.687500 -0.187500
|
||||||
|
v 0.375000 0.312500 0.187500
|
||||||
|
v 0.500000 0.312500 0.187500
|
||||||
|
vt 0.145833 0.270833
|
||||||
|
vt 0.020833 0.395833
|
||||||
|
vt 0.020833 0.270833
|
||||||
|
vt 0.020833 0.375000
|
||||||
|
vt 0.000000 0.250000
|
||||||
|
vt 0.020833 0.250000
|
||||||
|
vt 0.166667 0.395833
|
||||||
|
vt 0.041667 0.416667
|
||||||
|
vt 0.041667 0.395833
|
||||||
|
vt 0.145833 0.291667
|
||||||
|
vt 0.166667 0.416667
|
||||||
|
vt 0.145833 0.416667
|
||||||
|
vt 0.000000 0.270833
|
||||||
|
vt 0.125000 0.250000
|
||||||
|
vt 0.125000 0.270833
|
||||||
|
vt 0.145833 0.395833
|
||||||
|
vt -0.000000 0.375000
|
||||||
|
vt 0.166667 0.291667
|
||||||
|
vn 1.0000 0.0000 0.0000
|
||||||
|
vn 0.0000 0.0000 1.0000
|
||||||
|
vn 0.0000 1.0000 -0.0000
|
||||||
|
vn 0.0000 -0.0000 -1.0000
|
||||||
|
vn 0.0000 -1.0000 0.0000
|
||||||
|
usemtl Default_OBJ
|
||||||
|
s 1
|
||||||
|
f 1/1/1 2/2/1 3/3/1
|
||||||
|
f 1/4/2 7/5/2 8/6/2
|
||||||
|
f 3/7/3 5/8/3 1/9/3
|
||||||
|
f 2/10/4 6/11/4 3/12/4
|
||||||
|
f 8/13/5 4/14/5 2/15/5
|
||||||
|
f 1/1/1 8/16/1 2/2/1
|
||||||
|
f 1/4/2 5/17/2 7/5/2
|
||||||
|
f 3/7/3 6/11/3 5/8/3
|
||||||
|
f 2/10/4 4/18/4 6/11/4
|
||||||
|
f 8/13/5 7/5/5 4/14/5
|
||||||
|
o Barrel
|
||||||
v 0.375000 1.000000 0.375000
|
v 0.375000 1.000000 0.375000
|
||||||
v 0.375000 0.000000 -0.375000
|
v 0.375000 0.000000 0.375000
|
||||||
|
v 0.375000 -0.000000 -0.375000
|
||||||
|
v -0.375000 1.000000 0.375000
|
||||||
|
v -0.375000 0.000000 0.375000
|
||||||
|
v -0.375000 1.000000 -0.375000
|
||||||
|
v -0.375000 -0.000000 -0.375000
|
||||||
v 0.375000 1.000000 -0.375000
|
v 0.375000 1.000000 -0.375000
|
||||||
vt 0.000000 0.750000
|
vt 0.000000 0.750000
|
||||||
vt 0.000000 0.416667
|
vt 0.000000 0.416667
|
||||||
@ -18,26 +63,32 @@ vt 1.000000 0.416667
|
|||||||
vt 0.500000 0.750000
|
vt 0.500000 0.750000
|
||||||
vt 0.500000 0.416667
|
vt 0.500000 0.416667
|
||||||
vt 0.250000 0.750000
|
vt 0.250000 0.750000
|
||||||
|
vt 0.750000 0.750000
|
||||||
vt 0.750000 1.000000
|
vt 0.750000 1.000000
|
||||||
vt 0.500000 1.000000
|
vt 0.500000 1.000000
|
||||||
|
vt 0.500000 0.750000
|
||||||
|
vt 0.500000 1.000000
|
||||||
vt 0.250000 1.000000
|
vt 0.250000 1.000000
|
||||||
vt 1.000000 0.750000
|
vt 1.000000 0.750000
|
||||||
vn -1.000000 0.000000 0.000000
|
vt 0.500000 0.750000
|
||||||
vn 0.000000 0.000000 -1.000000
|
vt 0.250000 0.750000
|
||||||
vn 1.000000 0.000000 0.000000
|
vn 1.0000 0.0000 0.0000
|
||||||
vn 0.000000 0.000000 1.000000
|
vn 0.0000 0.0000 1.0000
|
||||||
vn 0.000000 -1.000000 0.000000
|
vn -1.0000 0.0000 0.0000
|
||||||
vn 0.000000 1.000000 0.000000
|
vn 0.0000 -0.0000 -1.0000
|
||||||
s off
|
vn 0.0000 -1.0000 0.0000
|
||||||
f 4/1/1 3/2/1 1/3/1
|
vn 0.0000 1.0000 -0.0000
|
||||||
f 8/4/2 7/5/2 3/6/2
|
usemtl Default_OBJ
|
||||||
f 6/7/3 5/8/3 7/5/3
|
s 1
|
||||||
f 2/9/4 1/3/4 5/8/4
|
f 9/19/6 10/20/6 11/21/6
|
||||||
f 3/4/5 7/10/5 5/11/5
|
f 12/22/7 13/23/7 10/24/7
|
||||||
f 8/7/6 4/11/6 2/12/6
|
f 14/25/8 15/26/8 13/23/8
|
||||||
f 2/9/1 4/1/1 1/3/1
|
f 16/27/9 11/21/9 15/26/9
|
||||||
f 4/13/2 8/4/2 3/6/2
|
f 10/28/10 13/29/10 15/30/10
|
||||||
f 8/4/3 6/7/3 7/5/3
|
f 12/31/11 9/32/11 16/33/11
|
||||||
f 6/7/4 2/9/4 5/8/4
|
f 16/27/6 9/19/6 11/21/6
|
||||||
f 1/7/5 3/4/5 5/11/5
|
f 9/34/7 12/22/7 10/24/7
|
||||||
f 6/9/6 8/7/6 2/12/6
|
f 12/22/8 14/25/8 13/23/8
|
||||||
|
f 14/25/9 16/27/9 15/26/9
|
||||||
|
f 11/35/10 10/28/10 15/30/10
|
||||||
|
f 14/36/11 12/31/11 16/33/11
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 966 B After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 926 B After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 877 B After Width: | Height: | Size: 1.1 KiB |