use of club.nsdn.nyasamarailway.entity.TrainBase in project NyaSamaRailway by NSDN.
the class ItemTrainBase method onItemUse.
@Override
public boolean onItemUse(ItemStack itemStack, EntityPlayer player, World world, int x, int y, int z, int side, float px, float py, float pz) {
if (BlockRailBase.func_150051_a(world.getBlock(x, y, z))) {
if (!world.isRemote) {
TrainBase trainBody = new TrainBase(world, (double) x + 0.5, (double) y + 0.5, (double) z + 0.5);
MinecartBase bogieF = new NSBT1(world, (double) x + 0.5, (double) y + 0.5, (double) z + 0.5);
MinecartBase bogieB = new NSBT1(world, (double) x + 0.5, (double) y + 0.5, (double) z + 0.5);
if (itemStack.hasDisplayName()) {
trainBody.setMinecartName(itemStack.getDisplayName());
}
trainBody.addBogie(0, bogieF.getEntityId(), 2.0);
trainBody.addBogie(1, bogieB.getEntityId(), -2.0);
world.spawnEntityInWorld(trainBody);
if (getRailDirection(world, x, y, z) == RailDirection.WE) {
bogieF.posX += 2.0;
bogieB.posX -= 2.0;
} else if (getRailDirection(world, x, y, z) == RailDirection.NS) {
bogieF.posZ += 2.0;
bogieB.posZ -= 2.0;
}
world.spawnEntityInWorld(bogieF);
world.spawnEntityInWorld(bogieB);
}
--itemStack.stackSize;
return true;
} else {
return false;
}
}
Aggregations