@Override public IMessage onMessage(PacketKurosawaAttack message, MessageContext ctx) { EntityPlayer player = ctx.getServerHandler().playerEntity; Kurosawa item = (Kurosawa) player.getHeldItem().getItem(); if (!item.getCooldown()) { World world = player.worldObj; EntityLivingBase target = (EntityLivingBase) world.getEntityByID(message.targetID); Vec3 targetPos = target.getPositionVector(); Vec3 attackerPos = player.getPositionVector(); Vec3 distance = targetPos.subtractReverse(attackerPos).normalize(); distance = new Vec3(distance.xCoord * 3, distance.yCoord * 3, distance.zCoord * 3); player.setPositionAndRotation( target.posX - distance.xCoord, target.posY - distance.yCoord, target.posZ - distance.zCoord, player.rotationYaw + 180, player.rotationPitch); player.setRotationYawHead(player.rotationYawHead + 180); player.cameraPitch += 180; player.setPositionAndUpdate( target.posX - distance.xCoord, target.posY - distance.yCoord, target.posZ - distance.zCoord); target.attackEntityFrom(DamageSource.causePlayerDamage(player), 44); item.setCooldown(); } return null; }
public void handlePacket(Packet250CustomPayload packet) throws IOException { DataInputStream dis = new DataInputStream(new ByteArrayInputStream(packet.data)); byte type = dis.readByte(); World world = net.minecraft.client.Minecraft.getMinecraft().theWorld; ISyncHandler handler = null; if (type == TYPE_TILE) { int x = dis.readInt(); int y = dis.readInt(); int z = dis.readInt(); if (world != null) { if (world.blockExists(x, y, z)) { TileEntity tile = world.getBlockTileEntity(x, y, z); if (tile instanceof ISyncHandler) { handler = (ISyncHandler) tile; } } } } else if (type == TYPE_ENTITY) { int entityId = dis.readInt(); Entity entity = world.getEntityByID(entityId); if (entity != null && entity instanceof ISyncHandler) { handler = (ISyncHandler) entity; } } if (handler != null) { List<ISyncableObject> changes = handler.getSyncMap().readFromStream(dis); handler.onSynced(changes); } dis.close(); }
@Override public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { switch (ID) { case NPC: return new GuiNPC((EntityNPC) world.getEntityByID(x), player); case SHOP: return new GuiNPCShop((EntityNPC) world.getEntityByID(x), player); case SHOP_BUILDER: return new GuiNPCBuilderShop((EntityNPC) world.getEntityByID(x), player); case GIFT: return new GuiNPCGift((EntityNPC) world.getEntityByID(x), player); case FRIDGE: return new GuiFridge(player.inventory, HFTrackers.getClientPlayerTracker().getFridge()); default: return null; } }
@Override public MessageUpdateTrackLocation onMessage( MessageUpdateTrackLocation message, MessageContext ctx) { World world = Minecraft.getMinecraft().theWorld; if (world == null) return null; Entity ent = world.getEntityByID(entityID); if (ent == null || !(ent instanceof EntityGenericRollingStock)) return null; EntityGenericRollingStock stock = (EntityGenericRollingStock) ent; stock.recieveMessageUpdateTrackLocation(message.componentID, message.ident, message.progress); return null; }
@Override public IMessage onMessage(StringPacket message, MessageContext ctx) { World world = DimensionManager.getWorld(message.targetPos[0]); if (message.targetType == Syncer.TargetType.Entity) { Entity target = world.getEntityByID(message.targetPos[1]); IStringSyncer is = (IStringSyncer) target; is.setStringData(message.data); } else if (message.targetType == Syncer.TargetType.TileEntity) { TileEntity target = world.getTileEntity( new BlockPos(message.targetPos[1], message.targetPos[2], message.targetPos[3])); IStringSyncer is = (IStringSyncer) target; is.setStringData(message.data); } return null; }
private void handleRocketJumpHackyPacket(ByteBufInputStream dat, World world) { try { int id = dat.readInt(); EntityPlayer player = (EntityPlayer) world.getEntityByID(id); if (player != null) { double motionX = dat.readDouble(); double motionY = dat.readDouble(); double motionZ = dat.readDouble(); Minecraft.getMinecraft().thePlayer.motionX += motionX; Minecraft.getMinecraft().thePlayer.motionY += motionY; Minecraft.getMinecraft().thePlayer.motionZ += motionZ; } } catch (Exception e) { e.printStackTrace(); return; } }
@Override public Object getServerGuiElement(int id, EntityPlayer player, World world, int x, int y, int z) { if (id != -1) { if (id < 0 || id >= OpenBlocks.GUIS.length) { Log.warn("Invalid GUI id: %d", id); return null; } GuiId guiId = OpenBlocks.GUIS[id]; if (guiId == OpenBlocks.GuiId.luggage) return new ContainerLuggage(player.inventory, (EntityLuggage) world.getEntityByID(x)); } else { TileEntity tile = world.getBlockTileEntity(x, y, z); if (tile instanceof IHasGui) { return ((IHasGui) tile).getServerGui(player); } } return null; }
@Override @SideOnly(Side.CLIENT) public IMessage onMessage(StringPacket message, MessageContext ctx) { World world = Minecraft.getMinecraft().theWorld; if (world.provider.getDimension() != message.targetPos[0]) return null; if (message.targetType == Syncer.TargetType.Entity) { Entity target = world.getEntityByID(message.targetPos[1]); IStringSyncer is = (IStringSyncer) target; is.setStringData(message.data); } else if (message.targetType == Syncer.TargetType.TileEntity) { TileEntity target = world.getTileEntity( new BlockPos(message.targetPos[1], message.targetPos[2], message.targetPos[3])); IStringSyncer is = (IStringSyncer) target; is.setStringData(message.data); } return null; }
// returns an instance of the Container @Override public Object getServerGuiElement( int guiID, EntityPlayer player, World world, int x, int y, int z) { if (guiID == ModRedstoneJukebox.redstoneJukeboxGuiID) { TileEntityRedstoneJukebox teJukebox = (TileEntityRedstoneJukebox) world.getBlockTileEntity(x, y, z); return new ContainerRedstoneJukebox(player.inventory, teJukebox); } else if (guiID == ModRedstoneJukebox.recordTradingGuiID) { // OBS: The X value is the EntityID - facepalm courtesy of // http://www.minecraftforge.net/forum/index.php?topic=1671.0 // OBS 2: Not all villagers can trade records, so there is an extra condition. Entity villager = world.getEntityByID(x); if (villager instanceof EntityVillager && CustomRecordHelper.canTradeRecords(x)) { CustomRecordHelper.validateOffers( CustomRecordHelper.getStoreID(x)); // revalidates the offers before opening the GUI return new ContainerRecordTrading(player.inventory, (EntityVillager) villager, world); } } return null; }
public Entity getEntityB(World world) { return world.getEntityByID(idB); }
public Entity getEntityA(World world) { return world.getEntityByID(idA); }
@SideOnly(Side.CLIENT) public EntityPlayer func_149091_a(World p_149091_1_) { return (EntityPlayer) p_149091_1_.getEntityByID(this.field_149097_a); }