mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-08-10 17:55:44 +00:00
the Q in NTM stands for QoL
This commit is contained in:
parent
07eff2a32a
commit
653e428462
@ -7,6 +7,11 @@
|
||||
* The ZIRNOX now outputs its heat and pressure
|
||||
* The CCGT can output the turbine setting in percent, the turbine's RPM and the produced energy
|
||||
* The fusion reactor plasma vessel can output its output plasma energy and fuel consumption in percent
|
||||
* Cast plate foundry molds now have a triple variant
|
||||
* Zombies now have a chance to drop copper, aluminium and titanium ingots (1:200 each)
|
||||
* The burner press now has nine additional storage slots for things like stamps and reserve fuel
|
||||
|
||||
## Fixed
|
||||
* Fixed euphemium compound plate recipe not yielding four items as it should in the plasma forge
|
||||
* Fixed euphemium compound plate recipe not yielding four items as it should in the plasma forge
|
||||
* Fixed NTM rare item drops ignoring the mob loot gamerule
|
||||
* Fixed flamethrowers not properly igniting entities on direct hit, only via lingering fire
|
||||
@ -26,15 +26,19 @@ public class ContainerMachinePress extends Container {
|
||||
this.addSlotToContainer(new Slot(tedf, 2, 80, 53));
|
||||
// Output
|
||||
this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tedf, 3, 140, 35));
|
||||
// Extra Storage
|
||||
for(int i = 0; i < 9; i++) {
|
||||
this.addSlotToContainer(new Slot(tedf, 4 + i, 8 + i * 18, 84));
|
||||
}
|
||||
|
||||
for(int i = 0; i < 3; i++) {
|
||||
for(int j = 0; j < 9; j++) {
|
||||
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
|
||||
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 120 + i * 18));
|
||||
}
|
||||
}
|
||||
|
||||
for(int i = 0; i < 9; i++) {
|
||||
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142));
|
||||
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 178));
|
||||
}
|
||||
}
|
||||
|
||||
@ -47,23 +51,29 @@ public class ContainerMachinePress extends Container {
|
||||
ItemStack var5 = var4.getStack();
|
||||
var3 = var5.copy();
|
||||
|
||||
if(par2 <= 3) {
|
||||
if(!this.mergeItemStack(var5, 4, this.inventorySlots.size(), true)) {
|
||||
if(par2 <= 12) {
|
||||
if(!this.mergeItemStack(var5, 13, this.inventorySlots.size(), true)) {
|
||||
return null;
|
||||
}
|
||||
} else {
|
||||
|
||||
if(TileEntityFurnace.isItemFuel(var3)) {
|
||||
if(!this.mergeItemStack(var5, 0, 1, false)) {
|
||||
return null;
|
||||
if(!this.mergeItemStack(var5, 4, 13, false)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
} else if(var3.getItem() instanceof ItemStamp) {
|
||||
if(!this.mergeItemStack(var5, 1, 2, false)) {
|
||||
return null;
|
||||
if(!this.mergeItemStack(var5, 4, 13, false)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if(!this.mergeItemStack(var5, 2, 3, false)) {
|
||||
return null;
|
||||
if(!this.mergeItemStack(var5, 4, 13, false)) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -22,7 +22,7 @@ public class GUIMachinePress extends GuiInfoContainer {
|
||||
press = tedf;
|
||||
|
||||
this.xSize = 176;
|
||||
this.ySize = 166;
|
||||
this.ySize = 202;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -48,11 +48,11 @@ public class GUIMachinePress extends GuiInfoContainer {
|
||||
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
|
||||
|
||||
if(press.burnTime >= 20) {
|
||||
this.drawTexturedModalRect(guiLeft + 27, guiTop + 36, 176, 0, 14, 14);
|
||||
this.drawTexturedModalRect(guiLeft + 27, guiTop + 36, 0, 202, 14, 14);
|
||||
}
|
||||
|
||||
int k = (int) (press.renderPress * 16 / press.maxPress);
|
||||
this.drawTexturedModalRect(guiLeft + 79, guiTop + 35, 194, 0, 18, k);
|
||||
this.drawTexturedModalRect(guiLeft + 79, guiTop + 35, 14, 202, 18, k);
|
||||
|
||||
double i = (double) press.speed / (double) press.maxSpeed;
|
||||
GaugeUtil.drawSmoothGauge(guiLeft + 34, guiTop + 25, this.zLevel, i, 5, 2, 1, 0x7f0000);
|
||||
|
||||
@ -100,6 +100,7 @@ public class AnvilRecipes extends SerializableRecipe {
|
||||
smithingRecipes.add(new AnvilSmithingMold(2, new OreDictStack(IRON.ingot()), new OreDictStack("ingot")));
|
||||
smithingRecipes.add(new AnvilSmithingMold(3, new OreDictStack(IRON.plate()), new OreDictStack("plate")));
|
||||
smithingRecipes.add(new AnvilSmithingMold(19, new OreDictStack(IRON.plateCast()), new OreDictStack("plateTriple")));
|
||||
smithingRecipes.add(new AnvilSmithingMold(13, new OreDictStack(IRON.plateCast(), 3), new OreDictStack("plateTriple", 3)));
|
||||
smithingRecipes.add(new AnvilSmithingMold(4, new OreDictStack(CU.wireFine()), new OreDictStack("wireFine")));
|
||||
smithingRecipes.add(new AnvilSmithingMold(5, new ComparableStack(ModItems.blade_titanium), new ItemStack[] {
|
||||
new ItemStack(ModItems.blade_titanium),
|
||||
|
||||
@ -73,9 +73,9 @@ public class ItemMold extends Item {
|
||||
|
||||
registerMold(new MoldShape( 10, L, "ingots", MaterialShapes.INGOT, 9));
|
||||
registerMold(new MoldShape( 11, L, "plates", MaterialShapes.PLATE, 9));
|
||||
registerMold(new MoldShape( 13, L, "plates_cast", MaterialShapes.CASTPLATE, 3));
|
||||
registerMold(new MoldShape( 21, L, "wires_dense", MaterialShapes.DENSEWIRE, 9));
|
||||
registerMold(new MoldBlock( 12, L, "block", MaterialShapes.BLOCK));
|
||||
//registerMold(new MoldSingle( 13, L, "pipes", new ItemStack(ModItems.pipes_steel), Mats.MAT_STEEL, MaterialShapes.BLOCK.q(3)));
|
||||
|
||||
registerMold(new MoldMulti( 16, S, "c9", MaterialShapes.PLATE.q(1, 4),
|
||||
Mats.MAT_GUNMETAL, DictFrame.fromOne(ModItems.casing, EnumCasingType.SMALL),
|
||||
|
||||
@ -113,13 +113,13 @@ public class XFactoryFlamer {
|
||||
|
||||
public static void init() {
|
||||
flame_diesel = new BulletConfig().setItem(EnumAmmo.FLAME_DIESEL).setCasing(new ItemStack(ModItems.plate_steel, 2), 500).setupDamageClass(DamageClass.FIRE).setLife(100).setVel(1F).setGrav(0.02D).setReloadCount(500).setSelfDamageDelay(20).setKnockback(0F)
|
||||
.setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_DIESEL);
|
||||
.setOnImpact(LAMBDA_IGNITE_FIRE).setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_DIESEL);
|
||||
flame_gas = new BulletConfig().setItem(EnumAmmo.FLAME_GAS).setCasing(new ItemStack(ModItems.plate_steel, 2), 500).setupDamageClass(DamageClass.FIRE).setLife(10).setSpread(0.05F).setVel(1F).setGrav(0.0D).setReloadCount(500).setSelfDamageDelay(20).setKnockback(0F)
|
||||
.setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_GAS);
|
||||
.setOnImpact(LAMBDA_IGNITE_FIRE).setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_GAS);
|
||||
flame_napalm = new BulletConfig().setItem(EnumAmmo.FLAME_NAPALM).setCasing(new ItemStack(ModItems.plate_steel, 2), 500).setupDamageClass(DamageClass.FIRE).setLife(200).setVel(1F).setGrav(0.02D).setReloadCount(500).setSelfDamageDelay(20).setKnockback(0F)
|
||||
.setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_NAPALM);
|
||||
.setOnImpact(LAMBDA_IGNITE_FIRE).setOnUpdate(LAMBDA_FIRE).setOnRicochet(LAMBDA_LINGER_NAPALM);
|
||||
flame_balefire = new BulletConfig().setItem(EnumAmmo.FLAME_BALEFIRE).setCasing(new ItemStack(ModItems.plate_steel, 2), 500).setupDamageClass(DamageClass.FIRE).setLife(200).setVel(1F).setGrav(0.02D).setReloadCount(500).setSelfDamageDelay(20).setKnockback(0F)
|
||||
.setOnUpdate(LAMBDA_BALEFIRE).setOnRicochet(LAMBDA_LINGER_BALEFIRE);
|
||||
.setOnImpact(LAMBDA_IGNITE_BALEFIRE).setOnUpdate(LAMBDA_BALEFIRE).setOnRicochet(LAMBDA_LINGER_BALEFIRE);
|
||||
|
||||
flame_nograv = flame_diesel.clone().setGrav(0);
|
||||
flame_nograv_bf = flame_balefire.clone().setGrav(0).setLife(100);
|
||||
|
||||
@ -311,32 +311,40 @@ public class ModEventHandler {
|
||||
}
|
||||
}
|
||||
|
||||
if(!event.entityLiving.worldObj.isRemote) {
|
||||
if(!event.entityLiving.worldObj.isRemote && event.entityLiving.worldObj.getGameRules().getGameRuleBooleanValue("doMobLoot")) {
|
||||
|
||||
if(event.source instanceof EntityDamageSource && ((EntityDamageSource)event.source).getEntity() instanceof EntityPlayer
|
||||
&& !(((EntityDamageSource)event.source).getEntity() instanceof FakePlayer)) {
|
||||
|
||||
if(event.entityLiving instanceof EntitySpider && event.entityLiving.getRNG().nextInt(500) == 0) {
|
||||
Random rng = event.entityLiving.getRNG();
|
||||
|
||||
if(event.entityLiving instanceof EntitySpider && rng.nextInt(500) == 0) {
|
||||
event.entityLiving.dropItem(ModItems.spider_milk, 1);
|
||||
}
|
||||
|
||||
if(event.entityLiving instanceof EntityCaveSpider && event.entityLiving.getRNG().nextInt(100) == 0) {
|
||||
if(event.entityLiving instanceof EntityCaveSpider && rng.nextInt(100) == 0) {
|
||||
event.entityLiving.dropItem(ModItems.serum, 1);
|
||||
}
|
||||
|
||||
if(event.entityLiving instanceof EntityAnimal && event.entityLiving.getRNG().nextInt(500) == 0) {
|
||||
if(event.entityLiving instanceof EntityAnimal && rng.nextInt(500) == 0) {
|
||||
event.entityLiving.dropItem(ModItems.bandaid, 1);
|
||||
}
|
||||
|
||||
if(event.entityLiving instanceof IMob) {
|
||||
if(event.entityLiving.getRNG().nextInt(1000) == 0) event.entityLiving.dropItem(ModItems.heart_piece, 1);
|
||||
if(event.entityLiving.getRNG().nextInt(250) == 0) event.entityLiving.dropItem(ModItems.key_red_cracked, 1);
|
||||
if(event.entityLiving.getRNG().nextInt(250) == 0) event.entityLiving.dropItem(ModItems.launch_code_piece, 1);
|
||||
if(rng.nextInt(1000) == 0) event.entityLiving.dropItem(ModItems.heart_piece, 1);
|
||||
if(rng.nextInt(250) == 0) event.entityLiving.dropItem(ModItems.key_red_cracked, 1);
|
||||
if(rng.nextInt(250) == 0) event.entityLiving.dropItem(ModItems.launch_code_piece, 1);
|
||||
}
|
||||
|
||||
if(event.entityLiving instanceof EntityCyberCrab && event.entityLiving.getRNG().nextInt(500) == 0) {
|
||||
if(event.entityLiving instanceof EntityCyberCrab && rng.nextInt(500) == 0) {
|
||||
event.entityLiving.dropItem(ModItems.wd40, 1);
|
||||
}
|
||||
|
||||
if(event.entityLiving instanceof EntityZombie) {
|
||||
if(rng.nextInt(200) == 0) event.entityLiving.dropItem(ModItems.ingot_copper, 1);
|
||||
if(rng.nextInt(200) == 0) event.entityLiving.dropItem(ModItems.ingot_aluminium, 1);
|
||||
if(rng.nextInt(200) == 0) event.entityLiving.dropItem(ModItems.ingot_titanium, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -40,7 +40,7 @@ public class TileEntityMachinePress extends TileEntityMachineBase implements IGU
|
||||
public ItemStack syncStack;
|
||||
|
||||
public TileEntityMachinePress() {
|
||||
super(4);
|
||||
super(13);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -237,10 +237,7 @@ public class TileEntityMachinePress extends TileEntityMachineBase implements IGU
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getRenderBoundingBox() {
|
||||
|
||||
if(aabb != null)
|
||||
return aabb;
|
||||
|
||||
if(aabb != null) return aabb;
|
||||
aabb = AxisAlignedBB.getBoundingBox(xCoord, yCoord, zCoord, xCoord + 1, yCoord + 3, zCoord + 1);
|
||||
return aabb;
|
||||
}
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 436 B |
Loading…
x
Reference in New Issue
Block a user