407 lines
19 KiB
Java
407 lines
19 KiB
Java
package ic2.api.item;
|
|
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
/**
|
|
* Provides access to IC2 blocks and items.
|
|
*
|
|
* Some items can be acquired through the ore dictionary which is the recommended way.
|
|
* The items are initialized while IC2 is being loaded - try to use ModsLoaded() or load your mod after IC2.
|
|
* Some blocks/items can be disabled by a config setting, so it's recommended to check if they're null first.
|
|
*
|
|
* Getting the associated Block/Item for an ItemStack x:
|
|
* Blocks: Block.blocksList[x.itemID]
|
|
* Items: x.getItem()
|
|
*/
|
|
public final class Items {
|
|
/**
|
|
* Get an ItemStack for a specific item name, example: Items.getItem("resin")
|
|
* See the list below for item names.
|
|
* Make sure to copy() the ItemStack if you want to modify it.
|
|
*
|
|
* @param name item name
|
|
* @return The item or null if the item does not exist or an error occurred
|
|
*/
|
|
public static ItemStack getItem(String name) {
|
|
try {
|
|
if (Ic2Items == null) Ic2Items = Class.forName(getPackage() + ".core.Ic2Items");
|
|
|
|
Object ret = Ic2Items.getField(name).get(null);
|
|
|
|
if (ret instanceof ItemStack) {
|
|
return (ItemStack) ret;
|
|
} else {
|
|
return null;
|
|
}
|
|
} catch (Exception e) {
|
|
System.out.println("IC2 API: Call getItem failed for "+name);
|
|
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/* Possible values:
|
|
|
|
----- blocks -----
|
|
|
|
ores
|
|
copperOre Copper Ore block, currently not meta sensitive, meta in ItemStack set to 0, ore dictionary: oreCopper, null with enableWorldGenOreCopper=false
|
|
tinOre Tin Ore block, currently not meta sensitive, meta in ItemStack set to 0, ore dictionary: oreTin, null with enableWorldGenOreTin=false
|
|
uraniumOre Tin Ore block, currently not meta sensitive, meta in ItemStack set to 0, ore dictionary: oreUranium, null with enableWorldGenOreUranium=false
|
|
|
|
rubber related
|
|
Rubber wood block, meta reflects the state, meta in ItemStack set to 0, ore dictionary: woodRubber (with meta 0), null with enableWorldGenTreeRubber=false
|
|
dropped (as an item) -> metadata 0
|
|
block, no resin spot -> metadata 0 or 1
|
|
block, wet resin spot -> metadata 2-5 (according to the side)
|
|
block, dry resin spot -> metadata 8-11 (wet state + 6)
|
|
|
|
rubberWood
|
|
rubberLeaves Rubber Leaves block, currently not meta sensitive, meta in ItemStack set to 0, null with enableWorldGenTreeRubber=false
|
|
rubberSapling Rubber Sapling block, currently not meta sensitive, meta in ItemStack set to 0, null with enableWorldGenTreeRubber=false
|
|
resinSheet Resin Sheet block, currently not meta sensitive
|
|
rubberTrampoline Rubber Trampoline block, meta reflects internal state, meta in ItemStack set to 0
|
|
|
|
building/storage
|
|
ironFence Iron Fence block, currently not meta sensitive
|
|
|
|
reinforcedStone Reinforced Stone block, currently not meta sensitive
|
|
reinforcedGlass Reinforced Glass block, currently not meta sensitive
|
|
reinforcedDoorBlock Reinforced Door block, meta reflects the state (see vanilla doors), meta in ItemStack set to 0
|
|
|
|
constructionFoam Construction Foam block, currently not meta sensitive
|
|
constructionFoamWall Construction Foam Wall block, meta = color, implements IPaintableBlock
|
|
scaffold Scaffold block, meta reflects internal physical model data
|
|
|
|
bronzeBlock Bronze block, meta sensitive
|
|
copperBlock Copper block, meta sensitive
|
|
tinBlock Tin block, meta sensitive
|
|
uraniumBlock Uranium block, meta sensitive
|
|
|
|
cables (when placed as a block, inventory items are different TE implements IEnergyConductor)
|
|
copperCableBlock Copper Cable block, meta sensitive
|
|
insulatedCopperCableBlock Insulated Copper Cable block, meta sensitive
|
|
|
|
goldCableBlock Gold Cable block, meta sensitive
|
|
insulatedGoldCableBlock Insulated Gold Cable block, meta sensitive
|
|
doubleInsulatedGoldCableBlock Double Insulated Gold Cable block, meta sensitive
|
|
|
|
ironCableBlock Iron Cable block, meta sensitive
|
|
insulatedIronCableBlock Insulated Iron Cable block, meta sensitive
|
|
doubleInsulatedIronCableBlock Double Insulated Iron Cable block, meta sensitive
|
|
trippleInsulatedIronCableBlock Tripple Insulated Iron Cable block, meta sensitive
|
|
|
|
glassFiberCableBlock Glass Fiber Cable block, meta sensitive
|
|
|
|
tinCableBlock Tin Cable block, meta sensitive
|
|
|
|
detectorCableBlock Detector Cable block, meta sensitive
|
|
splitterCableBlock Splitter Cable block, meta sensitive
|
|
|
|
generators + related (TE implements IEnergySource ex. reactorChamber)
|
|
generator Generator block, meta sensitive
|
|
geothermalGenerator Geothermal Generator block, meta sensitive
|
|
waterMill Water Mill block, meta sensitive
|
|
solarPanel Solar Panel block, meta sensitive
|
|
windMill Wind Mill block, meta sensitive
|
|
nuclearReactor Nuclear Reactor block, meta sensitive
|
|
reactorChamber Reactor Chamber block, currently not meta sensitive
|
|
|
|
energy storages (TE implements IEnergySource and IEnergyConductor)
|
|
batBox BatBox block, meta sensitive
|
|
mfeUnit MFE Unit block, meta sensitive
|
|
mfsUnit MFS Unit block, meta sensitive
|
|
|
|
transformers (TE implements IEnergySource and IEnergyConductor)
|
|
lvTransformer LV Transformer block, meta sensitive
|
|
mvTransformer MV Transformer block, meta sensitive
|
|
hvTransformer HV Transformer block, meta sensitive
|
|
|
|
machines + related (TE implements IEnergySink ex. machine, miningPipe, miningPipeTip)
|
|
machine Machine block, meta sensitive
|
|
advancedMachine Advanced Machine block, meta sensitive
|
|
|
|
ironFurnace Iron Furnace block, meta sensitive
|
|
electroFurnace Electro Furnace block, meta sensitive
|
|
macerator Macerator block, meta sensitive
|
|
extractor Extractor block, meta sensitive
|
|
compressor Compressor block, meta sensitive
|
|
canner Canner block, meta sensitive
|
|
miner Miner block, meta sensitive
|
|
pump Pump block, meta sensitive
|
|
magnetizer Magnetizer block, meta sensitive
|
|
electrolyzer Electrolyzer block, meta sensitive
|
|
recycler Recycler block, meta sensitive
|
|
inductionFurnace Induction Furnace block, meta sensitive
|
|
massFabricator Mass Fabricator block, meta sensitive
|
|
terraformer Terraformer block, meta sensitive
|
|
teleporter Teleporter block, meta sensitive
|
|
teslaCoil Tesla Coil block, meta sensitive
|
|
luminator Passive (dark) Luminator block, meta = facing
|
|
activeLuminator Active (bright) Luminator block, meta = facing
|
|
|
|
miningPipe Mining Pipe block, currently not meta sensitive, meta in ItemStack set to 0
|
|
miningPipeTip Mining Pipe Tip block, currently not meta sensitive, meta in ItemStack set to 0
|
|
|
|
personal blocks
|
|
personalSafe Personal Safe block, meta sensitive
|
|
tradeOMat Trade-O-Mat block, meta sensitive
|
|
energyOMat Energy-O-Mat block, meta sensitive
|
|
|
|
explosives
|
|
industrialTnt Industrial TNT block, currently not meta sensitive
|
|
nuke Nuke block, currently not meta sensitive
|
|
dynamiteStick Dynamite Stick block, meta = placement, meta in ItemStack set to 0
|
|
dynamiteStickWithRemote Dynamite Stick with Remote block, meta = placement, meta in ItemStack set to 0
|
|
|
|
Agriculture Stuff
|
|
crop Crop Block, empty, not meta sensitive
|
|
|
|
|
|
----- items -----
|
|
|
|
rubber + related
|
|
resin Resin item, currently not meta sensitive
|
|
rubber Rubber item, currently not meta sensitive, ore dictionary: itemRubber
|
|
|
|
ore drops
|
|
uraniumDrop Uranium Drop item, currently not meta sensitive, ore dictionary: itemDropUranium
|
|
|
|
dusts
|
|
bronzeDust Bronze Dust item, currently not meta sensitive
|
|
clayDust Clay Dust item, currently not meta sensitive
|
|
coalDust Coal Dust item, currently not meta sensitive
|
|
copperDust Copper Dust item, currently not meta sensitive
|
|
goldDust Gold Dust item, currently not meta sensitive
|
|
ironDust Iron Dust item, currently not meta sensitive
|
|
silverDust Silver Dust item, currently not meta sensitive
|
|
smallIronDust Small Iron Dust item, currently not meta sensitive
|
|
tinDust Tin Dust item, currently not meta sensitive
|
|
hydratedCoalDust Hydrated Coal Dust item, currently not meta sensitive
|
|
|
|
ingots
|
|
refinedIronIngot Refined Iron Ingot item, currently not meta sensitive, ore dictionary: ingotRefinedIron
|
|
copperIngot Copper Ingot item, currently not meta sensitive, ore dictionary: ingotCopper
|
|
tinIngot Tin Ingot item, currently not meta sensitive, ore dictionary: ingotTin
|
|
bronzeIngot Bronze Ingot item, currently not meta sensitive, ore dictionary: ingotBronze
|
|
mixedMetalIngot Mixed Metal Ingot item, currently not meta sensitive
|
|
uraniumIngot Uranium Ingot item, currently not meta sensitive, ore dictionary: ingotUranium
|
|
|
|
tools/weapons (without electric tools)
|
|
treetap Treetap item, meta = damage value
|
|
wrench Wrench item, meta = damage value
|
|
cutter Insulation Cutter item, meta = damage value
|
|
constructionFoamSprayer Construction Foam Sprayer item, meta = charges (as of v1.45)
|
|
|
|
bronzePickaxe Bronze Pickaxe item, meta = damage value
|
|
bronzeAxe Bronze Axe item, meta = damage value
|
|
bronzeSword Bronze Sword item, meta = damage value
|
|
bronzeShovel Bronze Shovel item, meta = damage value
|
|
bronzeHoe Bronze Hoe item, meta = damage value
|
|
|
|
el. tools/devices/weapons
|
|
miningDrill Mining Drill item, meta = visual charge indicator, implements IElectricItem
|
|
diamondDrill Diamond Tipped Mining Drill item, meta = visual charge indicator, implements IElectricItem
|
|
chainsaw Chainsaw item, meta = visual charge indicator, implements IElectricItem
|
|
electricWrench Electric Wrench item, meta = visual charge indicator, implements IElectricItem
|
|
electricTreetap Electric Treetap item, meta = visual charge indicator, implements IElectricItem
|
|
miningLaser Mining Laser item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
ecMeter EC-Mater item, currently not meta sensitive
|
|
odScanner Ore Density Scanner item, meta = damage value for charge level, implements IElectricItem
|
|
ovScanner Ore Value Scanner item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
frequencyTransmitter Frequency Transmitter item, currently not meta sensitive
|
|
|
|
nanoSaber Idle Nano Saber item, meta = visual charge indicator, implements IElectricItem
|
|
enabledNanoSaber Enabled Nano Saber item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
armor/wearable
|
|
rubberBoots Rubber Boots item, meta = damage value
|
|
|
|
bronzeHelmet Bronze Helmet Armor item, meta = damage value
|
|
bronzeChestplate Bronze Chestplate Armor item, meta = damage value
|
|
bronzeLeggings Bronze Leggings Armor item, meta = damage value
|
|
bronzeBoots Bronze Boots Armor item, meta = damage value
|
|
|
|
compositeArmor Composite Armor item, meta = damage value for charge level
|
|
|
|
nanoHelmet Nano Helmet Armor item, meta = visual charge indicator, implements IElectricItem
|
|
nanoBodyarmor Nano Bodyarmor item, meta = visual charge indicator, implements IElectricItem
|
|
nanoLeggings Nano Leggings Armor item, meta = visual charge indicator, implements IElectricItem
|
|
nanoBoots Nano Boots Armor item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
quantumHelmet Quantum Helmet Armor item, meta = visual charge indicator, implements IElectricItem
|
|
quantumBodyarmor Quantum Bodyarmor item, meta = visual charge indicator, implements IElectricItem
|
|
quantumLeggings Quantum Leggings Armor item, meta = visual charge indicator, implements IElectricItem
|
|
quantumBoots Quantum Boots Armor item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
jetpack Jetpack item, meta = damage value for fuel level
|
|
electricJetpack Electric Jetpack item, meta = visual charge indicator, implements IElectricItem
|
|
|
|
batPack BatPack item, meta = visual charge indicator, implements IElectricItem, can provide energy
|
|
lapPack LapPack item, meta = visual charge indicator, implements IElectricItem, can provide energy
|
|
|
|
cfPack CF Pack item, meta = charges (as of v1.45)
|
|
|
|
solarHelmet Solar Helmet item, currently not meta sensitive
|
|
staticBoots Static Boots item, currently not meta sensitive
|
|
|
|
batteries
|
|
reBattery Empty RE Battery item, currently not meta sensitive, implements IElectricItem
|
|
chargedReBattery RE Battery item, meta = visual charge indicator, implements IElectricItem, can provide energy
|
|
energyCrystal Energy Crystal item, meta = visual charge indicator, implements IElectricItem, can provide energy
|
|
lapotronCrystal Lapotron Crystal item, meta = visual charge indicator, implements IElectricItem, can provide energy
|
|
suBattery SU Battery item, currently not meta sensitive
|
|
|
|
cables
|
|
copperCableItem Copper Cable item, meta sensitive
|
|
insulatedCopperCableItem Insulated Copper Cable item, meta sensitive
|
|
|
|
goldCableItem Gold Cable item, meta sensitive
|
|
insulatedGoldCableItem Insulated Gold Cable item, meta sensitive
|
|
doubleInsulatedGoldCableItem Double Insulated Gold Cable item, meta sensitive
|
|
|
|
ironCableItem Iron Cable item, meta sensitive
|
|
insulatedIronCableItem Insulated Iron Cable item, meta sensitive
|
|
doubleInsulatedIronCableItem Double Insulated Iron Cable item, meta sensitive
|
|
trippleInsulatedIronCableItem Tripple Insulated Iron Cable item, meta sensitive
|
|
|
|
glassFiberCableItem Glass Fiber Cable item, meta sensitive
|
|
|
|
tinCableItem Tin Cable item, meta sensitive
|
|
|
|
detectorCableItem Detector Cable item, meta sensitive
|
|
splitterCableItem Splitter Cable item, meta sensitive
|
|
|
|
cells/containers (without reactor components)
|
|
cell Empty Cell item, currently not meta sensitive
|
|
lavaCell Lava Cell item, currently not meta sensitive
|
|
hydratedCoalCell Hydrated Coal Cell item, currently not meta sensitive
|
|
bioCell Bio Cell item, currently not meta sensitive
|
|
coalfuelCell Coalfuel Cell item, currently not meta sensitive
|
|
biofuelCell Biofuel Cell item, currently not meta sensitive
|
|
waterCell Water Cell item, currently not meta sensitive
|
|
electrolyzedWaterCell Electrolyzed Water Cell item, currently not meta sensitive
|
|
|
|
fuelCan Empty Fuel Can item, currently not meta sensitive
|
|
filledFuelCan Fuel Can item, meta = fuel value (as of v1.45)
|
|
|
|
tinCan Empty Tin Can item, currently not meta sensitive
|
|
filledTinCan Filled Tin Can item, currently not meta sensitive
|
|
|
|
reactor components
|
|
uraniumCell Uranium Cell item, meta = damage value
|
|
coolingCell Cooling Cell item, meta = damage value
|
|
|
|
depletedIsotopeCell Depleted Isotope Cell item, meta = damage value
|
|
reEnrichedUraniumCell Re-Enriched Uranium Cell item, currently not meta sensitive
|
|
nearDepletedUraniumCell Near-Depleted Uranium Cell item, currently not meta sensitive
|
|
|
|
integratedReactorPlating Integrated Reactor Plating item, meta = damage value
|
|
integratedHeatDisperser Integrated Heat Disperser item, meta = damage value
|
|
|
|
terraformer blueprints
|
|
terraformerBlueprint Empty Terraformer Blueprint item, currently not meta sensitive
|
|
cultivationTerraformerBlueprint Cultivation Terraformer Blueprint item, currently not meta sensitive
|
|
irrigationTerraformerBlueprint Irrigation Terraformer Blueprint item, currently not meta sensitive
|
|
chillingTerraformerBlueprint Chilling Terraformer Blueprint item, currently not meta sensitive
|
|
desertificationTerraformerBlueprint Desertification Terraformer Blueprint item, currently not meta sensitive
|
|
flatificatorTerraformerBlueprint Flatificator Terraformer Blueprint item, currently not meta sensitive
|
|
mushroomTerraformerBlueprint Mushroom Terraformer Blueprint item, currently not meta sensitive
|
|
|
|
diamond chain
|
|
coalBall Coal Ball item, currently not meta sensitive
|
|
compressedCoalBall Compressed Coal Ball item, currently not meta sensitive
|
|
coalChunk Coal Chunk item, currently not meta sensitive
|
|
industrialDiamond Industrial Diamond item, currently not meta sensitive, DEPRECATED
|
|
|
|
recycler chain
|
|
scrap Scrap item, currently not meta sensitive
|
|
scrapBox Scrap Box item, currently not meta sensitive
|
|
|
|
fuel production chain
|
|
hydratedCoalClump Hydrated Coal Clump item, currently not meta sensitive
|
|
plantBall Plant Ball item, currently not meta sensitive
|
|
compressedPlantBall Compressed Plant Ball item, currently not meta sensitive
|
|
|
|
painting
|
|
painter Painter item, currently not meta sensitive
|
|
|
|
blackPainter Black Painter item, meta = damage value
|
|
redPainter Red Painter item, meta = damage value
|
|
greenPainter Green Painter item, meta = damage value
|
|
brownPainter Brown Painter item, meta = damage value
|
|
bluePainter Blue Painter item, meta = damage value
|
|
purplePainter Purple Painter item, meta = damage value
|
|
cyanPainter Cyan Painter item, meta = damage value
|
|
lightGreyPainter Light Grey Painter item, meta = damage value
|
|
darkGreyPainter Dark Grey Painter item, meta = damage value
|
|
pinkPainter Pink Painter item, meta = damage value
|
|
limePainter Lime Painter item, meta = damage value
|
|
yellowPainter Yellow Painter item, meta = damage value
|
|
cloudPainter Cloud Painter item, meta = damage value
|
|
magentaPainter Magenta Painter item, meta = damage value
|
|
orangePainter Orange Painter item, meta = damage value
|
|
whitePainter White Painter item, meta = damage value
|
|
|
|
explosives + related
|
|
dynamite Throwable Dynamite item, currently not meta sensitive
|
|
stickyDynamite Throwable Sticky Dynamite item, currently not meta sensitive
|
|
|
|
remote Dynamite Remote item, currently not meta sensitive
|
|
|
|
misc intermediate recipe ingredients
|
|
electronicCircuit Electronic Circuit item, currently not meta sensitive
|
|
advancedCircuit Advanced Circuit item, currently not meta sensitive
|
|
|
|
advancedAlloy Advanced Alloy item, currently not meta sensitive
|
|
|
|
carbonFiber Raw Carbon Fiber item, currently not meta sensitive
|
|
carbonMesh Raw Carbon Mesh item, currently not meta sensitive
|
|
carbonPlate Carbon Plate item, currently not meta sensitive
|
|
|
|
matter UU-Matter item, currently not meta sensitive
|
|
iridiumOre Iridium Ore item, currently not meta sensitive
|
|
iridiumPlate Iridium Plate item, currently not meta sensitive
|
|
|
|
upgrade modules
|
|
overclockerUpgrade overclocker upgrade item, meta sensitive
|
|
transformerUpgrade transformer upgrade item, meta sensitive
|
|
energyStorageUpgrade energy storage upgrade item, meta sensitive
|
|
|
|
misc
|
|
coin Coin item, currently not meta sensitive
|
|
reinforcedDoor Reinforced Door item, currently not meta sensitive
|
|
constructionFoamPellet Construction Foam Pellet item, currently not meta sensitive
|
|
cropSeed Crop seeds, stuff stored in NBT, don't use for crafting recipes!
|
|
cropnalyzer Cropnalyzer handheld device
|
|
fertilizer Basic IC2Item, used to provide nutrients toCropBlocks
|
|
hydratingCell Cell used to hydrate Crops, meta = Content, 0 = Full, 9999 = Near empty
|
|
electricHoe Electric Hoe, meta = charge level
|
|
solarHelmet Solar Helmet item, currently not meta sensitive
|
|
terraWart Terra Wart item, cures potion effects
|
|
weedEx Weed-EX can, meta = uses left
|
|
|
|
*/
|
|
|
|
/**
|
|
* Get the base IC2 package name, used internally.
|
|
*
|
|
* @return IC2 package name, if unable to be determined defaults to ic2
|
|
*/
|
|
private static String getPackage() {
|
|
Package pkg = Items.class.getPackage();
|
|
|
|
if (pkg != null) {
|
|
String packageName = pkg.getName();
|
|
|
|
return packageName.substring(0, packageName.length() - ".api.item".length());
|
|
}
|
|
|
|
return "ic2";
|
|
}
|
|
|
|
private static Class<?> Ic2Items;
|
|
}
|
|
|