diff --git a/src/main/java/tconstruct/weaponry/TinkerWeaponry.java b/src/main/java/tconstruct/weaponry/TinkerWeaponry.java index 2b3f685ef02..f83a3fa0f07 100644 --- a/src/main/java/tconstruct/weaponry/TinkerWeaponry.java +++ b/src/main/java/tconstruct/weaponry/TinkerWeaponry.java @@ -77,6 +77,7 @@ public class TinkerWeaponry { // Ammo public static AmmoItem arrowAmmo; public static AmmoItem boltAmmo; + public static ItemStack creativeBolt; // Tool Parts public static Item bowstring; @@ -142,6 +143,21 @@ public void postInit(FMLPostInitializationEvent event) MinecraftForge.EVENT_BUS.register(weaponryHandler); FMLCommonHandler.instance().bus().register(weaponryHandler); + + // "vanilla" bolt: + // iron-tipped wood-shaft with feather fletching + ItemStack headStack = DualMaterialToolPart.createDualMaterial(boltAmmo.getHeadItem(), TinkerTools.MaterialID.Wood, TinkerTools.MaterialID.Iron); + ItemStack handleStack = new ItemStack(boltAmmo.getAccessoryItem(), 1, 0); // feather fletchling + + ItemStack tool = ToolBuilder.instance.buildTool(headStack, handleStack, null, null, ""); + if (tool != null) + { + tool.getTagCompound().getCompoundTag("InfiTool").setBoolean("Built", true); + creativeBolt = tool; + } + else + TConstruct.logger.error("Couldn't build basic Tinker Bolt for creative crossbow shootnig"); + proxy.init(); } diff --git a/src/main/java/tconstruct/weaponry/weapons/Crossbow.java b/src/main/java/tconstruct/weaponry/weapons/Crossbow.java index 024ab4d48d2..84d8d06eb85 100644 --- a/src/main/java/tconstruct/weaponry/weapons/Crossbow.java +++ b/src/main/java/tconstruct/weaponry/weapons/Crossbow.java @@ -1,5 +1,8 @@ package tconstruct.weaponry.weapons; +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.init.Items; import tconstruct.TConstruct; import tconstruct.library.TConstructRegistry; import tconstruct.weaponry.TinkerWeaponry; @@ -261,6 +264,9 @@ public ItemStack searchForAmmo(EntityPlayer player, ItemStack weapon) { return stack; } + if(player.capabilities.isCreativeMode && TinkerWeaponry.creativeBolt != null) + return TinkerWeaponry.creativeBolt.copy(); + return null; }