Skip to content

Commit

Permalink
AbyssalCraft 1.8.0
Browse files Browse the repository at this point in the history
First things first, HAPPY BIRTHDAY ABYSSALCRAFT!
New Thaumcraft integration, bugsplats, memory leak found and removed,
coin engraving will now be a thing. Fixes #22 and implements the feature
suggested in #17
  • Loading branch information
Shinoow committed Nov 29, 2014
1 parent fcb166b commit c2c7618
Show file tree
Hide file tree
Showing 508 changed files with 12,211 additions and 5,796 deletions.
7 changes: 0 additions & 7 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@ processResources
expand ([
'version':project.version,
'acversion':project.props.ac_version,
'coreversion':project.props.core_version,
'mcversion':project.props.mc_version,
'forgeversion':project.props.forge_version
])
Expand All @@ -74,12 +73,6 @@ processResources
exclude 'version.properties'
}
}
jar {
manifest {
attributes("FMLCorePlugin": "com.shinoow.abyssalcraft.core.ACCorePlugin")
attributes("FMLCorePluginContainsFMLMod": "true")
}
}

task srcJar(type: Jar) {
from sourceSets.main.allSource
Expand Down
3 changes: 1 addition & 2 deletions build.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
mc_version=1.7.2
forge_version=10.12.2.1147
ac_version=1.7.8.1
core_version=1.2.0
ac_version=1.8.0
Binary file removed mods/Core_dummy.jar
Binary file not shown.
22 changes: 22 additions & 0 deletions src/api/java/thaumcraft/api/IGoggles.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package thaumcraft.api;

import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;

/**
*
* @author Azanor
*
* Equipped head slot items that extend this class will be able to perform most functions that
* goggles of revealing can apart from view nodes which is handled by IRevealer.
*
*/

public interface IGoggles {

/*
* If this method returns true things like block essentia contents will be shown.
*/
public boolean showIngamePopups(ItemStack itemstack, EntityLivingBase player);

}
13 changes: 13 additions & 0 deletions src/api/java/thaumcraft/api/IRepairable.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package thaumcraft.api;



/**
* @author Azanor
* Items, armor and tools with this interface can receive the Repair enchantment.
* Repairs 1 point of durability every 10 seconds (2 for repair II)
*/
public interface IRepairable {


}
17 changes: 17 additions & 0 deletions src/api/java/thaumcraft/api/IRepairableExtended.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package thaumcraft.api;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;



/**
* @author Azanor
* Items, armor and tools with this interface can receive the Repair enchantment.
* Repairs 1 point of durability every 10 seconds (2 for repair II)
*/
public interface IRepairableExtended extends IRepairable {

public boolean doRepair(ItemStack stack, EntityPlayer player, int enchantlevel);

}
23 changes: 23 additions & 0 deletions src/api/java/thaumcraft/api/IRunicArmor.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package thaumcraft.api;

import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;

/**
*
* @author Azanor
*
* Armor or bauble slot items that implement this interface can provide runic shielding.
* Recharging, hardening, etc. is handled internally by thaumcraft.
*
*/

public interface IRunicArmor {

/**
* returns how much charge this item can provide. This is the base shielding value - any hardening is stored and calculated internally.
*/
public int getRunicCharge(ItemStack itemstack);


}
14 changes: 14 additions & 0 deletions src/api/java/thaumcraft/api/IScribeTools.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package thaumcraft.api;


/**
*
* @author Azanor
*
* Interface used to identify scribing tool items used in research table
*
*/

public interface IScribeTools {

}
20 changes: 20 additions & 0 deletions src/api/java/thaumcraft/api/IVisDiscountGear.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package thaumcraft.api;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import thaumcraft.api.aspects.Aspect;




/**
* @author Azanor
* ItemArmor with this interface will grant a discount to the vis cost of actions the wearer performs with casting wands.
* The amount returned is the percentage by which the cost is discounted. There is a built-int max discount of 50%, but
* individual items really shouldn't have a discount more than 5%
*/
public interface IVisDiscountGear {

int getVisDiscount(ItemStack stack, EntityPlayer player, Aspect aspect);

}
70 changes: 70 additions & 0 deletions src/api/java/thaumcraft/api/ItemApi.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
package thaumcraft.api;

import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.FMLLog;

/**
* @author Azanor
*
* This is used to gain access to the items in my mod.
* I only give some examples and it will probably still
* require a bit of work for you to get hold of everything you need.
*
*/
public class ItemApi {

public static ItemStack getItem(String itemString, int meta) {
ItemStack item = null;

try {
String itemClass = "thaumcraft.common.config.ConfigItems";
Object obj = Class.forName(itemClass).getField(itemString).get(null);
if (obj instanceof Item) {
item = new ItemStack((Item) obj,1,meta);
} else if (obj instanceof ItemStack) {
item = (ItemStack) obj;
}
} catch (Exception ex) {
FMLLog.warning("[Thaumcraft] Could not retrieve item identified by: " + itemString);
}

return item;
}

public static ItemStack getBlock(String itemString, int meta) {
ItemStack item = null;

try {
String itemClass = "thaumcraft.common.config.ConfigBlocks";
Object obj = Class.forName(itemClass).getField(itemString).get(null);
if (obj instanceof Block) {
item = new ItemStack((Block) obj,1,meta);
} else if (obj instanceof ItemStack) {
item = (ItemStack) obj;
}
} catch (Exception ex) {
FMLLog.warning("[Thaumcraft] Could not retrieve block identified by: " + itemString);
}

return item;
}

/**
*
* Some examples
*
* Casting Wands:
* itemWandCasting
*
* Resources:
* itemEssence, itemWispEssence, itemResource, itemShard, itemNugget,
* itemNuggetChicken, itemNuggetBeef, itemNuggetPork, itemTripleMeatTreat
*
* Research:
* itemResearchNotes, itemInkwell, itemThaumonomicon
*
*/

}
21 changes: 21 additions & 0 deletions src/api/java/thaumcraft/api/ItemRunic.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package thaumcraft.api;

import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

public class ItemRunic extends Item implements IRunicArmor {

int charge;

public ItemRunic (int charge)
{
super();
this.charge = charge;
}

@Override
public int getRunicCharge(ItemStack itemstack) {
return charge;
}

}
Loading

0 comments on commit c2c7618

Please sign in to comment.