List of usage examples for org.apache.commons.math3.geometry.euclidean.threed Vector3D Vector3D
public Vector3D(double x, double y, double z)
From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java
@SideOnly(Side.CLIENT) @Override//from ww w .j a v a 2 s. co m public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, net.minecraft.block.Block block, int modelId, RenderBlocks renderer) { Block blockInstance = getBlockInstance(world, new Vector3D(x, y, z)); Optional<StaticRenderer> opRenderer = blockInstance.components.getOp(StaticRenderer.class); if (opRenderer.isPresent()) { BWModel model = new BWModel(); model.matrix = new MatrixStack().translate(x + 0.5, y + 0.5, z + 0.5); opRenderer.get().onRender.accept(model); model.renderWorld(world); return Tessellator.instance.rawBufferIndex != 0; // Returns true if Tesselator is not empty. Avoids crash on empty Tesselator buffer. } return false; }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java
@Override public float getExplosionResistance(Entity expEntity, World world, int x, int y, int z, double explosionX, double p_explosionresistance, double explosionY) { // TODO: Maybe do something withPriority these parameters. return (float) getBlockInstance(world, new Vector3D(x, y, z)).getResistance() * 30; }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWBlock.java
@Override public float getBlockHardness(World world, int x, int y, int z) { return (float) getBlockInstance(world, new Vector3D(x, y, z)).getHardness() * 2; }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.block.forward.FWTile.java
@Override public void validate() { super.validate(); block.components.add(new MCBlockTransform(block, Game.natives().toNova(getWorldObj()), new Vector3D(xCoord, yCoord, zCoord))); if (cacheData != null && block instanceof Storable) { ((Storable) block).load(cacheData); cacheData = null;//from www.j a v a 2 s. c o m } block.events.publish(new Stateful.LoadEvent()); }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.cuboid.CuboidConverter.java
@Override public Cuboid toNova(AxisAlignedBB aabb) { return new Cuboid(new Vector3D(aabb.minX, aabb.minY, aabb.minZ), new Vector3D(aabb.maxX, aabb.maxY, aabb.maxZ)); }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.entity.forward.BWRigidBody.java
@Override public Vector3D getVelocity() { return new Vector3D(mcEntity().motionX, mcEntity().motionY, mcEntity().motionZ); }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.entity.forward.MCEntityTransform.java
@Override public Vector3D position() { return new Vector3D(wrapper.posX, wrapper.posY, wrapper.posZ); }
From source file:nova.core.wrapper.mc.forge.v17.wrapper.item.ItemWrapperMethods.java
default boolean onItemUse(ItemStack itemStack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ) { Item item = Game.natives().toNova(itemStack); Item.UseEvent event = new Item.UseEvent(new BWEntity(player), new Vector3D(x, y, z), Direction.fromOrdinal(side), new Vector3D(hitX, hitY, hitZ)); item.events.publish(event);//from w ww. j ava 2s .c o m ItemConverter.instance().updateMCItemStack(itemStack, item); return event.action; }
From source file:nova.core.wrapper.mc.forge.v18.asm.StaticForwarder.java
public static void chunkSetBlockEvent(Chunk chunk, BlockPos pos, IBlockState oldBlockState, IBlockState newBlockState) {//from ww w . ja va 2s. com // Publish the event Game.events().publish(new BlockEvent.Change(Game.natives().toNova(chunk.getWorld()), new Vector3D((chunk.xPosition << 4) + pos.getX(), pos.getY(), (chunk.zPosition << 4) + pos.getZ()), Game.natives().toNova(oldBlockState.getBlock()), Game.natives().toNova(newBlockState.getBlock()))); }
From source file:nova.core.wrapper.mc.forge.v18.launcher.ForgeEventHandler.java
@SubscribeEvent public void playerInteractEvent(PlayerInteractEvent event) { if (event.world != null && event.pos != null) { nova.core.event.PlayerEvent.Interact evt = new nova.core.event.PlayerEvent.Interact( Game.natives().toNova(event.world), new Vector3D(event.pos.getX(), event.pos.getY(), event.pos.getZ()), Game.natives().toNova(event.entityPlayer), nova.core.event.PlayerEvent.Interact.Action.values()[event.action.ordinal()]); Game.events().publish(evt);//from w w w . jav a 2s . c o m event.useBlock = Event.Result.values()[evt.useBlock.ordinal()]; event.useItem = Event.Result.values()[evt.useItem.ordinal()]; event.setCanceled(evt.isCanceled()); } }