Fixed #22, disabled entity fall damage with jetpack

Fixed:
* #22
* Entity has no longer get fall damage with jetpack
* Made finally EntityJump invisible
This commit is contained in:
Cr0s 2014-03-15 19:31:51 +04:00
parent 2285a5d75c
commit 4c006a8f2a
4 changed files with 46 additions and 3 deletions

1
.gitignore vendored
View file

@ -161,3 +161,4 @@ pip-log.txt
# Mac crap
.DS_Store
src/cr0s/WarpDrive/client/ClientProxy.java

View file

@ -1213,4 +1213,10 @@ public class EntityJump extends Entity
e.printStackTrace();
}
}
@Override
public boolean shouldRenderInPass(int pass)
{
return false;
}
}

View file

@ -1,17 +1,21 @@
package cr0s.WarpDrive;
import ic2.api.item.Items;
import java.util.HashMap;
import java.util.List;
import cr0s.WarpDrive.CloakManager.CloakedArea;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraft.util.MathHelper;
import net.minecraftforge.common.DimensionManager;
import net.minecraftforge.event.ForgeSubscribe;
import net.minecraftforge.event.entity.living.LivingFallEvent;
import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent;
/**
@ -193,4 +197,26 @@ public class SpaceEventHandler
}
return false;
}
@ForgeSubscribe
public void livingFall(LivingFallEvent event)
{
EntityLivingBase entity = event.entityLiving;
float distance = event.distance;
if (entity instanceof EntityPlayer)
{
EntityPlayer player = (EntityPlayer) entity;
int check = MathHelper.ceiling_float_int(distance - 3.0F);
if (check > 0)
{
if ((player.getCurrentArmor(0) != null && player.getCurrentArmor(0).itemID == Items.getItem("quantumBoots").itemID) ||
(player.getCurrentArmor(2) != null && WarpDriveConfig.i.Jetpacks.contains(player.getCurrentArmor(2).itemID)))
{
event.setCanceled(true); // Don't damage player
}
}
}
}
}

View file

@ -303,9 +303,19 @@ public class WarpDriveConfig
Jetpacks.add(Items.getItem("jetpack").itemID);
Jetpacks.add(Items.getItem("electricJetpack").itemID);
IC2_Air = new int[] {Items.getItem("airCell").itemID, Items.getItem("airCell").getItemDamage()};
CommonWorldGenOres.add(new int[] {Items.getItem("uraniumOre").itemID, Items.getItem("uraniumOre").getItemDamage()});
CommonWorldGenOres.add(new int[] {Items.getItem("copperOre").itemID, Items.getItem("copperOre").getItemDamage()});
CommonWorldGenOres.add(new int[] {Items.getItem("tinOre").itemID, Items.getItem("tinOre").getItemDamage()});
if (Items.getItem("uraniumOre") != null) {
CommonWorldGenOres.add(new int[] {Items.getItem("uraniumOre").itemID, Items.getItem("uraniumOre").getItemDamage()});
}
if (Items.getItem("copperOre") != null) {
CommonWorldGenOres.add(new int[] {Items.getItem("copperOre").itemID, Items.getItem("copperOre").getItemDamage()});
}
if (Items.getItem("tinOre") != null) {
CommonWorldGenOres.add(new int[] {Items.getItem("tinOre").itemID, Items.getItem("tinOre").getItemDamage()});
}
MinerOres.add(Items.getItem("rubberWood").itemID);
AEExtraFDI = Items.getItem("FluidCell").getItem();
}