see, you just gotta put your whole pussy into it

This commit is contained in:
Bob 2025-11-15 17:19:34 +01:00
parent 8ffbb512c1
commit de40ff388a
7 changed files with 2923 additions and 2634 deletions

View File

@ -1,6 +1,7 @@
package com.hbm.blocks.machine.fusion;
import com.hbm.blocks.BlockDummyable;
import com.hbm.handler.MultiblockHandlerXR;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.machine.fusion.TileEntityFusionKlystron;
@ -24,7 +25,7 @@ public class MachineFusionKlystron extends BlockDummyable {
@Override
public int[] getDimensions() {
return new int[] { 4, 0, 4, 3, 2, 2 };
return new int[] { 3, 0, 4, 3, 2, 2 };
}
@Override
@ -34,11 +35,14 @@ public class MachineFusionKlystron extends BlockDummyable {
@Override
public boolean checkRequirement(World world, int x, int y, int z, ForgeDirection dir, int o) {
return super.checkRequirement(world, x, y, z, dir, o);
return super.checkRequirement(world, x, y, z, dir, o) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o, y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {4, -3, 4, 3, 1, 1}, x, y, z, dir);
}
@Override
public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
super.fillSpace(world, x, y, z, dir, o);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o, y, z + dir.offsetZ * o, new int[] {4, -3, 4, 3, 1, 1}, this, dir);
}
}

View File

@ -1,6 +1,7 @@
package com.hbm.blocks.machine.fusion;
import com.hbm.blocks.BlockDummyable;
import com.hbm.handler.MultiblockHandlerXR;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.machine.fusion.TileEntityFusionMHDT;
@ -24,7 +25,7 @@ public class MachineFusionMHDT extends BlockDummyable {
@Override
public int[] getDimensions() {
return new int[] { 3, 0, 6, 7, 1, 1 };
return new int[] { 2, 0, 6, 7, 2, 2 };
}
@Override
@ -34,11 +35,22 @@ public class MachineFusionMHDT extends BlockDummyable {
@Override
public boolean checkRequirement(World world, int x, int y, int z, ForgeDirection dir, int o) {
return super.checkRequirement(world, x, y, z, dir, o);
return super.checkRequirement(world, x, y, z, dir, o) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o, y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {3, -2, 6, 2, 1, 1}, x, y, z, dir) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o, y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {3, -2, -6, 7, 1, 1}, x, y, z, dir) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o, y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {3, -2, -3, 5, 2, 2}, x, y, z, dir) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o, y + dir.offsetY * o, z + dir.offsetZ * o, new int[] {4, -3, -3, 5, 1, 1}, x, y, z, dir) &&
MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * (o + 3), y, z + dir.offsetZ * (o + 3), new int[] {1, 0, 0, 1, 3, 3}, x, y, z, dir);
}
@Override
public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
super.fillSpace(world, x, y, z, dir, o);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o, y, z + dir.offsetZ * o, new int[] {3, -2, 6, 2, 1, 1}, this, dir);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o, y, z + dir.offsetZ * o, new int[] {3, -2, -6, 7, 1, 1}, this, dir);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o, y, z + dir.offsetZ * o, new int[] {3, -2, -3, 5, 2, 2}, this, dir);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o, y, z + dir.offsetZ * o, new int[] {4, -3, -3, 5, 1, 1}, this, dir);
MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * (o + 3), y, z + dir.offsetZ * (o + 3), new int[] {1, 0, 0, 1, 3, 3}, this, dir);
}
}

View File

@ -30,7 +30,17 @@ public class RenderFusionMHDT extends TileEntitySpecialRenderer implements IItem
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.fusion_mhdt_tex);
ResourceManager.fusion_mhdt.renderAll();
ResourceManager.fusion_mhdt.renderPart("Turbine");
GL11.glPushMatrix();
double rot = (System.currentTimeMillis() / 10) % 30D;
rot -= 15;
GL11.glTranslated(0, 1.5, 0);
GL11.glRotated(rot, 1, 0, 0);
GL11.glTranslated(0, -1.5, 0);
ResourceManager.fusion_mhdt.renderPart("Coils");
GL11.glPopMatrix();
GL11.glShadeModel(GL11.GL_FLAT);
GL11.glPopMatrix();
@ -53,7 +63,13 @@ public class RenderFusionMHDT extends TileEntitySpecialRenderer implements IItem
GL11.glRotatef(90, 0F, 1F, 0F);
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.fusion_mhdt_tex);
ResourceManager.fusion_mhdt.renderAll();
ResourceManager.fusion_mhdt.renderPart("Turbine");
double rot = (System.currentTimeMillis() / 10) % 30D;
rot -= 15;
GL11.glTranslated(0, 1.5, 0);
GL11.glRotated(rot, 1, 0, 0);
GL11.glTranslated(0, -1.5, 0);
ResourceManager.fusion_mhdt.renderPart("Coils");
GL11.glShadeModel(GL11.GL_FLAT);
}};
}

View File

@ -22,7 +22,19 @@ public class RenderFusionTorus extends TileEntitySpecialRenderer implements IIte
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.fusion_torus_tex);
ResourceManager.fusion_torus.renderAll();
ResourceManager.fusion_torus.renderPart("Torus");
GL11.glPushMatrix();
double rot = (tile.getWorldObj().getTotalWorldTime() % 360) + interp;
GL11.glRotated(rot * 10, 0, 1, 0);
ResourceManager.fusion_torus.renderPart("Magnet");
GL11.glPopMatrix();
ResourceManager.fusion_torus.renderPart("Bolts1");
ResourceManager.fusion_torus.renderPart("Bolts2");
ResourceManager.fusion_torus.renderPart("Bolts3");
ResourceManager.fusion_torus.renderPart("Bolts4");
GL11.glShadeModel(GL11.GL_FLAT);
GL11.glPopMatrix();
@ -44,7 +56,12 @@ public class RenderFusionTorus extends TileEntitySpecialRenderer implements IIte
GL11.glRotatef(90, 0F, 1F, 0F);
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.fusion_torus_tex);
ResourceManager.fusion_torus.renderAll();
ResourceManager.fusion_torus.renderPart("Torus");
GL11.glPushMatrix();
double rot = (System.currentTimeMillis() / 5 % 360);
GL11.glRotated(rot, 0, 1, 0);
ResourceManager.fusion_torus.renderPart("Magnet");
GL11.glPopMatrix();
GL11.glShadeModel(GL11.GL_FLAT);
}};
}

View File

@ -14,12 +14,12 @@ public class TileEntityFusionMHDT extends TileEntity {
if(bb == null) {
bb = AxisAlignedBB.getBoundingBox(
xCoord - 4,
xCoord - 7,
yCoord,
zCoord - 4,
xCoord + 5,
zCoord - 7,
xCoord + 8,
yCoord + 4,
zCoord + 5
zCoord + 8
);
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 22 KiB