|
11 | 11 | import net.minecraft.util.StatCollector;
|
12 | 12 | import net.minecraftforge.oredict.OreDictionary;
|
13 | 13 |
|
| 14 | +import cpw.mods.fml.common.Optional; |
14 | 15 | import gregtech.api.enums.Materials;
|
| 16 | +import mods.railcraft.common.items.firestone.IItemFirestoneBurning; |
15 | 17 | import witchinggadgets.WitchingGadgets;
|
16 | 18 | import witchinggadgets.common.WGConfig;
|
17 | 19 | import witchinggadgets.common.WGContent;
|
18 | 20 |
|
19 |
| -public class ItemClusters extends Item { |
| 21 | +@Optional.Interface(iface = "mods.railcraft.common.items.firestone.IItemFirestoneBurning", modid = "Railcraft") |
| 22 | +public class ItemClusters extends Item implements IItemFirestoneBurning { |
20 | 23 |
|
21 | 24 | @Deprecated
|
22 | 25 | public static String[] subNames = {
|
@@ -158,4 +161,18 @@ public void getSubItems(Item item, CreativeTabs tab, List<ItemStack> itemList) {
|
158 | 161 | itemList.add(new ItemStack(item, 1, iOre));
|
159 | 162 | }
|
160 | 163 | }
|
| 164 | + |
| 165 | + @Override |
| 166 | + @Optional.Method(modid = "Railcraft") |
| 167 | + public boolean shouldBurn(ItemStack itemStack) { |
| 168 | + if (itemStack != null) { |
| 169 | + int dmg = itemStack.getItemDamage(); |
| 170 | + // This should be safe since mDefaultLocalName gets inserted into GT_Cluster at |
| 171 | + // {@link WGContent#initGTClusters()} directly and the firestone Material name |
| 172 | + // is a literal inside gregtechs MaterialsInit1 class |
| 173 | + return (dmg < witchinggadgets.common.WGContent.GT_Cluster.length |
| 174 | + && witchinggadgets.common.WGContent.GT_Cluster[dmg] == Materials.Firestone.mDefaultLocalName); |
| 175 | + } |
| 176 | + return false; |
| 177 | + } |
161 | 178 | }
|
0 commit comments