mirror of
https://github.com/GTNewHorizons/ForbiddenMagic.git
synced 2026-11-13 16:54:02 +00:00
Witchwood Wand and Vinteum Cap
This commit is contained in:
1 parent
17a912feb5
commit
333f41baed
13 files changed
+107
-16
No files matched your search
@@ -26,18 +26,6 @@ item.MorphPickaxe.name=Chameleon Pickaxe
|
||||
item.MorphSword.name=Chameleon Sword
|
||||
item.MorphShovel.name=Chameleon Shovel
|
||||
item.MorphAxe.name=Chameleon Axe
|
||||
item.WandCores.tainted.name=Tainted Rod
|
||||
item.WandCores.infernal.name=Infernal Rod
|
||||
item.WandCores.soul.name=Eldritch Rod
|
||||
item.WandCores.blood.name=Bloody Rod
|
||||
item.WandCaps.alchemical.name=Alchemical Cap
|
||||
item.Wand.tainted.rod=Tainted
|
||||
item.Wand.infernal.rod=Infernal
|
||||
item.Wand.neutronium.rod=Cosmic Neutronium
|
||||
item.Wand.soul.rod=Eldritch
|
||||
item.Wand.blood.rod=Blood
|
||||
item.Wand.orichalcum.cap=Orichalcum Studded
|
||||
item.Wand.alchemical.cap=Alchemically Crowned
|
||||
item.FMResource.0.name=Emerald Fragment
|
||||
item.FMResource.1.name=Shadow Ink
|
||||
item.MobCrystalEmpty.name=Blank Imprinting Crystal
|
||||
@@ -45,6 +33,24 @@ item.MobCrystal.name=Imprinted Crystal
|
||||
item.DiabolistFork.name=Diabolist Fork
|
||||
item.DiabolistSpork.name=Spork of Doom
|
||||
#
|
||||
# Wand components
|
||||
item.Wand.tainted.rod=Tainted
|
||||
item.Wand.infernal.rod=Infernal
|
||||
item.Wand.neutronium.rod=Cosmic Neutronium
|
||||
item.Wand.soul.rod=Eldritch
|
||||
item.Wand.blood.rod=Blood
|
||||
item.Wand.witchwood.rod=Witchwood
|
||||
item.Wand.orichalcum.cap=Orichalcum Studded
|
||||
item.Wand.alchemical.cap=Alchemically Crowned
|
||||
item.Wand.vinteum.cap=Vinteum Infused
|
||||
item.WandCores.tainted.name=Tainted Rod
|
||||
item.WandCores.infernal.name=Infernal Rod
|
||||
item.WandCores.soul.name=Eldritch Rod
|
||||
item.WandCores.blood.name=Bloody Rod
|
||||
item.WandCores.witchwood.name=Witchwood Rod
|
||||
item.WandCaps.alchemical.name=Alchemical Cap
|
||||
item.WandCaps.vinteum.name=Vinteum Cap
|
||||
#
|
||||
# Blocks
|
||||
tile.ArcaneCake.name=Thaumic Cake
|
||||
tile.InkFlower.name=Umbral Rose
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 684 B |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 3,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
1
|
||||
]
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 362 B |
Binary file not shown.
|
After Width: | Height: | Size: 353 B |
Binary file not shown.
|
After Width: | Height: | Size: 874 B |
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
@@ -38,6 +38,7 @@ public class Compat {
|
||||
public static boolean natura = false;
|
||||
public static boolean pb = false;
|
||||
public static boolean bm = false;
|
||||
public static boolean am2 = false;
|
||||
|
||||
public static int tabletID = -1;
|
||||
|
||||
@@ -55,6 +56,8 @@ public class Compat {
|
||||
pb = true;
|
||||
if(Loader.isModLoaded("AWWayofTime"))
|
||||
bm = true;
|
||||
if(Loader.isModLoaded("arsmagica2"))
|
||||
am2 = true;
|
||||
}
|
||||
|
||||
public static void compatify()
|
||||
|
||||
@@ -73,7 +73,9 @@ public class ForbiddenRecipes
|
||||
|
||||
while(i$1.hasNext()) {
|
||||
String rodtag = (String)i$1.next();
|
||||
if((rodtag.equals("tainted") || rodtag.equals("infernal") || rodtag.equals("soul")) && !rodtag.equals("mercurial") && !rodtag.equals("neutronium") && !captag.equals("orichalcum")){
|
||||
if((rodtag.equals("tainted") || rodtag.equals("infernal") || rodtag.equals("soul") || rodtag.equals("blood") || rodtag.equals("witchwood") || captag.equals("alchemical") || captag.equals("vinteum"))
|
||||
&& !rodtag.equals("mercurial") && !rodtag.equals("neutronium") && !captag.equals("orichalcum"))
|
||||
{
|
||||
int cost = ((WandCap)WandCap.caps.get(captag)).getCraftCost() * ((WandRod)WandRod.rods.get(rodtag)).getCraftCost();
|
||||
ItemStack wand = ItemApi.getItem("itemWandCasting", cost);
|
||||
((ItemWandCasting)wand.getItem()).setCap(wand, (WandCap)WandCap.caps.get(captag));
|
||||
@@ -86,6 +88,14 @@ public class ForbiddenRecipes
|
||||
res = "ROD_infernal";
|
||||
else if(rodtag.equals("soul"))
|
||||
res = "ROD_soul";
|
||||
else if(rodtag.equals("blood"))
|
||||
res = "ROD_blood";
|
||||
else if(rodtag.equals("witchwood"))
|
||||
res = "ROD_witchwood";
|
||||
else if(captag.equals("alchemical"))
|
||||
res = "CAP_alchemical";
|
||||
else if(captag.equals("vinteum"))
|
||||
res = "CAP_vinteum";
|
||||
ForbiddenResearch.recipes.put(key, ThaumcraftApi.addArcaneCraftingRecipe(res, wand, (new AspectList()).add(Aspect.AIR, cost).add(Aspect.ORDER, cost).add(Aspect.EARTH, cost).add(Aspect.FIRE, cost).add(Aspect.WATER, cost).add(Aspect.ENTROPY, cost), new Object[]{" C", " R ", "C ", Character.valueOf('C'), ((WandCap)WandCap.caps.get(captag)).getItem(), Character.valueOf('R'), ((WandRod)WandRod.rods.get(rodtag)).getItem()}));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,8 +37,10 @@ public class ForbiddenItems
|
||||
public static WandRod WAND_ROD_NEUTRONIUM;
|
||||
public static WandRod WAND_ROD_SOUL;
|
||||
public static WandRod WAND_ROD_BLOOD;
|
||||
public static WandRod WAND_ROD_WITCHWOOD;
|
||||
public static WandCap WAND_CAP_ORICHALCUM;
|
||||
public static WandCap WAND_CAP_ALCHEMICAL;
|
||||
public static WandCap WAND_CAP_VINTEUM;
|
||||
|
||||
public static void addItems()
|
||||
{
|
||||
@@ -85,8 +87,10 @@ public class ForbiddenItems
|
||||
WAND_ROD_SOUL = new WandRod("soul", 100, new ItemStack(wandCore, 1, 2), 12, new SoulWandUpdate(), new ResourceLocation("forbidden", "textures/models/wand_rod_soul.png"));
|
||||
WAND_ROD_SOUL.setGlowing(true);
|
||||
WAND_ROD_BLOOD = new WandRod("blood", 100, new ItemStack(wandCore, 1, 3), 12, new BloodWandUpdate(), new ResourceLocation("forbidden", "textures/models/wand_rod_blood.png"));
|
||||
WAND_ROD_WITCHWOOD = new WandRod("witchwood", 100, new ItemStack(wandCore, 1, 4), 12, new ManaWandUpdate(), new ResourceLocation("forbidden", "textures/models/wand_rod_witchwood.png"));
|
||||
WAND_CAP_ORICHALCUM = new DarkWandCap("orichalcum", 0.0F, new ItemStack(Block.commandBlock, 1), 1000, new ResourceLocation("forbidden", "textures/models/wand_cap_orichalcum.png"));
|
||||
WAND_CAP_ALCHEMICAL = new DarkWandCap("alchemical", 0.95F, Arrays.asList(new Aspect[]{Aspect.WATER}), 0.8F, new ItemStack(wandCap, 1, 0), 7, new ResourceLocation("forbidden", "textures/models/wand_cap_alchemical.png"));
|
||||
WAND_CAP_VINTEUM = new DarkWandCap("vinteum", 0.9F, new ItemStack(wandCap, 1, 1), 7, new ResourceLocation("forbidden", "textures/models/wand_cap_vinteum.png"));
|
||||
|
||||
resource = new ItemResource(Config.resourceID).setUnlocalizedName("FMResource");
|
||||
GameRegistry.registerItem(resource, "FMResource");
|
||||
|
||||
@@ -18,7 +18,7 @@ import thaumcraft.common.items.wands.ItemWandCasting;
|
||||
|
||||
public class ItemWandCaps extends Item {
|
||||
|
||||
public final String[] types = {"alchemical"};
|
||||
public final String[] types = {"alchemical", "vinteum"};
|
||||
public Icon[] icon;
|
||||
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@ import thaumcraft.common.items.wands.ItemWandCasting;
|
||||
|
||||
public class ItemWandCores extends Item {
|
||||
|
||||
public final String[] types = {"tainted", "infernal", "soul", "blood"};
|
||||
public Icon[] icon = new Icon[4];
|
||||
public final String[] types = {"tainted", "infernal", "soul", "blood", "witchwood"};
|
||||
public Icon[] icon;
|
||||
|
||||
|
||||
public ItemWandCores(int par1) {
|
||||
@@ -32,6 +32,7 @@ public class ItemWandCores extends Item {
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void registerIcons(IconRegister ir) {
|
||||
icon = new Icon[types.length];
|
||||
for(int x = 0; x < types.length; x++)
|
||||
this.icon[x] = ir.registerIcon("forbidden:wand_rod_" + types[x]);
|
||||
}
|
||||
@@ -73,6 +74,13 @@ public class ItemWandCores extends Item {
|
||||
((ItemWandCasting)creative.getItem()).setRod(blood, (WandRod)WandRod.rods.get("blood"));
|
||||
par3List.add(blood);
|
||||
}
|
||||
if(Compat.am2)
|
||||
{
|
||||
ItemStack mana = ItemApi.getItem("itemWandCasting", 72);
|
||||
((ItemWandCasting)creative.getItem()).setCap(mana, (WandCap)WandCap.caps.get("vinteum"));
|
||||
((ItemWandCasting)creative.getItem()).setRod(mana, (WandRod)WandRod.rods.get("witchwood"));
|
||||
par3List.add(mana);
|
||||
}
|
||||
}
|
||||
|
||||
public String getUnlocalizedName(ItemStack par1ItemStack) {
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.spiteful.forbidden.items;
|
||||
|
||||
import com.spiteful.forbidden.Config;
|
||||
import com.spiteful.forbidden.Compat;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.api.wands.IWandRodOnUpdate;
|
||||
import thaumcraft.common.items.wands.ItemWandCasting;
|
||||
import am2.api.ArsMagicaApi;
|
||||
import am2.api.IExtendedProperties;
|
||||
|
||||
public class ManaWandUpdate implements IWandRodOnUpdate {
|
||||
|
||||
Aspect primals[] = Aspect.getPrimalAspects().toArray(new Aspect[0]);
|
||||
|
||||
public void onUpdate(ItemStack itemstack, EntityPlayer player) {
|
||||
if(Compat.am2)
|
||||
{
|
||||
if(player.ticksExisted % 100 == 0){
|
||||
|
||||
IExtendedProperties prop = ArsMagicaApi.instance.getExtendedProperties(player);
|
||||
|
||||
float cost;
|
||||
if(((ItemWandCasting)itemstack.getItem()).getCap(itemstack).getTag().equals("vinteum"))
|
||||
cost = 90.0F;
|
||||
else
|
||||
cost = 150.0F;
|
||||
|
||||
if(prop == null || prop.getCurrentMana() <= 0)
|
||||
return;
|
||||
|
||||
|
||||
for(int x = 0;x < primals.length;x++){
|
||||
if(((ItemWandCasting)itemstack.getItem()).getVis(itemstack, primals[x]) < ((ItemWandCasting)itemstack.getItem()).getMaxVis(itemstack)) {
|
||||
if(prop.getCurrentMana() > cost)
|
||||
{
|
||||
prop.setCurrentMana(prop.getCurrentMana() - cost);
|
||||
((ItemWandCasting)itemstack.getItem()).addVis(itemstack, primals[x], 1, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user