Skip to content

Commit

Permalink
Update 871
Browse files Browse the repository at this point in the history
  • Loading branch information
ReikaKalseki committed Aug 19, 2017
1 parent 346b850 commit e81cef4
Show file tree
Hide file tree
Showing 74 changed files with 1,561 additions and 537 deletions.
2 changes: 1 addition & 1 deletion Auxiliary/HandbookAuxData.java
Expand Up @@ -605,7 +605,7 @@ else if (h == HandbookRegistry.TERRA && subpage == 1) {
api.drawCenteredStringNoShadow(font, String.format("%d", liq.amount), posX+116+16, posY+38+5, 0);
ReikaLiquidRenderer.bindFluidTexture(liq.getFluid());
GL11.glColor4f(1, 1, 1, 1);
IIcon ico = liq.getFluid().getIcon();
IIcon ico = ReikaLiquidRenderer.getFluidIconSafe(liq.getFluid());
api.drawTexturedModelRectFromIcon(posX+116, posY+38, ico, 16, 16);
api.drawTexturedModelRectFromIcon(posX+116+16, posY+38, ico, 16, 16);
//api.drawItemStack(ri, fontRenderer, liq.asItemStack(), posX+116, posY+38);
Expand Down
2 changes: 1 addition & 1 deletion Base/ItemBasic.java
Expand Up @@ -115,7 +115,7 @@ public Class getTextureReferenceClass() {
@Override
public String getTexture(ItemStack is) {
int index = ItemRegistry.getEntry(is).getTextureSheet();
String s = index > 0 ? String.valueOf(index) : "";
String s = index > 0 ? String.valueOf(index+1) : "";
return "/Reika/RotaryCraft/Textures/Items/items"+s+".png";
}

Expand Down
5 changes: 5 additions & 0 deletions Base/TileEntity/TileEntityAimedCannon.java
Expand Up @@ -152,6 +152,7 @@ public void adjustAim(World world, int x, int y, int z, double[] t) {
double dz = z+0.5-t[2];
double[] tg = ReikaPhysicsHelper.cartesianToPolar(dx, dy, dz);
tg[1] = Math.abs(tg[1])-90+0.25;
tg[1] += this.getThetaOffset();
//ReikaJavaLibrary.pConsole("PHI: "+phi+" THETA: "+theta+" for "+tg[2]+", "+tg[1]);
if (tg[2] - phi > 180)
tg[2] -= 360;
Expand All @@ -170,6 +171,10 @@ public void adjustAim(World world, int x, int y, int z, double[] t) {
theta = MAXLOWANGLE;
}

protected double getThetaOffset() {
return 0;
}

protected float getAimingSpeed() {
return 1;
}
Expand Down
128 changes: 128 additions & 0 deletions Base/TileEntity/TileEntityFluidCannon.java
@@ -0,0 +1,128 @@
package Reika.RotaryCraft.Base.TileEntity;

import java.util.Locale;

import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.FluidTankInfo;
import net.minecraftforge.fluids.IFluidHandler;
import Reika.DragonAPI.Instantiable.HybridTank;
import Reika.DragonAPI.Libraries.Java.ReikaStringParser;
import Reika.RotaryCraft.Auxiliary.Interfaces.PipeConnector;
import Reika.RotaryCraft.Base.TileEntity.TileEntityPiping.Flow;
import Reika.RotaryCraft.Registry.MachineRegistry;
import buildcraft.api.transport.IPipeConnection;
import buildcraft.api.transport.IPipeTile.PipeType;


public abstract class TileEntityFluidCannon extends TileEntityAimedCannon implements IFluidHandler, PipeConnector, IPipeConnection {

protected final HybridTank tank = new HybridTank(ReikaStringParser.stripSpaces(this.getTEName().toLowerCase(Locale.ENGLISH)), this.getCapacity());

@Override
public final boolean hasAmmo() {
return !tank.isEmpty();
}

protected int getCapacity() {
return 1000;
}

@Override
public final FluidStack drain(ForgeDirection from, FluidStack resource, boolean doDrain) {
return null;
}

@Override
public final FluidStack drain(ForgeDirection from, int maxDrain, boolean doDrain) {
return null;
}

@Override
public final boolean canDrain(ForgeDirection from, Fluid fluid) {
return false;
}

@Override
public final FluidTankInfo[] getTankInfo(ForgeDirection from) {
return new FluidTankInfo[]{tank.getInfo()};
}

public final int getLevel() {
return tank.getLevel();
}

public final Fluid getContainedFluid() {
return tank.getActualFluid();
}

public final void addLiquid(Fluid f, int amt) {
if (this.isValidFluid(f))
tank.addLiquid(amt, f);
}

@Override
public final boolean canFill(ForgeDirection from, Fluid fluid) {
return this.canReceiveFrom(from) && this.isValidFluid(fluid);
}

public abstract boolean isValidFluid(Fluid f);

@Override
public final int fill(ForgeDirection from, FluidStack resource, boolean doFill) {
if (!this.canFill(from, resource.getFluid()))
return 0;
return tank.fill(resource, doFill);
}

public abstract boolean canReceiveFrom(ForgeDirection from);

@Override
public final boolean canConnectToPipeOnSide(MachineRegistry p, ForgeDirection side) {
return this.canReceiveFrom(side.getOpposite()) && this.canConnectToPipe(p);
}

public final ConnectOverride overridePipeConnection(PipeType type, ForgeDirection side) {
return type == PipeType.FLUID ? (this.canReceiveFrom(side) ? ConnectOverride.CONNECT : ConnectOverride.DISCONNECT) : ConnectOverride.DEFAULT;
}

@Override
public final Flow getFlowForSide(ForgeDirection side) {
return this.canReceiveFrom(side) ? Flow.INPUT : Flow.NONE;
}

@Override
protected void readSyncTag(NBTTagCompound NBT) {
super.readSyncTag(NBT);

tank.readFromNBT(NBT);
}

@Override
protected void writeSyncTag(NBTTagCompound NBT) {
super.writeSyncTag(NBT);

tank.writeToNBT(NBT);
}

public final boolean isEmpty() {
return tank.isEmpty();
}

public final boolean isFull() {
return tank.isFull();
}

@Override
protected final double randomOffset() {
return 0;
}

@Override
public final int getOperationTime() {
return 0;
}

}
3 changes: 3 additions & 0 deletions ClientProxy.java
Expand Up @@ -36,6 +36,7 @@
import Reika.RotaryCraft.Entities.EntityDischarge;
import Reika.RotaryCraft.Entities.EntityExplosiveShell;
import Reika.RotaryCraft.Entities.EntityFlakShot;
import Reika.RotaryCraft.Entities.EntityFlameTurretShot;
import Reika.RotaryCraft.Entities.EntityFreezeGunShot;
import Reika.RotaryCraft.Entities.EntityGatlingShot;
import Reika.RotaryCraft.Entities.EntityIceBlock;
Expand All @@ -44,6 +45,7 @@
import Reika.RotaryCraft.Entities.EntitySonicShot;
import Reika.RotaryCraft.Entities.RenderDischarge;
import Reika.RotaryCraft.Entities.RenderFlakShot;
import Reika.RotaryCraft.Entities.RenderFlameTurretShot;
import Reika.RotaryCraft.Entities.RenderFreezeGunShot;
import Reika.RotaryCraft.Entities.RenderGatlingShot;
import Reika.RotaryCraft.Entities.RenderIceBlock;
Expand Down Expand Up @@ -135,6 +137,7 @@ public void registerRenderers() {
RenderingRegistry.registerEntityRenderingHandler(EntityFreezeGunShot.class, new RenderFreezeGunShot());
RenderingRegistry.registerEntityRenderingHandler(EntityFlakShot.class, new RenderFlakShot());
RenderingRegistry.registerEntityRenderingHandler(EntityGatlingShot.class, new RenderGatlingShot());
RenderingRegistry.registerEntityRenderingHandler(EntityFlameTurretShot.class, new RenderFlameTurretShot());
RenderingRegistry.registerEntityRenderingHandler(EntityIceBlock.class, new RenderIceBlock());
RenderingRegistry.registerEntityRenderingHandler(EntitySonicShot.class, new RenderSonicShot());
RenderingRegistry.registerEntityRenderingHandler(EntityLiquidBlock.class, new RenderLiquidBlock());
Expand Down
3 changes: 2 additions & 1 deletion ConnectedGlassRenderer.java
Expand Up @@ -23,6 +23,7 @@

import Reika.DragonAPI.Interfaces.ISBRH;
import Reika.DragonAPI.Interfaces.Block.ConnectedTextureGlass;
import Reika.DragonAPI.Libraries.IO.ReikaLiquidRenderer;
import Reika.RotaryCraft.Registry.BlockRegistry;
import Reika.RotaryCraft.TileEntities.TileEntityDecoTank;
import Reika.RotaryCraft.TileEntities.TileEntityDecoTank.TankFlags;
Expand Down Expand Up @@ -307,7 +308,7 @@ else if (block == BlockRegistry.DECOTANK.getBlockInstance()) {
v5.setColorOpaque_I(0xffffff);
else
v5.setColorOpaque_I(f.getColor());
IIcon ico = f.getIcon();
IIcon ico = ReikaLiquidRenderer.getFluidIconSafe(f);
float u = ico.getMinU();
float du = ico.getMaxU();
float v = ico.getMinV();
Expand Down
2 changes: 1 addition & 1 deletion Containers/Machine/Inventory/ContainerMultiCannon.java
Expand Up @@ -11,7 +11,7 @@

import net.minecraft.entity.player.EntityPlayer;
import Reika.RotaryCraft.Base.ContainerIOMachine;
import Reika.RotaryCraft.TileEntities.Weaponry.TileEntityMultiCannon;
import Reika.RotaryCraft.TileEntities.Weaponry.Turret.TileEntityMultiCannon;


public class ContainerMultiCannon extends ContainerIOMachine {
Expand Down
3 changes: 2 additions & 1 deletion DecoTankItemRenderer.java
Expand Up @@ -20,6 +20,7 @@
import org.lwjgl.opengl.GL11;

import Reika.DragonAPI.Libraries.ReikaNBTHelper;
import Reika.DragonAPI.Libraries.IO.ReikaLiquidRenderer;
import Reika.RotaryCraft.Registry.BlockRegistry;
import Reika.RotaryCraft.TileEntities.TileEntityDecoTank.TankFlags;

Expand All @@ -45,7 +46,7 @@ public void renderItem(ItemRenderType type, ItemStack item, Object... data) {
if (item.stackTagCompound != null) {
Fluid f = ReikaNBTHelper.getFluidFromNBT(item.stackTagCompound);
if (f != null) {
IIcon ico = f.getStillIcon();
IIcon ico = ReikaLiquidRenderer.getFluidIconSafe(f);
if (f.getLuminosity() == 15 || TankFlags.LIGHTED.apply(item))
GL11.glDisable(GL11.GL_LIGHTING);
float u = ico.getMinU();
Expand Down
2 changes: 1 addition & 1 deletion Entities/EntityExplosiveShell.java
Expand Up @@ -25,7 +25,7 @@
import Reika.RotaryCraft.API.Interfaces.TargetEntity;
import Reika.RotaryCraft.Base.EntityTurretShot;
import Reika.RotaryCraft.Registry.MachineRegistry;
import Reika.RotaryCraft.TileEntities.Weaponry.TileEntityRailGun;
import Reika.RotaryCraft.TileEntities.Weaponry.Turret.TileEntityRailGun;

public class EntityExplosiveShell extends EntityTurretShot {

Expand Down
2 changes: 1 addition & 1 deletion Entities/EntityFlakShot.java
Expand Up @@ -24,7 +24,7 @@
import Reika.RotaryCraft.API.Interfaces.TargetEntity;
import Reika.RotaryCraft.Base.EntityTurretShot;
import Reika.RotaryCraft.Registry.MachineRegistry;
import Reika.RotaryCraft.TileEntities.Weaponry.TileEntityAAGun;
import Reika.RotaryCraft.TileEntities.Weaponry.Turret.TileEntityAAGun;

public class EntityFlakShot extends EntityTurretShot {

Expand Down

0 comments on commit e81cef4

Please sign in to comment.