@SubscribeEvent public void onCommandEvent(CommandEvent event) { if ((event.getSender() instanceof EntityPlayerMP)) { if (((EntityPlayerMP) event.getSender()).world.isRemote) return; String[] split = new String[event.getParameters().length + 1]; System.arraycopy(event.getParameters(), 0, split, 1, event.getParameters().length); split[0] = event.getCommand().getName(); com.sk89q.worldedit.event.platform.CommandEvent weEvent = new com.sk89q.worldedit.event.platform.CommandEvent(wrap((EntityPlayerMP) event.getSender()), Joiner.on(" ").join(split)); WorldEdit.getInstance().getEventBus().post(weEvent); } }
@Override public void customExplosion(World world, Explosion explosion) { net.minecraftforge.event.ForgeEventFactory.onExplosionStart(world, explosion); explosion.doExplosionA(); explosion.doExplosionB(true); }
@SubscribeEvent public void missingBlockMappings(RegistryEvent.MissingMappings<Block> event) { for(RegistryEvent.MissingMappings.Mapping<Block> entry : event.getAllMappings()) { // wooder hopper, moved from skyblock to tic if(entry.key.getResourceDomain().equals(TINKERS_SKYBLOCK_MODID) && entry.key.getResourcePath().equals(WOODEN_HOPPER)) { entry.remap(TinkerGadgets.woodenHopper); } } } }
@SubscribeEvent public static void registerSoundEvent(RegistryEvent.Register<SoundEvent> event) { IForgeRegistry<SoundEvent> registry = event.getRegistry(); sounds.forEach(registry::register); } }
@SubscribeEvent public void attachCapability(AttachCapabilitiesEvent<Entity> event) { if(event.getObject() instanceof EntityPlayer) { event.addCapability(Util.getResource("piggyback"), new TinkerPiggybackSerializer((EntityPlayer) event.getObject())); } }
@SubscribeEvent public void missingItemMappings(RegistryEvent.MissingMappings<Item> event) { for(RegistryEvent.MissingMappings.Mapping<Item> entry : event.getAllMappings()) { @Nonnull String path = entry.key.toString(); if(path.equals(Util.resource("bucket")) || path.equals(Util.resource("glow")) || path.equals(Util.resource("blood")) || path.equals(Util.resource("milk")) || path.equals(Util.resource("purpleslime")) || path.equals(Util.resource("blueslime")) || path.contains(Util.resource("molten"))) { entry.ignore(); } // wooder hopper, moved from skyblock to tic if(entry.key.getResourceDomain().equals(TINKERS_SKYBLOCK_MODID) && entry.key.getResourcePath().equals(WOODEN_HOPPER)) { entry.remap(Item.getItemFromBlock(TinkerGadgets.woodenHopper)); } } }
private void explodeBlock(BlockPos pos) { IBlockState state = world.getBlockState(pos); Block block = state.getBlock(); if(!world.isRemote && block.canDropFromExplosion(explosion)) { List<ItemStack> drops = block.getDrops(world, pos, state, 0); ForgeEventFactory.fireBlockHarvesting(drops, world, pos, state, 0, 1f, false, null); droppedItems.addAll(drops); } if(world instanceof WorldServer) { ((WorldServer) world).spawnParticle(EnumParticleTypes.EXPLOSION_NORMAL, true, pos.getX(), pos.getY(), pos.getZ(), 2, 0, 0, 0, 0d); ((WorldServer) world).spawnParticle(EnumParticleTypes.SMOKE_LARGE, true, pos.getX(), pos.getY(), pos.getZ(), 1, 0, 0, 0, 0d); } block.onBlockExploded(world, pos, explosion); } }
@SubscribeEvent public static void registerPotions(RegistryEvent.Register<Potion> evt) { evt.getRegistry().register(soulCross); evt.getRegistry().register(featherfeet); evt.getRegistry().register(emptiness); evt.getRegistry().register(bloodthrst); evt.getRegistry().register(allure); evt.getRegistry().register(clear); } }
@SubscribeEvent public void attachSpatialDimensionManager( AttachCapabilitiesEvent<World> event ) { if( AEConfig.instance() .isFeatureEnabled( AEFeature.SPATIAL_IO ) && event.getObject() == DimensionManager.getWorld( AEConfig.instance().getStorageDimensionID() ) ) { event.addCapability( new ResourceLocation( "appliedenergistics2:spatial_dimension_manager" ), new SpatialDimensionManager( event.getObject() ) ); } }
public void customExplosion(World world, Explosion explosion) { // server side if(net.minecraftforge.event.ForgeEventFactory.onExplosionStart(world, explosion)) { return; } explosion.doExplosionA(); explosion.doExplosionB(false); if(!explosion.damagesTerrain) { explosion.clearAffectedBlockPositions(); } // todo: send custom explosion packet to clients // Send packets so player are moved around /* for (EntityPlayer entityplayer : world.playerEntities) { //if (entityplayer.getDistanceSq(x, y, z) < 4096.0D) { Vec3d vec = explosion.getPosition(); ((EntityPlayerMP)entityplayer).playerNetServerHandler.sendPacket(new SPacketExplosion(vec.xCoord, vec.yCoord, vec.zCoord, 1, explosion.getAffectedBlockPositions(), (Vec3d)explosion.getPlayerKnockbackMap().get(entityplayer))); } }*/ }
public void registerItems(Register<Item> event) { IForgeRegistry<Item> registry = event.getRegistry(); registerToolParts(registry); registerTools(registry); }
protected void explode(float strength) { if(!getEntityWorld().isRemote) { ExplosionEFLN explosion = new ExplosionEFLN(getEntityWorld(), this, posX, posY, posZ, strength, false, false); if(!ForgeEventFactory.onExplosionStart(world, explosion)) { Exploder.startExplosion(getEntityWorld(), explosion, this, new BlockPos(posX, posY, posZ), strength, strength); } } }
@SubscribeEvent public void registerBiomes( RegistryEvent.Register<Biome> event ) { final IForgeRegistry<Biome> registry = event.getRegistry(); this.registerSpatialBiome( registry ); }
@SubscribeEvent public void registerPotions(Register<Potion> event) { IForgeRegistry<Potion> registry = event.getRegistry(); registry.register(CarryPotionEffect.INSTANCE); }
@SubscribeEvent public void registerPotions(Register<Potion> event) { IForgeRegistry<Potion> registry = event.getRegistry(); registry.registerAll(TraitEnderference.Enderference, TraitInsatiable.Insatiable, TraitMagnetic.Magnetic, TraitMomentum.Momentum, TraitSharp.DOT, TraitSplintering.Splinter); }
@SubscribeEvent public void registerBlocks(Register<Block> event) { // we always register blocks for all integrated fluids to prevent issues with missing blocks IForgeRegistry<Block> registry = event.getRegistry(); for(MaterialIntegration integration : TinkerRegistry.getMaterialIntegrations()) { integration.registerFluidBlock(registry); } }
@SubscribeEvent public void registerRecipes(Register<IRecipe> event) { IForgeRegistry<IRecipe> registry = event.getRegistry(); registry.register(new RepairRecipe()); }
@SubscribeEvent public void registerRecipes(Register<IRecipe> event) { IForgeRegistry<IRecipe> registry = event.getRegistry(); // add the tool forge recipes from all integrations if(isToolsLoaded()) { for(MaterialIntegration integration : TinkerRegistry.getMaterialIntegrations()) { integration.registerToolForgeRecipe(registry); } } }
@SubscribeEvent public void registerBlocks(Register<Block> event) { IForgeRegistry<Block> registry = event.getRegistry(); // register blocks toolTables = registerBlock(registry, new BlockToolTable(), "tooltables"); toolForge = registerBlock(registry, new BlockToolForge(), "toolforge"); registerTE(TileTable.class, "table"); registerTE(TileCraftingStation.class, "craftingstation"); registerTE(TileStencilTable.class, "stenciltable"); registerTE(TilePartBuilder.class, "partbuilder"); registerTE(TilePatternChest.class, "patternchest"); registerTE(TilePartChest.class, "partchest"); registerTE(TileToolStation.class, "toolstation"); registerTE(TileToolForge.class, "toolforge"); }