2016-01-09 10:47:36 -05:00
|
|
|
package WayofTime.bloodmagic.api.soul;
|
|
|
|
|
|
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
|
|
|
|
public interface IDemonWill
|
|
|
|
{
|
2016-03-02 12:56:57 -08:00
|
|
|
/**
|
|
|
|
* Obtains the amount of Will an ItemStack contains.
|
2016-03-16 18:41:06 -04:00
|
|
|
*
|
2016-03-02 12:56:57 -08:00
|
|
|
* @param willStack
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The stack to retrieve the Will from
|
|
|
|
*
|
2016-03-02 12:56:57 -08:00
|
|
|
* @return - The amount of Will an ItemStack contains
|
|
|
|
*/
|
|
|
|
double getWill(ItemStack willStack);
|
2016-01-09 10:47:36 -05:00
|
|
|
|
2016-03-02 12:56:57 -08:00
|
|
|
/**
|
|
|
|
* Sets the amount of Will in a given ItemStack.
|
2016-03-16 18:41:06 -04:00
|
|
|
*
|
2016-03-02 12:56:57 -08:00
|
|
|
* @param willStack
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The ItemStack of the Will
|
2016-03-02 12:56:57 -08:00
|
|
|
* @param will
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The amount of will to set the stack to
|
2016-03-02 12:56:57 -08:00
|
|
|
*/
|
|
|
|
void setWill(ItemStack willStack, double will);
|
2016-01-09 10:47:36 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Drains the demonic will from the willStack. If all of the will is
|
|
|
|
* drained, the willStack will be removed.
|
|
|
|
*
|
|
|
|
* @param willStack
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The ItemStack of the will
|
2016-01-09 10:47:36 -05:00
|
|
|
* @param drainAmount
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The amount of Will to drain
|
|
|
|
*
|
2016-01-09 10:47:36 -05:00
|
|
|
* @return The amount of will drained.
|
|
|
|
*/
|
2016-03-02 12:56:57 -08:00
|
|
|
double drainWill(ItemStack willStack, double drainAmount);
|
2016-01-09 10:47:36 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Creates a new ItemStack with the specified number of will. Implementation
|
|
|
|
* should respect the number requested.
|
|
|
|
*
|
|
|
|
* @param meta
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The meta of the ItemStack to create
|
2016-01-09 10:47:36 -05:00
|
|
|
* @param number
|
2016-03-16 18:41:06 -04:00
|
|
|
* - The amount of Will to create the Stack with.
|
|
|
|
*
|
2016-03-02 12:56:57 -08:00
|
|
|
* @return - An ItemStack with the set amount of Will
|
2016-01-09 10:47:36 -05:00
|
|
|
*/
|
2016-03-02 12:56:57 -08:00
|
|
|
ItemStack createWill(int meta, double number);
|
2016-01-09 10:47:36 -05:00
|
|
|
}
|