Applied-Energistics-2-tiler.../src/main/java/appeng/core/api/definitions/ApiItems.java

416 lines
13 KiB
Java

/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Applied Energistics 2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
*/
package appeng.core.api.definitions;
import appeng.api.definitions.IItemDefinition;
import appeng.api.definitions.IItems;
import appeng.api.util.AEColoredItemDefinition;
import appeng.core.features.AEFeature;
import appeng.debug.ToolDebugCard;
import appeng.debug.ToolEraser;
import appeng.debug.ToolMeteoritePlacer;
import appeng.debug.ToolReplicatorCard;
import appeng.items.materials.MaterialType;
import appeng.items.misc.ItemCrystalSeed;
import appeng.items.misc.ItemEncodedPattern;
import appeng.items.misc.ItemPaintBall;
import appeng.items.parts.ItemFacade;
import appeng.items.storage.ItemBasicStorageCell;
import appeng.items.storage.ItemCreativeStorageCell;
import appeng.items.storage.ItemSpatialStorageCell;
import appeng.items.storage.ItemViewCell;
import appeng.items.tools.ToolBiometricCard;
import appeng.items.tools.ToolMemoryCard;
import appeng.items.tools.ToolNetworkTool;
import appeng.items.tools.powered.*;
import appeng.items.tools.quartz.*;
/**
* Internal implementation for the API items
*/
public final class ApiItems implements IItems {
private final IItemDefinition certusQuartzAxe;
private final IItemDefinition certusQuartzHoe;
private final IItemDefinition certusQuartzShovel;
private final IItemDefinition certusQuartzPick;
private final IItemDefinition certusQuartzSword;
private final IItemDefinition certusQuartzWrench;
private final IItemDefinition certusQuartzKnife;
private final IItemDefinition netherQuartzAxe;
private final IItemDefinition netherQuartzHoe;
private final IItemDefinition netherQuartzShovel;
private final IItemDefinition netherQuartzPick;
private final IItemDefinition netherQuartzSword;
private final IItemDefinition netherQuartzWrench;
private final IItemDefinition netherQuartzKnife;
private final IItemDefinition entropyManipulator;
private final IItemDefinition vibrationCatalyst;
private final IItemDefinition entropyAccelerator;
private final IItemDefinition wirelessTerminal;
private final IItemDefinition biometricCard;
private final IItemDefinition chargedStaff;
private final IItemDefinition massCannon;
private final IItemDefinition memoryCard;
private final IItemDefinition networkTool;
private final IItemDefinition portableCell;
private final IItemDefinition cellCreative;
private final IItemDefinition viewCell;
private final IItemDefinition cell1k;
private final IItemDefinition cell4k;
private final IItemDefinition cell16k;
private final IItemDefinition cell64k;
private final IItemDefinition spatialCell2;
private final IItemDefinition spatialCell16;
private final IItemDefinition spatialCell128;
private final IItemDefinition facade;
private final IItemDefinition crystalSeed;
// rv1
private final IItemDefinition encodedPattern;
private final IItemDefinition colorApplicator;
private final IItemDefinition paintBall;
private final AEColoredItemDefinition coloredPaintBall;
private final AEColoredItemDefinition coloredLumenPaintBall;
// unsupported dev tools
private final IItemDefinition toolEraser;
private final IItemDefinition toolMeteoritePlacer;
private final IItemDefinition toolDebugCard;
private final IItemDefinition toolReplicatorCard;
public ApiItems(final DefinitionConstructor constructor) {
this.certusQuartzAxe = constructor.registerItemDefinition(
new ToolQuartzAxe(AEFeature.CertusQuartzTools)
);
this.certusQuartzHoe = constructor.registerItemDefinition(
new ToolQuartzHoe(AEFeature.CertusQuartzTools)
);
this.certusQuartzShovel = constructor.registerItemDefinition(
new ToolQuartzSpade(AEFeature.CertusQuartzTools)
);
this.certusQuartzPick = constructor.registerItemDefinition(
new ToolQuartzPickaxe(AEFeature.CertusQuartzTools)
);
this.certusQuartzSword = constructor.registerItemDefinition(
new ToolQuartzSword(AEFeature.CertusQuartzTools)
);
this.certusQuartzWrench = constructor.registerItemDefinition(
new ToolQuartzWrench(AEFeature.CertusQuartzTools)
);
this.certusQuartzKnife = constructor.registerItemDefinition(
new ToolQuartzCuttingKnife(AEFeature.CertusQuartzTools)
);
this.netherQuartzAxe = constructor.registerItemDefinition(
new ToolQuartzAxe(AEFeature.NetherQuartzTools)
);
this.netherQuartzHoe = constructor.registerItemDefinition(
new ToolQuartzHoe(AEFeature.NetherQuartzTools)
);
this.netherQuartzShovel = constructor.registerItemDefinition(
new ToolQuartzSpade(AEFeature.NetherQuartzTools)
);
this.netherQuartzPick = constructor.registerItemDefinition(
new ToolQuartzPickaxe(AEFeature.NetherQuartzTools)
);
this.netherQuartzSword = constructor.registerItemDefinition(
new ToolQuartzSword(AEFeature.NetherQuartzTools)
);
this.netherQuartzWrench = constructor.registerItemDefinition(
new ToolQuartzWrench(AEFeature.NetherQuartzTools)
);
this.netherQuartzKnife = constructor.registerItemDefinition(
new ToolQuartzCuttingKnife(AEFeature.NetherQuartzTools)
);
this.entropyManipulator
= constructor.registerItemDefinition(new ToolEntropyManipulator());
this.vibrationCatalyst
= constructor.registerItemDefinition(new ToolVibrationCatalyst());
this.entropyAccelerator
= constructor.registerItemDefinition(new ToolEntropyAccelerator());
this.wirelessTerminal
= constructor.registerItemDefinition(new ToolWirelessTerminal());
this.biometricCard = constructor.registerItemDefinition(new ToolBiometricCard());
this.chargedStaff = constructor.registerItemDefinition(new ToolChargedStaff());
this.massCannon = constructor.registerItemDefinition(new ToolMassCannon());
this.memoryCard = constructor.registerItemDefinition(new ToolMemoryCard());
this.networkTool = constructor.registerItemDefinition(new ToolNetworkTool());
this.portableCell = constructor.registerItemDefinition(new ToolPortableCell());
this.cellCreative
= constructor.registerItemDefinition(new ItemCreativeStorageCell());
this.viewCell = constructor.registerItemDefinition(new ItemViewCell());
this.cell1k = constructor.registerItemDefinition(
new ItemBasicStorageCell(MaterialType.Cell1kPart, 1)
);
this.cell4k = constructor.registerItemDefinition(
new ItemBasicStorageCell(MaterialType.Cell4kPart, 4)
);
this.cell16k = constructor.registerItemDefinition(
new ItemBasicStorageCell(MaterialType.Cell16kPart, 16)
);
this.cell64k = constructor.registerItemDefinition(
new ItemBasicStorageCell(MaterialType.Cell64kPart, 64)
);
this.spatialCell2
= constructor.registerItemDefinition(new ItemSpatialStorageCell(2));
this.spatialCell16
= constructor.registerItemDefinition(new ItemSpatialStorageCell(16));
this.spatialCell128
= constructor.registerItemDefinition(new ItemSpatialStorageCell(128));
this.facade = constructor.registerItemDefinition(new ItemFacade());
this.crystalSeed = constructor.registerItemDefinition(new ItemCrystalSeed());
// rv1
this.encodedPattern
= constructor.registerItemDefinition(new ItemEncodedPattern());
this.colorApplicator
= constructor.registerItemDefinition(new ToolColorApplicator());
this.paintBall = constructor.registerItemDefinition(new ItemPaintBall());
this.coloredPaintBall = constructor.constructColoredDefinition(this.paintBall, 0);
this.coloredLumenPaintBall
= constructor.constructColoredDefinition(this.paintBall, 20);
this.toolEraser = constructor.registerItemDefinition(new ToolEraser());
this.toolMeteoritePlacer
= constructor.registerItemDefinition(new ToolMeteoritePlacer());
this.toolDebugCard = constructor.registerItemDefinition(new ToolDebugCard());
this.toolReplicatorCard
= constructor.registerItemDefinition(new ToolReplicatorCard());
}
@Override
public IItemDefinition certusQuartzAxe() {
return this.certusQuartzAxe;
}
@Override
public IItemDefinition certusQuartzHoe() {
return this.certusQuartzHoe;
}
@Override
public IItemDefinition certusQuartzShovel() {
return this.certusQuartzShovel;
}
@Override
public IItemDefinition certusQuartzPick() {
return this.certusQuartzPick;
}
@Override
public IItemDefinition certusQuartzSword() {
return this.certusQuartzSword;
}
@Override
public IItemDefinition certusQuartzWrench() {
return this.certusQuartzWrench;
}
@Override
public IItemDefinition certusQuartzKnife() {
return this.certusQuartzKnife;
}
@Override
public IItemDefinition netherQuartzAxe() {
return this.netherQuartzAxe;
}
@Override
public IItemDefinition netherQuartzHoe() {
return this.netherQuartzHoe;
}
@Override
public IItemDefinition netherQuartzShovel() {
return this.netherQuartzShovel;
}
@Override
public IItemDefinition netherQuartzPick() {
return this.netherQuartzPick;
}
@Override
public IItemDefinition netherQuartzSword() {
return this.netherQuartzSword;
}
@Override
public IItemDefinition netherQuartzWrench() {
return this.netherQuartzWrench;
}
@Override
public IItemDefinition netherQuartzKnife() {
return this.netherQuartzKnife;
}
@Override
public IItemDefinition entropyManipulator() {
return this.entropyManipulator;
}
@Override
public IItemDefinition wirelessTerminal() {
return this.wirelessTerminal;
}
@Override
public IItemDefinition biometricCard() {
return this.biometricCard;
}
@Override
public IItemDefinition chargedStaff() {
return this.memoryCard;
}
@Override
public IItemDefinition massCannon() {
return this.massCannon;
}
@Override
public IItemDefinition memoryCard() {
return this.memoryCard;
}
@Override
public IItemDefinition networkTool() {
return this.networkTool;
}
@Override
public IItemDefinition portableCell() {
return this.portableCell;
}
@Override
public IItemDefinition cellCreative() {
return this.cellCreative;
}
@Override
public IItemDefinition viewCell() {
return this.viewCell;
}
@Override
public IItemDefinition cell1k() {
return this.cell1k;
}
@Override
public IItemDefinition cell4k() {
return this.cell4k;
}
@Override
public IItemDefinition cell16k() {
return this.cell16k;
}
@Override
public IItemDefinition cell64k() {
return this.cell64k;
}
@Override
public IItemDefinition spatialCell2() {
return this.spatialCell2;
}
@Override
public IItemDefinition spatialCell16() {
return this.spatialCell16;
}
@Override
public IItemDefinition spatialCell128() {
return this.spatialCell128;
}
@Override
public IItemDefinition facade() {
return this.facade;
}
@Override
public IItemDefinition crystalSeed() {
return this.crystalSeed;
}
@Override
public IItemDefinition encodedPattern() {
return this.encodedPattern;
}
@Override
public IItemDefinition colorApplicator() {
return this.colorApplicator;
}
@Override
public AEColoredItemDefinition coloredPaintBall() {
return this.coloredPaintBall;
}
@Override
public AEColoredItemDefinition coloredLumenPaintBall() {
return this.coloredLumenPaintBall;
}
public IItemDefinition paintBall() {
return this.paintBall;
}
public IItemDefinition toolEraser() {
return this.toolEraser;
}
public IItemDefinition toolMeteoritePlacer() {
return this.toolMeteoritePlacer;
}
public IItemDefinition toolDebugCard() {
return this.toolDebugCard;
}
public IItemDefinition toolReplicatorCard() {
return this.toolReplicatorCard;
}
}