2015-11-02 12:39:44 -08:00
|
|
|
package WayofTime.bloodmagic.api.ritual;
|
2015-10-31 13:47:43 -07:00
|
|
|
|
2017-02-12 17:00:18 -08:00
|
|
|
import WayofTime.bloodmagic.api.saving.SoulNetwork;
|
2017-08-15 21:30:48 -07:00
|
|
|
import WayofTime.bloodmagic.api.soul.EnumDemonWillType;
|
2015-11-02 17:45:11 -08:00
|
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
|
|
import net.minecraft.item.ItemStack;
|
2015-10-31 13:47:43 -07:00
|
|
|
import net.minecraft.util.EnumFacing;
|
2016-03-17 13:00:44 -07:00
|
|
|
import net.minecraft.util.math.BlockPos;
|
2015-10-31 13:47:43 -07:00
|
|
|
import net.minecraft.world.World;
|
2017-08-15 21:30:48 -07:00
|
|
|
|
|
|
|
import java.util.List;
|
2015-10-31 13:47:43 -07:00
|
|
|
|
2015-12-29 13:00:26 -08:00
|
|
|
/**
|
|
|
|
* This interface is for internal implementation only.
|
2017-08-15 21:30:48 -07:00
|
|
|
* <p>
|
2015-12-29 13:00:26 -08:00
|
|
|
* It is provided via the API for easy obtaining of basic data.
|
|
|
|
*/
|
2017-08-15 21:30:48 -07:00
|
|
|
public interface IMasterRitualStone {
|
2015-11-02 17:45:11 -08:00
|
|
|
String getOwner();
|
|
|
|
|
2017-02-12 17:00:18 -08:00
|
|
|
SoulNetwork getOwnerNetwork();
|
|
|
|
|
2015-12-26 16:49:25 -08:00
|
|
|
boolean activateRitual(ItemStack activationCrystal, EntityPlayer activator, Ritual ritual);
|
2015-10-31 13:47:43 -07:00
|
|
|
|
2015-12-26 16:49:25 -08:00
|
|
|
void performRitual(World world, BlockPos pos);
|
2015-10-31 13:47:43 -07:00
|
|
|
|
2015-12-26 16:49:25 -08:00
|
|
|
void stopRitual(Ritual.BreakType breakType);
|
2015-11-02 17:45:11 -08:00
|
|
|
|
2015-10-31 13:47:43 -07:00
|
|
|
int getCooldown();
|
|
|
|
|
2015-11-28 18:25:46 -08:00
|
|
|
void setCooldown(int cooldown);
|
|
|
|
|
2015-10-31 13:47:43 -07:00
|
|
|
void setActive(boolean active);
|
|
|
|
|
|
|
|
EnumFacing getDirection();
|
|
|
|
|
|
|
|
boolean areTanksEmpty();
|
|
|
|
|
|
|
|
int getRunningTime();
|
|
|
|
|
2016-01-03 08:30:59 -05:00
|
|
|
World getWorldObj();
|
2015-10-31 13:47:43 -07:00
|
|
|
|
2016-01-03 08:30:59 -05:00
|
|
|
BlockPos getBlockPos();
|
2016-04-10 21:19:18 -04:00
|
|
|
|
|
|
|
String getNextBlockRange(String range);
|
|
|
|
|
|
|
|
void provideInformationOfRitualToPlayer(EntityPlayer player);
|
|
|
|
|
|
|
|
void provideInformationOfRangeToPlayer(EntityPlayer player, String range);
|
|
|
|
|
2016-07-10 21:51:17 -04:00
|
|
|
void provideInformationOfWillConfigToPlayer(EntityPlayer player, List<EnumDemonWillType> typeList);
|
|
|
|
|
2016-04-11 15:36:27 -04:00
|
|
|
void setActiveWillConfig(EntityPlayer player, List<EnumDemonWillType> typeList);
|
2016-04-10 21:19:18 -04:00
|
|
|
|
|
|
|
boolean setBlockRangeByBounds(EntityPlayer player, String range, BlockPos offset1, BlockPos offset2);
|
2016-04-11 15:36:27 -04:00
|
|
|
|
2016-07-10 21:51:17 -04:00
|
|
|
List<EnumDemonWillType> getActiveWillConfig();
|
2015-10-31 13:47:43 -07:00
|
|
|
}
|