Readded the ritual "Focus of the Ellipsoid": creates a hollow ellipsoid from blocks provided in the connecting chest.
Also added the guide page for the Shard of Laputa.
This commit is contained in:
parent
58ca46b6bd
commit
467bcb4d52
8 changed files with 102 additions and 41 deletions
|
@ -9,61 +9,68 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
|||
|
||||
@Config(modid = BloodMagic.MODID, name = BloodMagic.MODID + "/" + BloodMagic.MODID, category = "")
|
||||
@Mod.EventBusSubscriber(modid = BloodMagic.MODID)
|
||||
public class ConfigHandler {
|
||||
public class ConfigHandler
|
||||
{
|
||||
|
||||
@Config.Comment({"General settings"})
|
||||
@Config.Comment({ "General settings" })
|
||||
public static ConfigGeneral general = new ConfigGeneral();
|
||||
@Config.Comment({"Blacklist options for various features"})
|
||||
@Config.Comment({ "Blacklist options for various features" })
|
||||
public static ConfigBlacklist blacklist = new ConfigBlacklist();
|
||||
@Config.Comment({"Value modifiers for various features"})
|
||||
@Config.Comment({ "Value modifiers for various features" })
|
||||
public static ConfigValues values = new ConfigValues();
|
||||
@Config.Comment({"Toggles for all rituals"})
|
||||
@Config.Comment({ "Toggles for all rituals" })
|
||||
public static ConfigRituals rituals = new ConfigRituals();
|
||||
@Config.Comment({"Settings that only pertain to the client"})
|
||||
@Config.Comment({ "Settings that only pertain to the client" })
|
||||
public static ConfigClient client = new ConfigClient();
|
||||
@Config.Comment({"Compatibility settings"})
|
||||
@Config.Comment({ "Compatibility settings" })
|
||||
public static ConfigCompat compat = new ConfigCompat();
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent event) {
|
||||
if (event.getModID().equals(BloodMagic.MODID)) {
|
||||
public static void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent event)
|
||||
{
|
||||
if (event.getModID().equals(BloodMagic.MODID))
|
||||
{
|
||||
ConfigManager.sync(event.getModID(), Config.Type.INSTANCE); // Sync config values
|
||||
MeteorConfigHandler.handleMeteors(false); // Reload meteors
|
||||
}
|
||||
}
|
||||
|
||||
public static class ConfigGeneral {
|
||||
@Config.Comment({"Enables extra information to be printed to the log.", "Warning: May drastically increase log size."})
|
||||
public static class ConfigGeneral
|
||||
{
|
||||
@Config.Comment({ "Enables extra information to be printed to the log.", "Warning: May drastically increase log size." })
|
||||
public boolean enableDebugLogging = false;
|
||||
@Config.Comment({"Enables extra information to be printed to the log."})
|
||||
@Config.Comment({ "Enables extra information to be printed to the log." })
|
||||
public boolean enableAPILogging = false;
|
||||
@Config.Comment({"Enables extra information to be printed to the log.", "Warning: May drastically increase log size."})
|
||||
@Config.Comment({ "Enables extra information to be printed to the log.", "Warning: May drastically increase log size." })
|
||||
public boolean enableVerboseAPILogging = false;
|
||||
}
|
||||
|
||||
public static class ConfigBlacklist {
|
||||
@Config.Comment({"Stops listed blocks and entities from being teleposed.", "Use the registry name of the block or entity. Vanilla objects do not require the modid.", "If a block is specified, you can list the variants to only blacklist a given state."})
|
||||
public String[] teleposer = {"bedrock", "mob_spawner"};
|
||||
@Config.Comment({"Stops listed blocks from being transposed.", "Use the registry name of the block. Vanilla blocks do not require the modid."})
|
||||
public String[] transposer = {"bedrock", "mob_spawner"};
|
||||
@Config.Comment({"Stops the listed entities from being used in the Well of Suffering.", "Use the registry name of the entity. Vanilla entities do not require the modid."})
|
||||
public static class ConfigBlacklist
|
||||
{
|
||||
@Config.Comment({ "Stops listed blocks and entities from being teleposed.", "Use the registry name of the block or entity. Vanilla objects do not require the modid.", "If a block is specified, you can list the variants to only blacklist a given state." })
|
||||
public String[] teleposer = { "bedrock", "mob_spawner" };
|
||||
@Config.Comment({ "Stops listed blocks from being transposed.", "Use the registry name of the block. Vanilla blocks do not require the modid." })
|
||||
public String[] transposer = { "bedrock", "mob_spawner" };
|
||||
@Config.Comment({ "Stops the listed entities from being used in the Well of Suffering.", "Use the registry name of the entity. Vanilla entities do not require the modid." })
|
||||
public String[] wellOfSuffering = {};
|
||||
}
|
||||
|
||||
public static class ConfigValues {
|
||||
@Config.Comment({"Declares the amount of LP gained per HP sacrificed for the given entity.", "Setting the value to 0 will blacklist it.", "Use the registry name of the entity followed by a ';' and then the value you want.", "Vanilla entities do not require the modid."})
|
||||
public String[] sacrificialValues = {"villager;100", "slime;15", "enderman;10", "cow;100", "chicken;100", "horse;100", "sheep;100", "wolf;100", "ocelot;100", "pig;100", "rabbit;100"};
|
||||
@Config.Comment({"Amount of LP the Coat of Arms should provide for each damage dealt."})
|
||||
public static class ConfigValues
|
||||
{
|
||||
@Config.Comment({ "Declares the amount of LP gained per HP sacrificed for the given entity.", "Setting the value to 0 will blacklist it.", "Use the registry name of the entity followed by a ';' and then the value you want.", "Vanilla entities do not require the modid." })
|
||||
public String[] sacrificialValues = { "villager;100", "slime;15", "enderman;10", "cow;100", "chicken;100", "horse;100", "sheep;100", "wolf;100", "ocelot;100", "pig;100", "rabbit;100" };
|
||||
@Config.Comment({ "Amount of LP the Coat of Arms should provide for each damage dealt." })
|
||||
@Config.RangeInt(min = 0, max = 100)
|
||||
public int coatOfArmsConversion = 20;
|
||||
@Config.Comment({"Amount of LP the Sacrificial Dagger should provide for each damage dealt."})
|
||||
@Config.Comment({ "Amount of LP the Sacrificial Dagger should provide for each damage dealt." })
|
||||
@Config.RangeInt(min = 0, max = 10000)
|
||||
public int sacrificialDaggerConversion = 100;
|
||||
@Config.Comment({"Will rewrite any default meteor types with new versions.", "Disable this if you want any of your changes to stay, or do not want default meteor types regenerated."})
|
||||
@Config.Comment({ "Will rewrite any default meteor types with new versions.", "Disable this if you want any of your changes to stay, or do not want default meteor types regenerated." })
|
||||
public boolean shouldResyncMeteors = true;
|
||||
}
|
||||
|
||||
public static class ConfigRituals {
|
||||
public static class ConfigRituals
|
||||
{
|
||||
public boolean ritualAnimalGrowth = true;
|
||||
public boolean ritualContainment = true;
|
||||
public boolean ritualCrushing = true;
|
||||
|
@ -93,33 +100,38 @@ public class ConfigHandler {
|
|||
public boolean ritualPortal = true;
|
||||
public boolean ritualMeteor = true;
|
||||
public boolean ritualDowngrade = true;
|
||||
public boolean ritualEllipsoid = true;
|
||||
public ConfigImperfectRituals imperfect = new ConfigImperfectRituals();
|
||||
}
|
||||
|
||||
public static class ConfigImperfectRituals {
|
||||
public static class ConfigImperfectRituals
|
||||
{
|
||||
public boolean imperfectRitualNight = true;
|
||||
public boolean imperfectRitualRain = true;
|
||||
public boolean imperfectRitualResistance = true;
|
||||
public boolean imperfectRitualZombie = true;
|
||||
}
|
||||
|
||||
public static class ConfigClient {
|
||||
@Config.Comment({"Always render the beams between routing nodes.", "If disabled, the beams will only render while the Node Router is held."})
|
||||
public static class ConfigClient
|
||||
{
|
||||
@Config.Comment({ "Always render the beams between routing nodes.", "If disabled, the beams will only render while the Node Router is held." })
|
||||
public boolean alwaysRenderRoutingLines = false;
|
||||
@Config.Comment({"Completely hide spectral blocks from view.", "If disabled, a transparent block will be displayed."})
|
||||
@Config.Comment({ "Completely hide spectral blocks from view.", "If disabled, a transparent block will be displayed." })
|
||||
public boolean invisibleSpectralBlocks = true;
|
||||
@Config.Comment({"When cycling through slots, the Sigil of Holding will skip over empty slots and move to the next occupied one.", "If disabled, it will behave identically to the default hotbar."})
|
||||
@Config.Comment({ "When cycling through slots, the Sigil of Holding will skip over empty slots and move to the next occupied one.", "If disabled, it will behave identically to the default hotbar." })
|
||||
public boolean sigilHoldingSkipsEmptySlots = false;
|
||||
}
|
||||
|
||||
public static class ConfigCompat {
|
||||
@Config.Comment({"The display mode to use when looking at a Blood Altar.", "ALWAYS - Always display information.", "SIGIL_HELD - Only display information when a Divination or Seers sigil is held in either hand.", "SIGIL_CONTAINED - Only display information when a Divination or Seers sigil is somewhere in the inventory."})
|
||||
public static class ConfigCompat
|
||||
{
|
||||
@Config.Comment({ "The display mode to use when looking at a Blood Altar.", "ALWAYS - Always display information.", "SIGIL_HELD - Only display information when a Divination or Seers sigil is held in either hand.", "SIGIL_CONTAINED - Only display information when a Divination or Seers sigil is somewhere in the inventory." })
|
||||
public AltarDisplayMode wailaAltarDisplayMode = AltarDisplayMode.SIGIL_HELD;
|
||||
|
||||
public enum AltarDisplayMode {
|
||||
public enum AltarDisplayMode
|
||||
{
|
||||
ALWAYS,
|
||||
SIGIL_HELD,
|
||||
SIGIL_CONTAINED,;
|
||||
SIGIL_CONTAINED, ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -118,7 +118,7 @@ public class AlchemyArrayEffectLaputa extends AlchemyArrayEffect
|
|||
|
||||
public int getRandomRadius(Random rand)
|
||||
{
|
||||
return rand.nextInt(4) + 4;
|
||||
return rand.nextInt(5) + 4;
|
||||
}
|
||||
|
||||
public int getRandomHeightOffset(Random rand)
|
||||
|
|
|
@ -113,6 +113,16 @@ public class CategoryAlchemy
|
|||
standardTurretPages.addAll(PageHelper.pagesForLongText(TextHelper.localize(keyBase + "standardTurret" + ".info"), 370));
|
||||
entries.put(new ResourceLocation(keyBase + "standardTurret"), new EntryText(standardTurretPages, TextHelper.localize(keyBase + "standardTurret"), true));
|
||||
|
||||
List<IPage> laputaPages = new ArrayList<>();
|
||||
|
||||
PageAlchemyArray laputaRecipePage = BookUtils.getAlchemyPage("laputa");
|
||||
if (laputaRecipePage != null)
|
||||
{
|
||||
laputaPages.add(laputaRecipePage);
|
||||
}
|
||||
laputaPages.addAll(PageHelper.pagesForLongText(TextHelper.localize(keyBase + "laputa" + ".info"), 370));
|
||||
entries.put(new ResourceLocation(keyBase + "laputa"), new EntryText(laputaPages, TextHelper.localize(keyBase + "laputa"), true));
|
||||
|
||||
List<IPage> buffPages = new ArrayList<>();
|
||||
|
||||
buffPages.addAll(PageHelper.pagesForLongText(TextHelper.localize(keyBase + "buff" + ".info"), 370));
|
||||
|
|
|
@ -123,7 +123,7 @@ public class ModRituals
|
|||
RitualRegistry.registerRitual(downgradeRitual, ConfigHandler.rituals.ritualDowngrade);
|
||||
|
||||
ellipsoidRitual = new RitualEllipsoid();
|
||||
RitualRegistry.registerRitual(ellipsoidRitual, false);
|
||||
RitualRegistry.registerRitual(ellipsoidRitual, ConfigHandler.rituals.ritualEllipsoid);
|
||||
|
||||
RitualCrushing.registerCuttingFluid(ItemCuttingFluid.FluidType.BASIC.getStack(), 250, 0.5);
|
||||
RitualCrushing.registerCuttingFluid(ItemCuttingFluid.FluidType.EXPLOSIVE.getStack(), 25, 0.05);
|
||||
|
|
|
@ -198,7 +198,7 @@ public class RitualEllipsoid extends Ritual
|
|||
@Override
|
||||
public int getRefreshCost()
|
||||
{
|
||||
return 0;
|
||||
return 5;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -217,8 +217,43 @@ public class RitualEllipsoid extends Ritual
|
|||
@Override
|
||||
public void gatherComponents(Consumer<RitualComponent> components)
|
||||
{
|
||||
addCornerRunes(components, 1, 0, EnumRuneType.WATER);
|
||||
addCornerRunes(components, 1, 1, EnumRuneType.WATER);
|
||||
addCornerRunes(components, 1, 0, EnumRuneType.DUSK);
|
||||
|
||||
addRune(components, 4, 0, 0, EnumRuneType.FIRE);
|
||||
addRune(components, 5, 0, 0, EnumRuneType.FIRE);
|
||||
addRune(components, 5, 0, -1, EnumRuneType.FIRE);
|
||||
addRune(components, 5, 0, -2, EnumRuneType.FIRE);
|
||||
addRune(components, -4, 0, 0, EnumRuneType.FIRE);
|
||||
addRune(components, -5, 0, 0, EnumRuneType.FIRE);
|
||||
addRune(components, -5, 0, 1, EnumRuneType.FIRE);
|
||||
addRune(components, -5, 0, 2, EnumRuneType.FIRE);
|
||||
|
||||
addRune(components, 0, 0, 4, EnumRuneType.AIR);
|
||||
addRune(components, 0, 0, 5, EnumRuneType.AIR);
|
||||
addRune(components, 1, 0, 5, EnumRuneType.AIR);
|
||||
addRune(components, 2, 0, 5, EnumRuneType.AIR);
|
||||
addRune(components, 0, 0, -4, EnumRuneType.AIR);
|
||||
addRune(components, 0, 0, -5, EnumRuneType.AIR);
|
||||
addRune(components, -1, 0, -5, EnumRuneType.AIR);
|
||||
addRune(components, -2, 0, -5, EnumRuneType.AIR);
|
||||
|
||||
addRune(components, 3, 0, 1, EnumRuneType.EARTH);
|
||||
addRune(components, 3, 0, 2, EnumRuneType.EARTH);
|
||||
addRune(components, 3, 0, 3, EnumRuneType.EARTH);
|
||||
addRune(components, 2, 0, 3, EnumRuneType.EARTH);
|
||||
addRune(components, -3, 0, -1, EnumRuneType.EARTH);
|
||||
addRune(components, -3, 0, -2, EnumRuneType.EARTH);
|
||||
addRune(components, -3, 0, -3, EnumRuneType.EARTH);
|
||||
addRune(components, -2, 0, -3, EnumRuneType.EARTH);
|
||||
|
||||
addRune(components, 1, 0, -3, EnumRuneType.WATER);
|
||||
addRune(components, 2, 0, -3, EnumRuneType.WATER);
|
||||
addRune(components, 3, 0, -3, EnumRuneType.WATER);
|
||||
addRune(components, 3, 0, -2, EnumRuneType.WATER);
|
||||
addRune(components, -1, 0, 3, EnumRuneType.WATER);
|
||||
addRune(components, -2, 0, 3, EnumRuneType.WATER);
|
||||
addRune(components, -3, 0, 3, EnumRuneType.WATER);
|
||||
addRune(components, -3, 0, 2, EnumRuneType.WATER);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue