@EventHandler public void serverAboutToStart(FMLServerAboutToStartEvent event) { if (this.platform != null) { logger.warn("FMLServerStartingEvent occurred when FMLServerStoppingEvent hasn't"); WorldEdit.getInstance().getPlatformManager().unregister(platform); } this.platform = new ForgePlatform(this); WorldEdit.getInstance().getPlatformManager().register(platform); if (Loader.isModLoaded("sponge")) { this.provider = new ForgePermissionsProvider.SpongePermissionsProvider(); } else { this.provider = new ForgePermissionsProvider.VanillaPermissionsProvider(platform); } for (ResourceLocation name : Block.REGISTRY.getKeys()) { String nameStr = name.toString(); if (!BlockType.REGISTRY.keySet().contains(nameStr)) { BlockTypes.register(new BlockType(nameStr)); } } for (ResourceLocation name : Item.REGISTRY.getKeys()) { String nameStr = name.toString(); if (!ItemType.REGISTRY.keySet().contains(nameStr)) { ItemTypes.register(new ItemType(nameStr)); } } }
@Override public List<String> getTabCompletions(final MinecraftServer server, final ICommandSender sender, final String[] args, @Nullable final BlockPos pos) { if (args.length < 3) { return getListOfStringsMatchingLastWord(args, Block.REGISTRY.getKeys()); } return Collections.emptyList(); }
@Override public List<String> getTabCompletionOptions( final MinecraftServer server, final ICommandSender sender, final String[] args, @Nullable final BlockPos pos ) { return args.length > 0 && args.length <= 3 ? getTabCompletionCoordinate( args, 0, pos ) : args.length == 7 ? getListOfStringsMatchingLastWord( args, Block.REGISTRY.getKeys() ) : Collections.<String> emptyList(); } }
public static List<TippedArrowRecipeWrapper> getTippedArrowRecipes() { List<TippedArrowRecipeWrapper> recipes = new ArrayList<>(); for (ResourceLocation potionTypeResourceLocation : PotionType.REGISTRY.getKeys()) { PotionType potionType = PotionType.REGISTRY.getObject(potionTypeResourceLocation); TippedArrowRecipeWrapper recipe = new TippedArrowRecipeWrapper(potionType); recipes.add(recipe); } return recipes; }
public static boolean dumpModObjects(@Nonnull File file) { StringBuilder sb = new StringBuilder(); for (Object key : Block.REGISTRY.getKeys()) { if (key != null) { sb.append(key.toString()); sb.append("\n"); } } for (Object key : Item.REGISTRY.getKeys()) { if (key != null) { sb.append(key.toString()); sb.append("\n"); } } try { Files.write(sb, file, Charsets.UTF_8); return true; } catch (IOException e) { Log.warn("Error dumping ore dictionary entries: " + e.getMessage()); e.printStackTrace(); return false; } }
@Override public void postInit(FMLPostInitializationEvent event) { for(ResourceLocation r : Block.REGISTRY.getKeys()) { Block block = Block.REGISTRY.getObject(r); Item item = Item.getItemFromBlock(block); if(block == null || item == null || !(item instanceof ItemBlock) || blacklist.contains(r.toString())) continue; if(!BlockDispenser.DISPENSE_BEHAVIOR_REGISTRY.containsKey(item)) BlockDispenser.DISPENSE_BEHAVIOR_REGISTRY.putObject(item, new BehaviourBlock((ItemBlock) item, block)); } }
@Override public void executeCommand(MinecraftServer server, ICommandSender sender, String[] arguments) { List<String> args = Arrays.asList(arguments); if(args.contains("dyes")) { CraftTweakerAPI.logCommand("Inspirations Dye Colors:"); for(EnumDyeColor dye : EnumDyeColor.values()) { CraftTweakerAPI.logCommand(dye.getName()); } } else if(args.contains("potions")) { CraftTweakerAPI.logCommand("Inspirations Potion Types:"); // ensure the potion names are sorted for(ResourceLocation potion : new TreeSet<>(PotionType.REGISTRY.getKeys())) { CraftTweakerAPI.logCommand(potion.toString()); } } else { if(sender != null) { sender.sendMessage(new TextComponentString("Invalid arguments for command. Valid arguments: dyes, potions")); } } if(sender != null) { sender.sendMessage(getLinkToCraftTweakerLog("List generated;", sender)); } } });