use of net.silentchaos512.gear.api.item.GearTypeMatcher in project Silent-Gear by SilentChaos512.
the class PartsProvider method getParts.
protected Collection<PartBuilder> getParts() {
Collection<PartBuilder> ret = new ArrayList<>();
ret.add(part("adornment", GearType.CURIO, PartType.ADORNMENT, ModItems.ADORNMENT));
ret.add(part("binding", GearType.TOOL, PartType.BINDING, ModItems.BINDING));
ret.add(part("bowstring", GearType.RANGED_WEAPON, PartType.CORD, ModItems.CORD));
ret.add(part("coating", GearType.ALL, PartType.COATING, ModItems.COATING).blacklistGearType(GearType.ELYTRA));
ret.add(part("fletching", GearType.PROJECTILE, PartType.FLETCHING, ModItems.FLETCHING));
ret.add(part("grip", GearType.TOOL, PartType.GRIP, ModItems.GRIP));
ret.add(part("lining", GearType.ARMOR, PartType.LINING, ModItems.LINING));
ret.add(part("long_rod", GearType.TOOL, PartType.ROD, ModItems.LONG_ROD));
ret.add(part("rod", GearType.TOOL, PartType.ROD, ModItems.ROD));
ret.add(part("tip", GearType.TOOL, PartType.TIP, ModItems.TIP));
Registration.getItems(MainPartItem.class).forEach(item -> {
PartBuilder builder = part(NameUtils.fromItem(item).getPath(), item.getGearType(), item.getPartType(), item);
ret.add(addHeadStats(builder));
});
ret.add(upgradePart("misc/spoon", CraftingItems.SPOON_UPGRADE).upgradeGearTypes(GearType.PICKAXE.getMatcher(false)).stat(ItemStats.DURABILITY, 0.2f, StatInstance.Operation.MUL1).stat(ItemStats.RARITY, 10, StatInstance.Operation.ADD).trait(Const.Traits.SPOON, 1).display(GearType.PICKAXE, PartType.MISC_UPGRADE, new MaterialLayer(SilentGear.getId("spoon"), Color.VALUE_WHITE)));
ret.add(upgradePart("misc/road_maker", CraftingItems.ROAD_MAKER_UPGRADE).upgradeGearTypes(GearType.EXCAVATOR.getMatcher(false)).stat(ItemStats.DURABILITY, 0.1f, StatInstance.Operation.MUL1).stat(ItemStats.RARITY, 10, StatInstance.Operation.ADD).trait(Const.Traits.ROAD_MAKER, 1).display(GearType.EXCAVATOR, PartType.MISC_UPGRADE, new MaterialLayer(SilentGear.getId("road_maker"), Color.VALUE_WHITE)));
ret.add(upgradePart("misc/wide_plate", CraftingItems.WIDE_PLATE_UPGRADE).upgradeGearTypes(new GearTypeMatcher(false, GearType.HAMMER, GearType.EXCAVATOR)).stat(ItemStats.DURABILITY, 0.1f, StatInstance.Operation.MUL1).stat(ItemStats.RARITY, 10, StatInstance.Operation.ADD).trait(Const.Traits.WIDEN, 1).display(GearType.HAMMER, PartType.MISC_UPGRADE, new MaterialLayer(SilentGear.getId("wide_plate"), Color.VALUE_WHITE)).display(GearType.EXCAVATOR, PartType.MISC_UPGRADE, new MaterialLayer(SilentGear.getId("wide_plate"), Color.VALUE_WHITE)));
ret.add(upgradePart("misc/red_card", CraftingItems.RED_CARD_UPGRADE).upgradeGearTypes(GearTypeMatcher.ALL).stat(ItemStats.RARITY, -5, StatInstance.Operation.ADD).trait(Const.Traits.RED_CARD, 1));
return ret;
}
Aggregations