Add imbuement altar
- Adds imbuement altar block and associated tile entity - Adds basic functionality for imbuing wizard armour (other stuff to be decided) - Incorporates imbuement altar into glowing overlay model event (this could do with being tidied up and generalised) - Adds a TESR for the ray effect (based on some of the oldest code in the entire mod, which definitely needs improving!) - Adds a simple sound effect for the imbuement process, needs upgrading to a ticked sound later
This commit is contained in:
@@ -77,6 +77,7 @@ public final class WizardryBlocks {
|
||||
public static final Block dark_oak_lectern = placeholder();
|
||||
|
||||
public static final Block receptacle = placeholder();
|
||||
public static final Block imbuement_altar = placeholder();
|
||||
|
||||
/**
|
||||
* Sets both the registry and unlocalised names of the given block, then registers it with the given registry. Use
|
||||
@@ -101,6 +102,7 @@ public final class WizardryBlocks {
|
||||
|
||||
IForgeRegistry<Block> registry = event.getRegistry();
|
||||
|
||||
// TODO: Put everything in block classes wherever possible
|
||||
registerBlock(registry, "arcane_workbench", new BlockArcaneWorkbench().setHardness(1.0F).setCreativeTab(WizardryTabs.WIZARDRY));
|
||||
registerBlock(registry, "crystal_ore", new BlockCrystalOre(Material.ROCK).setHardness(3.0F).setCreativeTab(WizardryTabs.WIZARDRY));
|
||||
registerBlock(registry, "crystal_flower", new BlockCrystalFlower(Material.PLANTS).setHardness(0.0F).setCreativeTab(WizardryTabs.WIZARDRY));
|
||||
@@ -139,6 +141,7 @@ public final class WizardryBlocks {
|
||||
registerBlock(registry, "dark_oak_lectern", new BlockLectern());
|
||||
|
||||
registerBlock(registry, "receptacle", new BlockReceptacle());
|
||||
registerBlock(registry, "imbuement_altar", new BlockImbuementAltar());
|
||||
|
||||
}
|
||||
|
||||
@@ -155,5 +158,6 @@ public final class WizardryBlocks {
|
||||
GameRegistry.registerTileEntity(TileEntityBookshelf.class, new ResourceLocation(Wizardry.MODID, "bookshelf"));
|
||||
GameRegistry.registerTileEntity(TileEntityLectern.class, new ResourceLocation(Wizardry.MODID, "lectern"));
|
||||
GameRegistry.registerTileEntity(TileEntityReceptacle.class, new ResourceLocation(Wizardry.MODID, "receptacle"));
|
||||
GameRegistry.registerTileEntity(TileEntityImbuementAltar.class, new ResourceLocation(Wizardry.MODID, "imbuement_altar"));
|
||||
}
|
||||
}
|
||||
@@ -436,6 +436,7 @@ public final class WizardryItems {
|
||||
registerItemBlock(registry, WizardryBlocks.dark_oak_lectern);
|
||||
|
||||
registerItemBlock(registry, WizardryBlocks.receptacle);
|
||||
registerItemBlock(registry, WizardryBlocks.imbuement_altar);
|
||||
|
||||
// Items
|
||||
|
||||
@@ -708,6 +709,7 @@ public final class WizardryItems {
|
||||
((TileEntityReceptacle)tileEntity).setElement(Element.values()[stack.getMetadata()]);
|
||||
stack.shrink(1);
|
||||
world.checkLight(pos);
|
||||
// TESTME: Do we need this?
|
||||
world.notifyBlockUpdate(pos, source.getBlockState(), source.getBlockState(), 3);
|
||||
return stack;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ public final class WizardrySounds {
|
||||
public static final SoundEvent BLOCK_PEDESTAL_CONQUER = createSound("block.pedestal.conquer");
|
||||
public static final SoundEvent BLOCK_LECTERN_LOCATE_SPELL = createSound("block.lectern.locate_spell");
|
||||
public static final SoundEvent BLOCK_RECEPTACLE_IGNITE = createSound("block.receptacle.ignite");
|
||||
public static final SoundEvent BLOCK_IMBUEMENT_ALTAR_IMBUE = createSound("block.imbuement_altar.imbue");
|
||||
|
||||
public static final SoundEvent ITEM_WAND_SWITCH_SPELL = createSound("item.wand.switch_spell");
|
||||
public static final SoundEvent ITEM_WAND_LEVELUP = createSound("item.wand.levelup");
|
||||
|
||||
Reference in New Issue
Block a user