<commit_before>package xyz.brassgoggledcoders.steamagerevolution.compat.guideapi;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import com.teamacronymcoders.base.util.OreDictUtils;

import amerifrance.guideapi.api.IPage;
import amerifrance.guideapi.api.impl.abstraction.EntryAbstract;
import amerifrance.guideapi.api.util.PageHelper;
import amerifrance.guideapi.entry.EntryItemStack;
import amerifrance.guideapi.page.PageFurnaceRecipe;
import amerifrance.guideapi.page.PageIRecipe;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.registry.GameRegistry.ObjectHolder;
import xyz.brassgoggledcoders.steamagerevolution.SteamAgeRevolution;
import xyz.brassgoggledcoders.steamagerevolution.utils.TextUtils;

@ObjectHolder(SteamAgeRevolution.MODID)
public class CategoryBasics {

	public static final Item hammer = null;

	public static Map<ResourceLocation, EntryAbstract> buildCategory() {
		Map<ResourceLocation, EntryAbstract> entries = new LinkedHashMap<ResourceLocation, EntryAbstract>();
		String keyBase = "guide." + SteamAgeRevolution.MODID + ".entry.basics.";

		List<IPage> hammerEntry = new ArrayList<IPage>();
		hammerEntry.addAll(PageHelper.pagesForLongText(TextUtils.localize(keyBase + "hammer.info")));
		hammerEntry.add(PageIRecipe.fromJson(new ResourceLocation(SteamAgeRevolution.MODID, "hammer")));
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "hammer_entry"),
				new EntryItemStack(hammerEntry, keyBase + "hammer", new ItemStack(hammer)));

		List<IPage> oreEntry = new ArrayList<IPage>();
		oreEntry.addAll(PageHelper.pagesForLongText(TextUtils.localize(keyBase + "ore.info"),
				OreDictUtils.getPreferredItemStack("oreCopper")));
		// BookUtils.fromJson is edited to handle custom recipe factories
		// oreEntry.add(BookUtils.fromJson(new ResourceLocation(SteamAgeRevolution.MODID, "copper_dust")));
		// TODO Recipe handling
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "ore_entry"),
				new EntryItemStack(oreEntry, keyBase + "ore", OreDictUtils.getPreferredItemStack("oreZinc")));

		List<IPage> alloyEntry = new ArrayList<IPage>();
		alloyEntry.addAll(PageHelper.pagesForLongText(
				TextUtils.localize(keyBase + "alloy.info", OreDictUtils.getPreferredItemStack("blockBrass"))));
		alloyEntry.add(new PageFurnaceRecipe("dustBrass"));
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "alloy_entry"),
				new EntryItemStack(alloyEntry, keyBase + "alloy", OreDictUtils.getPreferredItemStack("ingotBrass")));

		for(EntryAbstract entry : entries.values()) {
			PageHelper.setPagesToUnicode(entry.pageList);
		}
<commit_msg>Add example recipes for hammering<commit_after>package xyz.brassgoggledcoders.steamagerevolution.compat.guideapi;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import com.teamacronymcoders.base.util.OreDictUtils;

import amerifrance.guideapi.api.IPage;
import amerifrance.guideapi.api.impl.abstraction.EntryAbstract;
import amerifrance.guideapi.api.util.PageHelper;
import amerifrance.guideapi.entry.EntryItemStack;
import amerifrance.guideapi.page.PageFurnaceRecipe;
import amerifrance.guideapi.page.PageIRecipe;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.registry.GameRegistry.ObjectHolder;
import net.minecraftforge.oredict.ShapelessOreRecipe;
import xyz.brassgoggledcoders.steamagerevolution.SteamAgeRevolution;
import xyz.brassgoggledcoders.steamagerevolution.utils.TextUtils;

@ObjectHolder(SteamAgeRevolution.MODID)
public class CategoryBasics {

	public static final Item hammer = null;

	public static Map<ResourceLocation, EntryAbstract> buildCategory() {
		Map<ResourceLocation, EntryAbstract> entries = new LinkedHashMap<ResourceLocation, EntryAbstract>();
		String keyBase = "guide." + SteamAgeRevolution.MODID + ".entry.basics.";

		List<IPage> hammerEntry = new ArrayList<IPage>();
		hammerEntry.addAll(PageHelper.pagesForLongText(TextUtils.localize(keyBase + "hammer.info")));
		hammerEntry.add(PageIRecipe.fromJson(new ResourceLocation(SteamAgeRevolution.MODID, "hammer")));
		hammerEntry.add(new PageIRecipe(new ShapelessOreRecipe(null, OreDictUtils.getPreferredItemStack("dustCopper"),
				OreDictUtils.getPreferredItemStack("oreCopper"), hammer)));
		hammerEntry.add(new PageIRecipe(new ShapelessOreRecipe(null, OreDictUtils.getPreferredItemStack("plateCopper"),
				OreDictUtils.getPreferredItemStack("ingotCopper"), hammer)));
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "hammer_entry"),
				new EntryItemStack(hammerEntry, keyBase + "hammer", new ItemStack(hammer)));

		List<IPage> oreEntry = new ArrayList<IPage>();
		oreEntry.addAll(PageHelper.pagesForLongText(TextUtils.localize(keyBase + "ore.info"),
				OreDictUtils.getPreferredItemStack("oreCopper")));
		// BookUtils.fromJson is edited to handle custom recipe factories
		// oreEntry.add(BookUtils.fromJson(new ResourceLocation(SteamAgeRevolution.MODID, "copper_dust")));
		// TODO Recipe handling
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "ore_entry"),
				new EntryItemStack(oreEntry, keyBase + "ore", OreDictUtils.getPreferredItemStack("oreZinc")));

		List<IPage> alloyEntry = new ArrayList<IPage>();
		alloyEntry.addAll(PageHelper.pagesForLongText(
				TextUtils.localize(keyBase + "alloy.info", OreDictUtils.getPreferredItemStack("blockBrass"))));
		alloyEntry.add(new PageFurnaceRecipe("dustBrass"));
		entries.put(new ResourceLocation(SteamAgeRevolution.MODID, "alloy_entry"),
				new EntryItemStack(alloyEntry, keyBase + "alloy", OreDictUtils.getPreferredItemStack("ingotBrass")));

		for(EntryAbstract entry : entries.values()) {
			PageHelper.setPagesToUnicode(entry.pageList);
		}

{'fraction_non_alphanumeric': 0.11371688881390248, 'fraction_numerical': 0.0, 'mean_word_length': 7.517241379310345, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2897863', 'n_tokens_mistral': 2008, 'n_tokens_neox': 1887, 'n_words': 280}