/** * Copyright (c) Lambda Innovation, 2013-2016 * This file is part of the AcademyCraft mod. * https://github.com/LambdaInnovation/AcademyCraft * Licensed under GPLv3, see project root for more information. */ package cn.academy.vanilla; import cn.academy.ability.api.Category; import cn.academy.ability.api.Skill; import cn.academy.ability.api.registry.CategoryRegistration.RegCategory; import cn.academy.ability.develop.condition.DevConditionAnySkillOfLevel; import cn.academy.core.item.ACItem; import cn.academy.core.registry.ACRecipeNamesRegistration.RegACRecipeNames; import cn.academy.crafting.ModuleCrafting; import cn.academy.crafting.api.MetalFormerRecipes; import cn.academy.crafting.block.TileMetalFormer.Mode; import cn.academy.vanilla.electromaster.CatElectromaster; import cn.academy.vanilla.electromaster.item.ItemCoin; import cn.academy.vanilla.electromaster.item.ItemMagHook; import cn.academy.vanilla.generic.skill.SkillBrainCourse; import cn.academy.vanilla.generic.skill.SkillBrainCourseAdvanced; import cn.academy.vanilla.generic.skill.SkillMindCourse; import cn.academy.vanilla.meltdowner.CatMeltdowner; import cn.academy.vanilla.meltdowner.item.ItemSilbarn; import cn.academy.vanilla.teleporter.CatTeleporter; import cn.academy.vanilla.vecmanip.CatVecManip$; import cn.lambdalib.annoreg.core.Registrant; import cn.lambdalib.annoreg.mc.RegInitCallback; import cn.lambdalib.annoreg.mc.RegItem; import cn.lambdalib.crafting.CustomMappingHelper.RecipeName; import net.minecraft.block.Block; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @Registrant @RegACRecipeNames public class ModuleVanilla { @RegItem @RegItem.HasRender @RecipeName("coin") public static ItemCoin coin; @RegItem @RegItem.HasRender @RecipeName("mag_hook") public static ItemMagHook magHook; @RegItem @RegItem.HasRender @RecipeName("silbarn") public static ItemSilbarn silbarn; @RegItem @RecipeName("needle") public static Item needle = new ACItem("needle"); @RegCategory public static final CatElectromaster electromaster = new CatElectromaster(); @RegCategory public static final CatMeltdowner meltdowner = new CatMeltdowner(); @RegCategory public static final CatTeleporter teleporter = new CatTeleporter(); @RegCategory public static final CatVecManip$ vecManip = CatVecManip$.MODULE$; @RegInitCallback private static void init() { MetalFormerRecipes.INSTANCE.add(new ItemStack(ModuleCrafting.rfIronPlate), new ItemStack(needle, 6), Mode.INCISE); MetalFormerRecipes.INSTANCE.add(new ItemStack(Block.getBlockFromName("rail")), new ItemStack(needle, 2), Mode.INCISE); MetalFormerRecipes.INSTANCE.add(new ItemStack(ModuleCrafting.rfIronPlate, 2), new ItemStack(coin, 3), Mode.PLATE); MetalFormerRecipes.INSTANCE.add(new ItemStack(ModuleCrafting.wafer), new ItemStack(silbarn), Mode.ETCH); } public static void addGenericSkills(Category category) { Skill bc = new SkillBrainCourse(), bca = new SkillBrainCourseAdvanced(), mc = new SkillMindCourse(); bc.setPosition(30, 110); bca.setPosition(115, 110); mc.setPosition(205, 110); category.addSkill(bc); category.addSkill(bca); category.addSkill(mc); bc.addDevCondition(new DevConditionAnySkillOfLevel(3)); bca.setParent(bc); bca.addDevCondition(new DevConditionAnySkillOfLevel(4)); mc.setParent(bca); mc.addDevCondition(new DevConditionAnySkillOfLevel(5)); } }