Merge branch 'cosmo-main'

This commit is contained in:
Gæmer
2025-01-24 19:13:16 +02:00
86 changed files with 1535 additions and 348 deletions

View File

@@ -1,4 +1,5 @@
{ {
"java.configuration.updateBuildConfiguration": "automatic", "java.configuration.updateBuildConfiguration": "automatic",
"java.compile.nullAnalysis.mode": "automatic" "java.compile.nullAnalysis.mode": "automatic",
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx2G -Xms100m -Xlog:disable"
} }

View File

@@ -1,3 +1,12 @@
# Changes # Changes
- changed namespace of 'monarchpowers' directory to 'monarch-powers' to fit convention. ## 1.20.1-1.0.6
- added 'farmland' to list of blocks that the Blight will turn to coarse dirt upon stepping on it. - Fixed bug which caused the Monarch's solar energy to not be functional.
- Changed texture of the cotton crop.
- Changed texture of the cotton ball.
- Added Item "Ghostly Cloth".
- Renamed java class "sun_totem" to "sunTotem" to fit convention.
- added robes
- added the munch
- mobs are now passive to florian
- registered items related to ghostly armour
- added a model for ghostly armour

View File

@@ -1,5 +1,5 @@
plugins { plugins {
id 'fabric-loom' version '1.5-SNAPSHOT' id 'fabric-loom' version '1.9-SNAPSHOT'
id 'maven-publish' id 'maven-publish'
} }
@@ -32,6 +32,21 @@ repositories {
name "jitpack" name "jitpack"
url "https://jitpack.io" url "https://jitpack.io"
} }
maven {
name = 'GeckoLib'
url 'https://dl.cloudsmith.io/public/geckolib3/geckolib/maven/'
content {
includeGroup("software.bernie.geckolib")
}
}
maven {
name = 'GeckoLib'
url 'https://dl.cloudsmith.io/public/geckolib3/geckolib/maven/'
content {
includeGroupByRegex("software\\.bernie.*")
includeGroup("com.eliotlash.mclib")
}
}
} }
dependencies { dependencies {
@@ -40,12 +55,16 @@ dependencies {
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
modImplementation "com.terraformersmc:modmenu:${project.modmenu_version}" modImplementation "com.terraformersmc:modmenu:${project.modmenu_version}"
modImplementation "com.github.apace100:origins-fabric:${project.origins_version}" modImplementation "com.github.apace100:origins-fabric:${project.origins_version}"
modImplementation "com.github.apace100:apoli:${project.apoli_version}" modImplementation "com.github.apace100:apoli:${project.apoli_version}"
modApi("com.github.Virtuoel:Pehkui:${pehkui_version}", { modApi("com.github.Virtuoel:Pehkui:${pehkui_version}", {
exclude group: "net.fabricmc.fabric-api" exclude group: "net.fabricmc.fabric-api"
}) })
modImplementation("software.bernie.geckolib:geckolib-fabric-${minecraft_version}:${geckolib_version}")
implementation("com.eliotlash.mclib:mclib:20")
} }
processResources { processResources {

View File

@@ -4,16 +4,17 @@ org.gradle.jvmargs=-Xmx2G
# Fabric Properties # Fabric Properties
minecraft_version=1.20.1 minecraft_version=1.20.1
yarn_mappings=1.20.1+build.10 yarn_mappings=1.20.1+build.10
loader_version=0.15.6 loader_version=0.16.10
# Mod Properties # Mod Properties
mod_version=1.20.1-1.0.5 mod_version=1.20.1-1.0.6
maven_group=com.smithy maven_group=com.smithy
archives_base_name=TerraOriginum archives_base_name=TerraOriginum
# Dependencies # Dependencies
fabric_version=0.91.0+1.20.1 fabric_version=0.92.3+1.20.1
modmenu_version=7.2.2 modmenu_version=7.2.2
pehkui_version=3.7.8 pehkui_version=3.7.8
origins_version=v1.10.0 origins_version=v1.10.0
apoli_version=2.9.0 apoli_version=2.9.0
geckolib_version=4.7

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

View File

@@ -2,11 +2,10 @@ package com.smithy.terraoriginum;
import com.smithy.terraoriginum.blocks.cottonCropBlock; import com.smithy.terraoriginum.blocks.cottonCropBlock;
import com.smithy.terraoriginum.blocks.crucifix; import com.smithy.terraoriginum.blocks.crucifix;
import com.smithy.terraoriginum.items.iconItems; import com.smithy.terraoriginum.items.*;
import com.smithy.terraoriginum.items.sun_totem;
import com.smithy.terraoriginum.items.cottonItems;
import com.smithy.terraoriginum.items.umbrella;
import com.smithy.terraoriginum.registry.modEnchantments; import com.smithy.terraoriginum.registry.modEnchantments;
import com.smithy.terraoriginum.registry.modPowers;
import net.fabricmc.api.ModInitializer; import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents; import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
import net.minecraft.item.ItemGroups; import net.minecraft.item.ItemGroups;
@@ -27,10 +26,13 @@ public class TerraOriginum implements ModInitializer {
crucifix.register(); crucifix.register();
cottonCropBlock.register(); cottonCropBlock.register();
cottonItems.register(); cottonItems.register();
sun_totem.register(); sunTotem.register();
ghostlyItems.register();
ghostlyArmourItems.register();
modPowers.register();
ItemGroupEvents.modifyEntriesEvent(ItemGroups.TOOLS).register((content) -> content.add(umbrella.UMBRELLA)); ItemGroupEvents.modifyEntriesEvent(ItemGroups.TOOLS).register((content) -> content.add(umbrella.UMBRELLA));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.TOOLS).register((content) -> content.add(sun_totem.SUN_TOTEM)); ItemGroupEvents.modifyEntriesEvent(ItemGroups.TOOLS).register((content) -> content.add(sunTotem.SUN_TOTEM));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.FUNCTIONAL).register((content) -> content.add(crucifix.CRUCIFIX)); ItemGroupEvents.modifyEntriesEvent(ItemGroups.FUNCTIONAL).register((content) -> content.add(crucifix.CRUCIFIX));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.NATURAL).register((content) -> content.add(cottonItems.COTTON_SEEDS)); ItemGroupEvents.modifyEntriesEvent(ItemGroups.NATURAL).register((content) -> content.add(cottonItems.COTTON_SEEDS));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.INGREDIENTS).register((content) -> content.add(cottonItems.COTTON_BALL)); ItemGroupEvents.modifyEntriesEvent(ItemGroups.INGREDIENTS).register((content) -> content.add(cottonItems.COTTON_BALL));

View File

@@ -0,0 +1,13 @@
package com.smithy.terraoriginum.client;
import net.fabricmc.api.ClientModInitializer;
public class TerraOriginumClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
}
}

View File

@@ -0,0 +1,23 @@
package com.smithy.terraoriginum.client.armour;
import com.smithy.terraoriginum.items.ghostlyArmour;
import net.minecraft.util.Identifier;
import software.bernie.geckolib.model.GeoModel;
public class ghostlyArmourModel extends GeoModel<ghostlyArmour> {
@Override
public Identifier getModelResource(ghostlyArmour animatable) {
return new Identifier("terraoriginum", "geo/ghostly_armour.geo.json");
}
@Override
public Identifier getTextureResource(ghostlyArmour animatable) {
return new Identifier("terraoriginum", "textures/models/armor/ghost_armour_model_texture");
}
@Override
public Identifier getAnimationResource(ghostlyArmour animatable) {
return null;
}
}

View File

@@ -0,0 +1,16 @@
package com.smithy.terraoriginum.client.armour;
import com.smithy.terraoriginum.TerraOriginum;
import com.smithy.terraoriginum.items.ghostlyArmour;
import net.minecraft.util.Identifier;
import software.bernie.geckolib.GeckoLib;
import software.bernie.geckolib.model.DefaultedItemGeoModel;
import software.bernie.geckolib.renderer.GeoArmorRenderer;
public class ghostlyArmourRenderer extends GeoArmorRenderer<ghostlyArmour> {
public ghostlyArmourRenderer() {
super(new DefaultedItemGeoModel<>(new Identifier(TerraOriginum.MOD_ID, "armor/ghost_armour")));
}
}

View File

@@ -0,0 +1,89 @@
package com.smithy.terraoriginum.customMaterials;
import net.minecraft.item.ArmorItem;
import net.minecraft.item.ArmorMaterial;
import net.minecraft.recipe.Ingredient;
import net.minecraft.sound.SoundEvent;
import net.minecraft.sound.SoundEvents;
import java.util.function.Supplier;
import com.smithy.terraoriginum.TerraOriginum;
import com.smithy.terraoriginum.items.cottonItems;
public enum robesMaterial implements ArmorMaterial {
ROBES("robes", 42, new int[] { 4, 9, 7, 4 }, 19,
SoundEvents.ITEM_ARMOR_EQUIP_NETHERITE, 5, 0.1f, () -> Ingredient.ofItems(cottonItems.COTTON_BALL));
private final String name;
private final int durabilityMultiplier;
private final int[] protectionAmounts;
private final int enchantability;
private final SoundEvent equipSound;
private final float toughness;
private final float knockbackResistance;
private final Supplier<Ingredient> repairIngredient;
private static final int[] BASE_DURABILITY = { 11, 16, 15, 13 };
robesMaterial(
String name,
int durabilityMultiplier,
int[] protectionAmounts,
int enchantability,
SoundEvent equipSound,
float toughness,
float knockbackResistance,
Supplier<Ingredient> repairIngredient
) {
this.name = name;
this.durabilityMultiplier = durabilityMultiplier;
this.protectionAmounts = protectionAmounts;
this.enchantability = enchantability;
this.equipSound = equipSound;
this.toughness = toughness;
this.knockbackResistance = knockbackResistance;
this.repairIngredient = repairIngredient;
}
@Override
public int getDurability(ArmorItem.Type type) {
return BASE_DURABILITY[type.ordinal()] * this.durabilityMultiplier;
}
@Override
public int getProtection(ArmorItem.Type type) {
return protectionAmounts[type.ordinal()];
}
@Override
public int getEnchantability() {
return this.enchantability;
}
@Override
public SoundEvent getEquipSound() {
return this.equipSound;
}
@Override
public Ingredient getRepairIngredient() {
return this.repairIngredient.get();
}
@Override
public String getName() {
return TerraOriginum.MOD_ID + ":" + this.name;
}
@Override
public float getToughness() {
return this.toughness;
}
@Override
public float getKnockbackResistance() {
return this.knockbackResistance;
}
}

View File

@@ -0,0 +1,108 @@
package com.smithy.terraoriginum.items;
import com.smithy.terraoriginum.client.armour.ghostlyArmourRenderer;
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet;
import net.minecraft.client.render.entity.model.BipedEntityModel;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EquipmentSlot;
import net.minecraft.entity.LivingEntity;
import net.minecraft.entity.decoration.ArmorStandEntity;
import net.minecraft.item.ArmorItem;
import net.minecraft.item.ArmorMaterial;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import software.bernie.example.client.renderer.armor.GeckoArmorRenderer;
import software.bernie.geckolib.animatable.GeoItem;
import software.bernie.geckolib.animatable.client.RenderProvider;
import software.bernie.geckolib.constant.DataTickets;
import software.bernie.geckolib.constant.DefaultAnimations;
import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache;
import software.bernie.geckolib.core.animation.AnimatableManager;
import software.bernie.geckolib.core.animation.AnimationController;
import software.bernie.geckolib.core.object.PlayState;
import software.bernie.geckolib.renderer.GeoArmorRenderer;
import software.bernie.geckolib.util.GeckoLibUtil;
import java.util.Set;
import java.util.function.Consumer;
import java.util.function.Supplier;
public class ghostlyArmour extends ArmorItem implements GeoItem {
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
private final Supplier<Object> renderProvider = GeoItem.makeRenderer(this);
public ghostlyArmour(ArmorMaterial armorMaterial, ArmorItem.Type type, Settings properties) {
super(armorMaterial, type, properties);
}
// Create our armor model/renderer for Fabric and return it
@Override
public void createRenderer(Consumer<Object> consumer) {
consumer.accept(new RenderProvider() {
private GeoArmorRenderer<?> renderer;
@Override
public BipedEntityModel<LivingEntity> getHumanoidArmorModel(LivingEntity livingEntity, ItemStack itemStack, EquipmentSlot equipmentSlot, BipedEntityModel<LivingEntity> original) {
if (this.renderer == null)
this.renderer = new ghostlyArmourRenderer();
// This prepares our GeoArmorRenderer for the current render frame.
// These parameters may be null however, so we don't do anything further with them
this.renderer.prepForRender(livingEntity, itemStack, equipmentSlot, original);
return this.renderer;
}
});
}
@Override
public Supplier<Object> getRenderProvider() {
return this.renderProvider;
}
// Let's add our animation controller
@Override
public void registerControllers(AnimatableManager.ControllerRegistrar controllers) {
controllers.add(new AnimationController<>(this, 20, state -> {
// Apply our generic idle animation.
// Whether it plays or not is decided down below
// Let's gather some data from the state to use below
// This is the entity that is currently wearing/holding the item
Entity entity = state.getData(DataTickets.ENTITY);
// We'll just have ArmorStands always animate, so we can return here
if (entity instanceof ArmorStandEntity)
return PlayState.CONTINUE;
// For this example, we only want the animation to play if the entity is wearing all pieces of the armor
// Let's collect the armor pieces the entity is currently wearing
Set<Item> wornArmor = new ObjectOpenHashSet<>();
for (ItemStack stack : entity.getArmorItems()) {
// We can stop immediately if any of the slots are empty
if (stack.isEmpty())
return PlayState.STOP;
wornArmor.add(stack.getItem());
}
// Check each of the pieces match our set
boolean isFullSet = wornArmor.containsAll(ObjectArrayList.of(
ghostlyArmourItems.GHOSTLY_BOOTS,
ghostlyArmourItems.GHOSTLY_LEGGING,
ghostlyArmourItems.GHOSTLY_CHESTPLATE,
ghostlyArmourItems.GHOSTLY_HELMET));
// Play the animation if the full set is being worn, otherwise stop
return isFullSet ? PlayState.CONTINUE : PlayState.STOP;
}));
}
@Override
public AnimatableInstanceCache getAnimatableInstanceCache() {
return this.cache;
}
}

View File

@@ -0,0 +1,37 @@
package com.smithy.terraoriginum.items;
import com.smithy.terraoriginum.TerraOriginum;
import com.smithy.terraoriginum.customMaterials.robesMaterial;
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
import net.minecraft.item.ArmorItem;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroups;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier;
import net.minecraft.util.Rarity;
public class ghostlyArmourItems {
public static final Item GHOSTLY_HELMET = new ghostlyArmour(robesMaterial.ROBES, ArmorItem.Type.HELMET, new FabricItemSettings().rarity(Rarity.EPIC));
public static final Item GHOSTLY_CHESTPLATE = new ghostlyArmour(robesMaterial.ROBES, ArmorItem.Type.CHESTPLATE, new FabricItemSettings().rarity(Rarity.EPIC));
public static final Item GHOSTLY_LEGGING = new ghostlyArmour(robesMaterial.ROBES, ArmorItem.Type.LEGGINGS, new FabricItemSettings().rarity(Rarity.EPIC));
public static final Item GHOSTLY_BOOTS = new ghostlyArmour(robesMaterial.ROBES, ArmorItem.Type.BOOTS, new FabricItemSettings().rarity(Rarity.EPIC));
public static void register() {
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "ghostly_helmet"), GHOSTLY_HELMET);
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "ghostly_chestplate"), GHOSTLY_CHESTPLATE);
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "ghostly_leggings"), GHOSTLY_LEGGING);
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "ghostly_boots"), GHOSTLY_BOOTS);
ItemGroupEvents.modifyEntriesEvent(ItemGroups.COMBAT).register((content) -> content.add(GHOSTLY_HELMET));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.COMBAT).register((content) -> content.add(GHOSTLY_CHESTPLATE));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.COMBAT).register((content) -> content.add(GHOSTLY_LEGGING));
ItemGroupEvents.modifyEntriesEvent(ItemGroups.COMBAT).register((content) -> content.add(GHOSTLY_BOOTS));
}
}

View File

@@ -0,0 +1,20 @@
package com.smithy.terraoriginum.items;
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
import net.minecraft.item.Item;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier;
public class ghostlyItems {
public static final Item GHOSTLY_CLOTH = new Item(new FabricItemSettings());
public static void register() {
Registry.register(Registries.ITEM, new Identifier("terraoriginum", "ghostly_cloth"), GHOSTLY_CLOTH);
}
}

View File

@@ -11,10 +11,12 @@ public class iconItems {
public static final Item MYNC_EYE = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC)); public static final Item MYNC_EYE = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC));
public static final Item SPIRIT = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC)); public static final Item SPIRIT = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC));
public static final Item TINY = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC));
public static void register() { public static void register() {
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "mync_eye"), MYNC_EYE); Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "mync_eye"), MYNC_EYE);
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "spirit"), SPIRIT); Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "spirit"), SPIRIT);
Registry.register(Registries.ITEM, new Identifier(TerraOriginum.MOD_ID, "tiny"), TINY);
} }
} }

View File

@@ -7,7 +7,7 @@ import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
import net.minecraft.util.Rarity; import net.minecraft.util.Rarity;
public class sun_totem { public class sunTotem {
public static final Item SUN_TOTEM = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC)); public static final Item SUN_TOTEM = new Item(new Item.Settings().maxCount(1).rarity(Rarity.EPIC));

View File

@@ -1,15 +1,21 @@
package com.smithy.terraoriginum.mixin; package com.smithy.terraoriginum.mixin;
import com.smithy.terraoriginum.items.umbrella; import com.smithy.terraoriginum.items.umbrella;
import com.smithy.terraoriginum.power.preventBlockSlowness;
import io.github.apace100.apoli.component.PowerHolderComponent;
import net.minecraft.block.BlockState;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box; import net.minecraft.util.math.Box;
import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World; import net.minecraft.world.World;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(Entity.class) @Mixin(Entity.class)
@@ -33,6 +39,14 @@ public abstract class EntityMixin {
} }
} }
@Inject(method = "slowMovement", at = @At("HEAD"), cancellable = true)
private void terraoriginum$preventBlockSlowness(BlockState state, Vec3d multiplier, CallbackInfo ci) {
for (preventBlockSlowness power : PowerHolderComponent.getPowers((Entity) (Object) this, preventBlockSlowness.class)) {
if (power.isActive()) {
ci.cancel();
return;
}
}
}
} }

View File

@@ -0,0 +1,24 @@
package com.smithy.terraoriginum.mixin;
import io.github.apace100.apoli.component.PowerHolderComponent;
import net.minecraft.block.PowderSnowBlock;
import net.minecraft.entity.Entity;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import com.smithy.terraoriginum.power.canStandOnPowderSnow;
@Mixin(PowderSnowBlock.class)
public class PowderSnowBlockMixin {
@Inject(method = "canWalkOnPowderSnow", at = @At("HEAD"), cancellable = true)
private static void terraoriginum$canStandOnPowderSnow(Entity entity, CallbackInfoReturnable<Boolean> cir) {
for (canStandOnPowderSnow canStandOnPowderSnowPower : PowerHolderComponent.getPowers(entity, canStandOnPowderSnow.class)) {
if (canStandOnPowderSnowPower.isActive()) {
cir.setReturnValue(true);
return;
}
}
}
}

View File

@@ -0,0 +1,11 @@
package com.smithy.terraoriginum.power;
import io.github.apace100.apoli.power.Power;
import io.github.apace100.apoli.power.PowerType;
import net.minecraft.entity.LivingEntity;
public class canStandOnPowderSnow extends Power {
public canStandOnPowderSnow(PowerType<?> type, LivingEntity entity) {
super(type, entity);
}
}

View File

@@ -0,0 +1,11 @@
package com.smithy.terraoriginum.power;
import io.github.apace100.apoli.power.Power;
import io.github.apace100.apoli.power.PowerType;
import net.minecraft.entity.LivingEntity;
public class preventBlockSlowness extends Power {
public preventBlockSlowness(PowerType<?> type, LivingEntity entity) {
super(type, entity);
}
}

View File

@@ -0,0 +1,24 @@
package com.smithy.terraoriginum.registry;
import com.smithy.terraoriginum.TerraOriginum;
import com.smithy.terraoriginum.power.canStandOnPowderSnow;
import com.smithy.terraoriginum.power.preventBlockSlowness;
import io.github.apace100.apoli.power.factory.PowerFactory;
import io.github.apace100.apoli.registry.ApoliRegistries;
import io.github.apace100.calio.data.SerializableData;
import net.minecraft.registry.Registry;
import net.minecraft.util.Identifier;
public class modPowers {
public static final PowerFactory<?> CAN_WALK_ON_POWDER_SNOW = new PowerFactory<>( new Identifier(TerraOriginum.MOD_ID, "can_walk_on_powder_snow"), new SerializableData(), data -> (type, entity) -> new canStandOnPowderSnow(type, entity)).allowCondition();
public static final PowerFactory<?> PREVENT_BLOCK_SLOWNESS = new PowerFactory<>(new Identifier(TerraOriginum.MOD_ID, "prevent_block_slowness"), new SerializableData(), data -> (type, entity) -> new preventBlockSlowness(type, entity)).allowCondition();
public static void register() {
Registry.register(ApoliRegistries.POWER_FACTORY, CAN_WALK_ON_POWDER_SNOW.getSerializerId(), CAN_WALK_ON_POWDER_SNOW);
Registry.register(ApoliRegistries.POWER_FACTORY, PREVENT_BLOCK_SLOWNESS.getSerializerId(), PREVENT_BLOCK_SLOWNESS);
}
}

View File

@@ -0,0 +1,127 @@
{
"format_version": "1.8.0",
"animations": {
"walk": {
"loop": "hold_on_last_frame",
"animation_length": 0.25,
"bones": {
"torsoEnd": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [20, 0, 0],
"easing": "linear"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [0, -2, -3],
"easing": "linear"
}
}
},
"bandanaEnd": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [20, 0, 0],
"easing": "linear"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [0, -2, 1],
"easing": "linear"
}
}
}
}
},
"sprint": {
"loop": "hold_on_last_frame",
"animation_length": 0.25,
"bones": {
"bandanaEnd": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [55, 0, 0],
"easing": "linear"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [0, -4, 4],
"easing": "linear"
}
}
},
"torsoEnd": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [50, 0, 0],
"easing": "linear"
}
},
"position": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"0.25": {
"vector": [0, -6, -5],
"easing": "linear"
}
}
}
}
},
"idle": {
"animation_length": 3,
"bones": {
"bandanaEnd": {
"rotation": {
"0.0": {
"vector": [0, 0, 0],
"easing": "linear"
},
"1.5": {
"vector": [2.5, 0, 0],
"easing": "linear"
},
"3.0": {
"vector": [0, 0, 0],
"easing": "linear"
}
}
}
}
}
},
"geckolib_format_version": 2
}

View File

@@ -4,25 +4,25 @@
"model": "terraoriginum:block/cotton_crop_stage0" "model": "terraoriginum:block/cotton_crop_stage0"
}, },
"age=1": { "age=1": {
"model": "terraoriginum:block/cotton_crop_stage0" "model": "terraoriginum:block/cotton_crop_stage1"
}, },
"age=2": { "age=2": {
"model": "terraoriginum:block/cotton_crop_stage1" "model": "terraoriginum:block/cotton_crop_stage1"
}, },
"age=3": { "age=3": {
"model": "terraoriginum:block/cotton_crop_stage1" "model": "terraoriginum:block/cotton_crop_stage2"
}, },
"age=4": { "age=4": {
"model": "terraoriginum:block/cotton_crop_stage2" "model": "terraoriginum:block/cotton_crop_stage3"
}, },
"age=5": { "age=5": {
"model": "terraoriginum:block/cotton_crop_stage2" "model": "terraoriginum:block/cotton_crop_stage3"
}, },
"age=6": { "age=6": {
"model": "terraoriginum:block/cotton_crop_stage2" "model": "terraoriginum:block/cotton_crop_stage4"
}, },
"age=7": { "age=7": {
"model": "terraoriginum:block/cotton_crop_stage3" "model": "terraoriginum:block/cotton_crop_stage5"
} }
} }
} }

View File

@@ -0,0 +1,135 @@
{
"format_version": "1.12.0",
"minecraft:geometry": [
{
"description": {
"identifier": "geometry.ghost_armour",
"texture_width": 128,
"texture_height": 128,
"visible_bounds_width": 3,
"visible_bounds_height": 3.5,
"visible_bounds_offset": [0, 1.25, 0]
},
"bones": [
{
"name": "bipedHead",
"pivot": [0, 24, 0]
},
{
"name": "armorHead",
"parent": "bipedHead",
"pivot": [0, 24, 0],
"cubes": [
{"origin": [-5, 24, -5], "size": [10, 9, 10], "uv": [0, 16]},
{"origin": [-4, 24, -4], "size": [8, 8, 8], "uv": [32, 35]}
]
},
{
"name": "bandana",
"parent": "armorHead",
"pivot": [0, 24, 0],
"cubes": [
{"origin": [-6, 23, -6], "size": [12, 4, 12], "uv": [0, 0]}
]
},
{
"name": "bandanaEnd",
"parent": "armorHead",
"pivot": [0, 24, 0],
"cubes": [
{"origin": [-4, 15, 6], "size": [3, 11, 0], "pivot": [-3, 24, 7], "rotation": [7.5, 0, 0], "uv": [72, 0]}
]
},
{
"name": "bipedBody",
"pivot": [0, 24, 0]
},
{
"name": "armorBody",
"parent": "bipedBody",
"pivot": [0, 24, 0]
},
{
"name": "torso",
"parent": "armorBody",
"pivot": [0, 24, 0],
"cubes": [
{"origin": [-4, 12, -3], "size": [8, 12, 6], "uv": [40, 16]}
]
},
{
"name": "torsoEnd",
"parent": "armorBody",
"pivot": [0, 24, 0],
"cubes": [
{"origin": [1, 7, 3], "size": [2, 10, 0], "pivot": [2, 15, 2], "rotation": [5, 0, 0], "uv": [76, 65]}
]
},
{
"name": "bipedRightArm",
"pivot": [-4, 22, 0]
},
{
"name": "armorRightArm",
"parent": "bipedRightArm",
"pivot": [-4, 22, 0],
"cubes": [
{"origin": [-9, 12, -3], "size": [5, 13, 6], "uv": [0, 51]}
]
},
{
"name": "bipedLeftArm",
"pivot": [4, 22, 0]
},
{
"name": "armorLeftArm",
"parent": "bipedLeftArm",
"pivot": [4, 22, 0],
"cubes": [
{"origin": [4, 12, -3], "size": [5, 13, 6], "uv": [22, 51]}
]
},
{
"name": "bipedLeftLeg",
"pivot": [2, 12, 0]
},
{
"name": "armorLeftLeg",
"parent": "bipedLeftLeg",
"pivot": [2, 12, 0],
"cubes": [
{"origin": [0, 4, -3], "size": [5, 9, 6], "uv": [44, 51]}
]
},
{
"name": "armorLeftBoot",
"parent": "bipedLeftLeg",
"pivot": [2, 12, 0],
"cubes": [
{"origin": [0, 0, -3], "size": [5, 4, 6], "uv": [0, 70]}
]
},
{
"name": "bipedRightLeg",
"pivot": [-2, 12, 0]
},
{
"name": "armorRightLeg",
"parent": "bipedRightLeg",
"pivot": [-2, 12, 0],
"cubes": [
{"origin": [-5, 4, -3], "size": [5, 9, 6], "uv": [64, 34]}
]
},
{
"name": "armorRightBoot",
"parent": "bipedRightLeg",
"pivot": [-2, 12, 0],
"cubes": [
{"origin": [-5, 0, -3], "size": [5, 4, 6], "uv": [22, 70]}
]
}
]
}
]
}

View File

@@ -1,266 +1,292 @@
{ {
//-----Icon Items-----// //-----Icon Items-----//
"item.terraoriginum.mync_eye": "Mync Eye", "item.terraoriginum.mync_eye": "Mync Eye",
"item.terraoriginum.spirit": "Spirit", "item.terraoriginum.spirit": "Spirit",
"item.terraoriginum.umbrella": "Umbrella",
//-----shit i cant be assed to categorise-----/
"item.terraoriginum.umbrella": "Umbrella",
"item.terraoriginum.cotton_seeds": "Cotton Seeds",
"item.terraoriginum.cotton_ball": "Cotton ball",
"item.terraoriginum.ghostly_cloth": "Ghostly Cloth",
"item.terraoriginum.sun_totem": "Sun Totem",
"death.attack.lack_of_ectoplasm": "%1$s faded away",
"death.attack.lack_of_ectoplasm.player": "%1$s faded away whilst trying to escape %2$s",
"death.attack.lack_of_sun": "%1$s fell apart",
"death.attack.lack_of_sun.player": "%1$s fell apart whilst fighting %2$s",
"death.attack.boiling": "%1$s boiled up",
"death.attack.boiling.player": "%1$s boiled up whilst trying to fight off %2$s",
"enchantment.terraoriginum.sun_protection": "Sun Protection",
"item.terraoriginum.ghostly_helmet": "Ghostly Hood",
"item.terraoriginum.ghostly_chestplate": "Ghostly Robe",
"item.terraoriginum.ghostly_leggings": "Ghostly Pants",
"item.terraoriginum.ghostly_boots": "Ghostly Socks",
//-----Immortal Human-----//
"origin.terraoriginum.immortal_human.name": "Immortal Human",
"origin.terraoriginum.immortal_human.description": "You hate life, but out of spite, the gods cursed you with being immortal. How unfortunate.",
"power.terraoriginum.immortal_human-powers/immortal.name": "Immortal",
"power.terraoriginum.immortal_human-powers/immortal.description": "You cannot die, no matter how hard you try.",
"power.terraoriginum.immortal_human-powers/pathetic.name": "Pathetic",
"power.terraoriginum.immortal_human-powers/pathetic.description": "You cannot deal damage to anything.",
//-----Demon-----//
"origin.terraoriginum.demon.name": "Demon",
"origin.terraoriginum.demon.description": "A powerful ghostly creature, it's body is built for one purpose... evil",
"power.terraoriginum.demon-powers/self_transfiguration1.name": "Self Transfiguration",
"power.terraoriginum.demon-powers/self_transfiguration1.description": "A demon has the innate ability to transfigure it's own body to temporarily increase it's physical capabilities, but beware whilst using it, because it rapidly drains ectoplasm",
"power.terraoriginum.demon-powers/stained.name": "Stained",
"power.terraoriginum.demon-powers/stained.description": "A demon is stained in the blood of it's victims",
"power.terraoriginum.demon-powers/extra_health.name": "Extra Health",
"power.terraoriginum.demon-powers/extra_health.description": "A demon's body is exceptionally well built, allowing it to take a bit more punishment than usual before perishing",
"power.terraoriginum.demon-powers/rigid.name": "",
"power.terraoriginum.demon-powers/regid.description": "A demon's body is exceptionally well built, allowing it to take a bit more punishment than usual before perishing",
//-----Wraith-----//
"origin.terraoriginum.wraith.name": "Wraith",
"origin.terraoriginum.wraith.description": "A tormented soul brought back to the land of life, hungering to distribute it's agony to the living.",
"power.terraoriginum.wraith-powers/soaring1.name": "Soaring",
"power.terraoriginum.wraith-powers/soaring1.description": "A Wraith has the ability to exhert it's ectoplasm to reduce it's body's response to gravity as well as create a thrust, allowing it to swim through the air.",
"power.terraoriginum.wraith-powers/torment1.name": "Torment",
"power.terraoriginum.wraith-powers/torment1.description": "The Wraith recalls the eons of agony it suffered, causing it's body to respond to the trauma by strengthening itself. Expends ectoplasm quickly.",
"power.terraoriginum.wraith-powers/charred.name": "Charred",
"power.terraoriginum.wraith-powers/charred.description": "Wraiths are burned of torment, which gives them a literally charred appearance.",
//-----Shade-----//
"origin.terraoriginum.shade.name": "Shade",
"origin.terraoriginum.shade.description": "Shades are shy ghostly entities, generally choosing to remain hidden from other non-ghostly entities.",
"power.terraoriginum.shade-powers/invisibility1.name": "Invisibility",
"power.terraoriginum.shade-powers/invisibility1.description": "Shades have the ability to turn their entire bodies, including any armour they are wearing, entirely invisible. The invisibility is counteracted by the glowing effect and expends some ectoplasm",
//-----Merfolk-----//
"origin.terraoriginum.merfolk.name": "Merfolk",
"origin.terraoriginum.merfolk.description": "A creature well adapted to live in the seas. They are much like humans, if humans were aquatic",
"power.terraoriginum.merfolk-powers/hydration.name": "Hydration",
"power.terraoriginum.merfolk-powers/hydration.description": "A merfolk needs to remain hydrated in order to survive. Being in rain or water will increase hydration, whilst being outside both will dry you out",
"power.terraoriginum.merfolk-powers/waterbreathing.name": "Water Breathing",
"power.terraoriginum.merfolk-powers/waterbreathing.description": "A merfolk has the ability to breath underwater",
"power.terraoriginum.merfolk-powers/webbedfeet.name": "Webbed Feet",
"power.terraoriginum.merfolk-powers/webbedfeet.description": "A merfolk has webbed feet to help it swim under water. however, this makes it walk slower on land and also makes it not be able to jump as high as more land creatures.",
"power.terraoriginum.merfolk-powers/wethands.name": "Wet Hands",
"power.terraoriginum.merfolk-powers/wethands.description": "A merfolk's hands are made for use underwater, making it harder to break blocks on dry land. Also a great song",
//-----shit i cant be assed to categorise-----/ //-----Spirit-----//
"item.terraoriginum.cotton_seeds": "Cotton Seeds", "origin.terraoriginum.spirit.name": "Spirit",
"item.terraoriginum.cotton_ball": "Cotton ball", "origin.terraoriginum.spirit.description": "A ghostly creature which has not been buile for any specific purpose.",
"power.terraoriginum.spirit-powers/ectoplasm.name": "Ectoplasm",
"power.terraoriginum.spirit-powers/ectoplasm.description": "Ectoplasm is the life essence of any ghostly creature, without it, they will slowly start to die.",
"power.terraoriginum.spirit-powers/nightvis.name": "Night Vision",
"power.terraoriginum.spirit-powers/nightvis.description": "A ghost likes the darkness, so they're able to see in the dark.",
"power.terraoriginum.spirit-powers/phasing1.name": "Phasing",
"power.terraoriginum.spirit-powers/phasing1.description": "Ghosts have the ability to phase through blocks, this is because they are incorporeal. toggleable",
"power.terraoriginum.spirit-powers/undead.name": "Undead",
"power.terraoriginum.spirit-powers/undead.description": "Spirits are undead, meaning that health and poison potion effects are swapped and you cannot drown.",
"power.terraoriginum.spirit-powers/ectodiff.name": "Luminophobia",
"power.terraoriginum.spirit-powers/ectodiff.description": "Light gradually decreases the amount of ectoplasm that you have, which causes you to take damage or die if it becomes too low.",
"power.terraoriginum.spirit-powers/skin.name": "Translucent skin",
"power.terraoriginum.spirit-powers/skin.description": "Your skin is slightly translucent, allowing others to see through you.",
"item.terraoriginum.sun_totem": "Sun Totem", //-----Serpenta-----//
"origin.terraoriginum.serpenta.name": "Serpenta",
"origin.terraoriginum.serpenta.description": "A hybrid between merfolk and sea serpents... don't ask how they managed that.",
"power.terraoriginum.serpenta-powers/boilingshot.name": "Boiling Shot",
"power.terraoriginum.serpenta-powers/boilingshot.description": "shoot a jet of boiling water, this dehydrates you and has a cooldown of 30 seconds",
"power.terraoriginum.serpenta-powers/scales.name": "Scales",
"power.terraoriginum.serpenta-powers/scales.description": "A serpenta has thick scales, giving it some natural armour",
"death.attack.lack_of_ectoplasm": "%1$s faded away", //-----Fairy-----//
"death.attack.lack_of_ectoplasm.player": "%1$s faded away whilst trying to escape %2$s", "origin.terraoriginum.fairy.name": "Fairy",
"origin.terraoriginum.fairy.description": "A tiny humanoid creature that has wings.",
"power.terraoriginum.fairy-powers/smallheight.name": "Small",
"power.terraoriginum.fairy-powers/smallheight.description": "You are only about one block tall",
"power.terraoriginum.fairy-powers/fragile.name": "Fragile",
"power.terraoriginum.fairy-powers/fragile.description": "You only have half the usual health",
"power.terraoriginum.fairy-powers/yummyhoney.name": "Yummy Honey",
"power.terraoriginum.fairy-powers/yummyhoney.description": "honey is extremely good for you, providing a lot of food and topping up your saturation",
"power.terraoriginum.fairy-powers/nimble.name": "Nimble",
"power.terraoriginum.fairy-powers/nimble.description": "You must remain lightweight to fly, this means you cannot wear armour stronger than chainmail.",
"power.terraoriginum.fairy-powers/pollenation.name": "Pollenation",
"power.terraoriginum.fairy-powers/pollenation.description": "you pollenate plants in a 4 block radius to yourself, making them grow faster.",
"death.attack.lack_of_sun": "%1$s fell apart", //-----Lato-----//
"death.attack.lack_of_sun.player": "%1$s fell apart whilst fighting %2$s", "origin.terraoriginum.lato.name": "Lato",
"origin.terraoriginum.lato.description": "A creature from a faraway world, one with very little sun, one with a very high gravitational pull.",
"power.terraoriginum.lato-powers/sun_damage.name": "Xeroderma Pigmentosum",
"power.terraoriginum.lato-powers/sun_damage.description": "Your skin sizzles up in the sun.",
"power.terraoriginum.lato-powers/teleport.name": "Teleportation",
"power.terraoriginum.lato-powers/teleport.description": "You can teleport some distance away.",
"power.terraoriginum.lato-powers/perfect_vision.name": "Perfect Vision",
"power.terraoriginum.lato-powers/perfect_vision.description": "Carefully constructed eyes that allow for perfect vision, they also are toggleable.",
"power.terraoriginum.lato-powers/rage.name": "Rage",
"power.terraoriginum.lato-powers/rage.description": "Rage gives strength and speed for a short period of time.",
"power.terraoriginum.lato-powers/strong.name": "Strong",
"power.terraoriginum.lato-powers/strong.description": "You do more damage than regular people.",
"power.terraoriginum.lato-powers/twelve_hearts.name": "Healthy",
"power.terraoriginum.lato-powers/twelve_hearts.description": "Being what you are, you have 12 hearts.",
"power.terraoriginum.lato-powers/lato_blooded.name": "Lato Blooded",
"power.terraoriginum.lato-powers/lato_blooded.description": "A Latian's blood can work out most poisoning by itself.",
"power.terraoriginum.lato-powers/tailwind.name": "Tailwind",
"power.terraoriginum.lato-powers/tailwind.description": "You are a little bit quicker on foot than others.",
"power.terraoriginum.lato-powers/natural_armor.name": "Thick Skin",
"power.terraoriginum.lato-powers/natural_armor.description": "Even without wearing armor, your skin provides natural protection.",
"power.terraoriginum.lato-powers/long_arms.name": "Long Arms",
"power.terraoriginum.lato-powers/long_arms.description": "You have slightly longer arms.",
"power.terraoriginum.lato-powers/tall.name": "Tall",
"power.terraoriginum.lato-powers/tall.description": "You are half a block taller.",
"death.attack.boiling": "%1$s boiled up", //-----Mync-----//
"death.attack.boiling.player": "%1$s boiled up whilst trying to fight off %2$s", "origin.terraoriginum.mync.name": "Mync",
"origin.terraoriginum.mync.description": "Myncs are blind Latos. They can't teleport like regular Latos but are stronger than most Latos.",
"power.terraoriginum.mync-powers/mync_blind.name": "Mushroom Sense",
"power.terraoriginum.mync-powers/mync_blind.description": "Standing by mushrooms or mushroom related blocks allows you to connect to and feel through their roots to better perceive your surroundings.",
"power.terraoriginum.mync-powers/mync_tailwind.name": "Tailwind",
"power.terraoriginum.mync-powers/mync_tailwind.description": "You are a little bit quicker on foot than others.",
"power.terraoriginum.mync-powers/mync_rage.name": "Rage",
"power.terraoriginum.mync-powers/mync_rage.description": "Rage gives strength and speed for a short period of time.",
"power.terraoriginum.mync-powers/mync_natural_armour.name": "Thick Skin",
"power.terraoriginum.mync-powers/mync_natural_armour.description": "Even without wearing armor, your skin provides natural protection.",
"power.terraoriginum.mync-powers/mync_vision.name": "Blind",
"power.terraoriginum.mync-powers/mync_vision.description": "Myncs, being blind Latos, have to perceive their environment through sound.",
"power.terraoriginum.mync-powers/mync_echolocate.name": "Echolocation",
"power.terraoriginum.mync-powers/mync_echolocate.description": "Use your [Tab button] to make a sound to figure out how your surrounding area looks like. Nearby wool will stop this from working, but you can use a night vision potion to get it to work permanently.",
"power.terraoriginum.mync-powers/mync_strong.name": "Strong",
"power.terraoriginum.mync-powers/mync_strong.description": "You do more damage than regular people.",
"death.attack.terraoriginum:burn_in_sun": "%1$s sizzled up in the sun.",
"death.attack.terraoriginum:burn_in_sun.player": "%1$s sizzled up in the sun whilst trying to escape %2$s.",
"enchantment.terraoriginum.sun_protection": "Sun Protection", //-----Kitsune-----//
"origin.terraoriginum.kitsune.name": "Kitsune",
"origin.terraoriginum.kitsune.description": "This race of Spirit Foxes dwell around settlements waiting for for treasure to be left unguarded. Though weak in terms of vitality they use their spiritual power to hide and strengthen their power.",
"power.terraoriginum.kitsune-powers/armor.name": "Rich Man's Armour",
"power.terraoriginum.kitsune-powers/armor.description": "You cannot use chanimail armor or leather armor because mmm, unfancy",
"power.terraoriginum.kitsune-powers/diet.name": "Vulpine Diet",
"power.terraoriginum.kitsune-powers/diet.description": "Kitsune love berries and therefore they cure 4 hunger points and 14.4 saturation points (like golden carrots) & your diet is restricted to meat, fish, and berries, so you can't really eat vegetables.",
"power.terraoriginum.kitsune-powers/fox_pouch.name": "Mighty Mouth",
"power.terraoriginum.kitsune-powers/fox_pouch.description": "You carry a secret stash that no one but you has acccess to. You can access this pouch by using your load hotbar activator key.",
"power.terraoriginum.kitsune-powers/home.name": "Home Sweet Home",
"power.terraoriginum.kitsune-powers/home.description": "Your natural spawnpoint is in the Taiga biome.",
"power.terraoriginum.kitsune-powers/hungy.name": "Fast Metabolism",
"power.terraoriginum.kitsune-powers/hungy.description": "A small body performing great movements requires a large amount of food!",
"power.terraoriginum.kitsune-powers/paws.name": "Paws",
"power.terraoriginum.kitsune-powers/paws.description": "You are unable to hold a shield and deal less damage with projectiles because of how your paws are built.",
"power.terraoriginum.kitsune-powers/phasing.name": "Phasing",
"power.terraoriginum.kitsune-powers/phasing.description": "You can walk through solid material, except obsidian, crying obsidian, barriers and bedrock, BUT you are unable to phase up or down.",
"power.terraoriginum.kitsune-powers/pounce.name": "Pounce",
"power.terraoriginum.kitsune-powers/pounce.description": "You perform a great leap towards the direction you're facing. You also deal more damage while falling.",
"power.terraoriginum.kitsune-powers/run.name": "Scram!",
"power.terraoriginum.kitsune-powers/run.description": "Whenever your health goes below 4 hearts, you gain a small speed boost",
"power.terraoriginum.kitsune-powers/speed.name": "Small Frame",
"power.terraoriginum.kitsune-powers/speed.description": "Your small frame gives little weight, making it easier to move at the cost of health.",
//-----Immortal Human-----// //-----Yulde-----//
"origin.terraoriginum.immortal_human.name": "Immortal Human", "origin.terraoriginum.yulde.name": "Yulde",
"origin.terraoriginum.immortal_human.description": "You hate life, but out of spite, the gods cursed you with being immortal. How unfortunate.", "origin.terraoriginum.yulde.description": "A Yulde is a Lato with the ability to change the tides of battle, at the cost of their lives.",
"power.terraoriginum.immortal_human-powers/immortal.name": "Immortal", "power.terraoriginum.yulde-powers/last_stand.name": "Last Stand",
"power.terraoriginum.immortal_human-powers/immortal.description": "You cannot die, no matter how hard you try.", "power.terraoriginum.yulde-powers/last_stand.description": "You gain strength 4 and speed 2 for 60 seconds, after which you will, without fail, die.",
"power.terraoriginum.immortal_human-powers/pathetic.name": "Pathetic", "death.attack.terraoriginum:last_stand": "%1$s made their last stand.",
"power.terraoriginum.immortal_human-powers/pathetic.description": "You cannot deal damage to anything.", "death.attack.terraoriginum:last_stand.player": "%1$s made their last stand before dying to %2$s.",
//-----Demon-----// //-----florian-----//
"origin.terraoriginum.demon.name": "Demon", "origin.terraoriginum.florian.name": "Florian",
"origin.terraoriginum.demon.description": "A powerful ghostly creature, it's body is built for one purpose... evil", "origin.terraoriginum.florian.description": "Florians are soft-hearted creatures of nature. They rarely pose a threat and stand as keepers of the natural environment.",
"power.terraoriginum.demon-powers/self_transfiguration1.name": "Self Transfiguration", "power.terraoriginum.florian-powers/absorbing.name": "Absorbing",
"power.terraoriginum.demon-powers/self_transfiguration1.description": "A demon has the innate ability to transfigure it's own body to temporarily increase it's physical capabilities, but beware whilst using it, because it rapidly drains ectoplasm", "power.terraoriginum.florian-powers/absorbing.description": "You gain strength when in contact with water.",
"power.terraoriginum.demon-powers/stained.name": "Stained", "power.terraoriginum.florian-powers/flammable.name": "Flammable",
"power.terraoriginum.demon-powers/stained.description": "A demon is stained in the blood of it's victims", "power.terraoriginum.florian-powers/flammable.description": "You take twice as much damage from fire",
"power.terraoriginum.demon-powers/extra_health.name": "Extra Health", "power.terraoriginum.florian-powers/photosynthesis.name": "Photosynthesis",
"power.terraoriginum.demon-powers/extra_health.description": "A demon's body is exceptionally well built, allowing it to take a bit more punishment than usual before perishing", "power.terraoriginum.florian-powers/photosynthesis.description": "You are satiated when in the sun.",
"power.terraoriginum.demon-powers/rigid.name": "", "power.terraoriginum.florian-powers/pocket_sand.name": "Pocket Sand",
"power.terraoriginum.demon-powers/regid.description": "A demon's body is exceptionally well built, allowing it to take a bit more punishment than usual before perishing", "power.terraoriginum.florian-powers/pocket_sand.description": "As a protective measure, you keep sand in your pocket to temporarily blind an attacker",
"power.terraoriginum.florian-powers/aura_of_growth.name": "Growth Aura",
"power.terraoriginum.florian-powers/aura_of_growth.description": "Crops around you grow at a faster rate.",
"power.terraoriginum.florian-powers/bonemeal.name": "Bonemeal Body",
"power.terraoriginum.florian-powers/bonemeal.description": "When hit, you spread bonemeal into your surrounding area.",
"power.terraoriginum.florian-powers/compost.name": "Compostable",
"power.terraoriginum.florian-powers/compost.description": "When you're in a composter, it gradually fills up",
"power.terraoriginum.florian-powers/green_fingered.name": "Green Fingered",
"power.terraoriginum.florian-powers/green_fingered.description": "Your skin has a slightly green hue to it",
"power.terraoriginum.florian-powers/small.name": "Small",
"power.terraoriginum.florian-powers/small.description": "You are quite small and have 5 hearts because of it.",
"power.terraoriginum.florian-powers/weak.name": "Weak",
"power.terraoriginum.florian-powers/weak.description": "Because you are a creature of nature, you cannot do much damage.",
"power.terraoriginum.munch-powers/passivemobs.name": "Passive Mobs",
"power.terraoriginum.munch-powers/passivemobs.description": "Mobs just don't care enough to attack you.",
//-----Wraith-----// //-----Muckunde-----//
"origin.terraoriginum.wraith.name": "Wraith", "origin.terraoriginum.muckunde.name": "Muckunde",
"origin.terraoriginum.wraith.description": "A tormented soul brought back to the land of life, hungering to distribute it's agony to the living.", "origin.terraoriginum.muckunde.description": "A dirt creature often found borrowing underground.",
"power.terraoriginum.wraith-powers/soaring1.name": "Soaring", "power.terraoriginum.muckunde-powers/toughskin.name": "Tough Skin",
"power.terraoriginum.wraith-powers/soaring1.description": "A Wraith has the ability to exhert it's ectoplasm to reduce it's body's response to gravity as well as create a thrust, allowing it to swim through the air.", "power.terraoriginum.muckunde-powers/toughskin.description": "A muckunde has hard skin, giving it some natural armour",
"power.terraoriginum.wraith-powers/torment1.name": "Torment", "power.terraoriginum.muckunde-powers/likesoil1.name": "Like Soil",
"power.terraoriginum.wraith-powers/torment1.description": "The Wraith recalls the eons of agony it suffered, causing it's body to respond to the trauma by strengthening itself. Expends ectoplasm quickly.", "power.terraoriginum.muckunde-powers/likesoil1.description": "This origin has the ability to phase through any dirt-like blocks.",
"power.terraoriginum.wraith-powers/charred.name": "Charred", "power.terraoriginum.muckunde-powers/yummybeets.name": "Yummy Beets",
"power.terraoriginum.wraith-powers/charred.description": "Wraiths are burned of torment, which gives them a literally charred appearance.", "power.terraoriginum.muckunde-powers/yummybeets.description": "Your body makes good use of the nutritional composition of beetroot",
"power.terraoriginum.muckunde-powers/hydrophobic.name": "Hydrophobic",
"power.terraoriginum.muckunde-powers/hydrophobic.description": "your body completely ignores water",
//-----Shade-----// //-----Monarch-----//
"origin.terraoriginum.shade.name": "Shade", "origin.terraoriginum.monarch.name": "Monarch",
"origin.terraoriginum.shade.description": "Shades are shy ghostly entities, generally choosing to remain hidden from other non-ghostly entities.", "origin.terraoriginum.monarch.description": "A prideful race that have bioengineered themselves to draw energy directly from the sun.",
"power.terraoriginum.shade-powers/invisibility1.name": "Invisibility", "power.terraoriginum.monarchpowers/hyperefficient_blood.name": "Hyperefficient Blood",
"power.terraoriginum.shade-powers/invisibility1.description": "Shades have the ability to turn their entire bodies, including any armour they are wearing, entirely invisible. The invisibility is counteracted by the glowing effect and expends some ectoplasm", "power.terraoriginum.monarchpowers/hyperefficient_blood.description": "Your blood is extremely efficient, destroying any poisons within your bloodstream before they have a chance to do any damage",
"power.terraoriginum.monarchpowers/solar_energy.name": "Solar Energy",
"power.terraoriginum.monarchpowers/solar_energy.description": "You draw energy from the sun and store it within your body, and access it at will to use various abilities. But if you run out, your body will no longer be able to keep itself together",
"power.terraoriginum.monarchpowers/sun_fueled.name": "Sun Fueled",
"power.terraoriginum.monarchpowers/sun_fueled.description": "You have evolved to draw power from the sun, leading you to become more powerful during the day",
"power.terraoriginum.monarchpowers/nuclear_rush.name": "Nuclear Rush",
"power.terraoriginum.monarchpowers/nuclear_rush.description": "using the sun energy stored within your body, you can temporarily start a weak thermonuclear reaction, pushing your body beyond the limitations of living flesh.",
"power.terraoriginum.monarchpowers/instant_transmission.name": "Instant Transmission",
"power.terraoriginum.monarchpowers/instant_transmission.description": "Use the thermonuclear energy stored in your body to erase the space between you and your target",
"power.terraoriginum.monarchpowers/nyctophobia.name": "Nyctophobia",
"power.terraoriginum.monarchpowers/nyctophobia.description": "Your power is derived from the sun, making you weaker during the night",
"power.terraoriginum.monarchpowers/shining.name": "Shining",
"power.terraoriginum.monarchpowers/shining.description": "An entire lifetime of absorbing the sun's energy makes you radiate it's light",
"power.terraoriginum.monarchpowers/super_dash.name": "Super Dash",
"power.terraoriginum.monarchpowers/super_dash.description": "release a large portion of the solar energy stored within your body to create a large amount of thrust in whatever direction you are facing",
"power.terraoriginum.monarchpowers/hydropetrification.name": "Hydropetrification",
"power.terraoriginum.monarchpowers/hydropetrification.description": "Your body's cells contain a high concentration of neutrinos to facilitate nuclear processes whithin itself, this causes your entire body to heavily slow down underwater",
"power.terraoriginum.monarchpowers/totem_fueled.name": "Totem Fueled",
"power.terraoriginum.monarchpowers/totem_fueled.description": "Craft a Sun Totem and hold it to get small amounts of sun energy even outside the sun",
//-----Merfolk-----// //-----Blight-----//
"origin.terraoriginum.merfolk.name": "Merfolk", "origin.terraoriginum.blight.name": "Blight",
"origin.terraoriginum.merfolk.description": "A creature well adapted to live in the seas. They are much like humans, if humans were aquatic", "origin.terraoriginum.blight.description": "Blights are foul and disgusting creatures. Created in the depths of the nether, they exist for the purpose of bring rot and wither to all forms of nature.",
"power.terraoriginum.merfolk-powers/hydration.name": "Hydration", "power.terraoriginum.blight-powers/bane_of_agriculture.name": "Bane of Agriculture",
"power.terraoriginum.merfolk-powers/hydration.description": "A merfolk needs to remain hydrated in order to survive. Being in rain or water will increase hydration, whilst being outside both will dry you out", "power.terraoriginum.blight-powers/bane_of_agriculture.description": "Through a process not very well understood, blights can rapidly reverse the growth of all crops in about a 6 block radius around themselves",
"power.terraoriginum.merfolk-powers/waterbreathing.name": "Water Breathing", "power.terraoriginum.blight-powers/blighted_feet.name": "Blighted Feet",
"power.terraoriginum.merfolk-powers/waterbreathing.description": "A merfolk has the ability to breath underwater", "power.terraoriginum.blight-powers/blighted_feet.description": "The Blight's cursed feet destroy life within the soil they touch, turning it to course dirt.",
"power.terraoriginum.merfolk-powers/webbedfeet.name": "Webbed Feet", "power.terraoriginum.blight-powers/nether_spawn.name": "Nether Spawn",
"power.terraoriginum.merfolk-powers/webbedfeet.description": "A merfolk has webbed feet to help it swim under water. however, this makes it walk slower on land and also makes it not be able to jump as high as more land creatures.", "power.terraoriginum.blight-powers/nether_spawn.description": "Blights were created in the nether, hence you will start there when you spawn. Curiously, they are not immune to fire like most other nether inhabitants",
"power.terraoriginum.merfolk-powers/wethands.name": "Wet Hands", "power.terraoriginum.blight-powers/foul_flesh.name": "Foul Flesh",
"power.terraoriginum.merfolk-powers/wethands.description": "A merfolk's hands are made for use underwater, making it harder to break blocks on dry land. Also a great song", "power.terraoriginum.blight-powers/foul_flesh.description": "The Blight's flesh is foul and rotten, and as such no poison can effect it.",
"power.terraoriginum.blight-powers/florivory.name": "Florvory",
"power.terraoriginum.blight-powers/florivory.description": "The Blight cannot naturally regenerate, and needs to devour flowers to reconstitute it's body if damaged.",
"power.terraoriginum.blight-powers/dead_cells.name": "Dead Cells",
"power.terraoriginum.blight-powers/dead_cells.description": "A large portion of a Blight's body is comprised of dead cells, hitting them does not damage it's vital functions, essentially acting as a small amount of armour for the blight.",
//-----Spirit-----// //-----Munch-----//
"origin.terraoriginum.spirit.name": "Spirit", "origin.terraoriginum.munch.name": "Munch",
"origin.terraoriginum.spirit.description": "A ghostly creature which has not been buile for any specific purpose.", "origin.terraoriginum.munch.description": "The Munch are a very small species which can ",
"power.terraoriginum.spirit-powers/ectoplasm.name": "Ectoplasm", "power.terraoriginum.munch-powers/tiny.name": "Tiny",
"power.terraoriginum.spirit-powers/ectoplasm.description": "Ectoplasm is the life essence of any ghostly creature, without it, they will slowly start to die.", "power.terraoriginum.munch-powers/tiny.description": "You are very tiny. About 4 pixels tall. Conveniently, this also makes you more difficult to hit.",
"power.terraoriginum.spirit-powers/nightvis.name": "Night Vision", "power.terraoriginum.munch-powers/little_health.name": "Little Health",
"power.terraoriginum.spirit-powers/nightvis.description": "A ghost likes the darkness, so they're able to see in the dark.", "power.terraoriginum.munch-powers/little_health.description": "You have very little health due to your tiny size, you little munch.",
"power.terraoriginum.spirit-powers/phasing1.name": "Phasing", "power.terraoriginum.munch-powers/nimble.name": "Too Small to Damage",
"power.terraoriginum.spirit-powers/phasing1.description": "Ghosts have the ability to phase through blocks, this is because they are incorporeal. toggleable", "power.terraoriginum.munch-powers/nimble.description": "You are immune to thorns and velocity based damage. You are not slowed by blocks such as sweet berry bushes or cobwebs. You can walk on powder snow.",
"power.terraoriginum.spirit-powers/undead.name": "Undead", "power.terraoriginum.munch-powers/better_health.name": "Better Healing",
"power.terraoriginum.spirit-powers/undead.description": "Spirits are undead, meaning that health and poison potion effects are swapped and you cannot drown.", "power.terraoriginum.munch-powers/better_health.description": "You heal twice as fast as the average joe, must be compensating for something.",
"power.terraoriginum.spirit-powers/ectodiff.name": "Luminophobia", "power.terraoriginum.munch-powers/short_arms.name": "Short Arms",
"power.terraoriginum.spirit-powers/ectodiff.description": "Light gradually decreases the amount of ectoplasm that you have, which causes you to take damage or die if it becomes too low.", "power.terraoriginum.munch-powers/short_arms.description": "You are small, therefore you can't reach as far as the average joe.",
"power.terraoriginum.spirit-powers/skin.name": "Translucent skin", "power.terraoriginum.munch-powers/tiny_motion.name": "Sized Speed",
"power.terraoriginum.spirit-powers/skin.description": "Your skin is slightly translucent, allowing others to see through you.", "power.terraoriginum.munch-powers/tiny_motion.description": "You're about as fast as you are tiny, and you can only jump up a little over half a block.",
"power.terraoriginum.munch-powers/speedy_bastard.name": "Speedy Bastard",
//-----Serpenta-----// "power.terraoriginum.munch-powers/speedy_bastard.description": "You are a fast little munch, aren't you? Maybe not normally, but now §ocan be§r.",
"origin.terraoriginum.serpenta.name": "Serpenta", "power.terraoriginum.munch-powers/climbing.name": "Wall Runner",
"origin.terraoriginum.serpenta.description": "A hybrid between merfolk and sea serpents... don't ask how they managed that.", "power.terraoriginum.munch-powers/climbing.description": "You have evolved a swift and seamless climbing technique which allows you to glide up vertical terrains with the grace and speed of a wall runner.",
"power.terraoriginum.serpenta-powers/boilingshot.name": "Boiling Shot", "power.terraoriginum.munch-powers/mounting.name": "Mounting",
"power.terraoriginum.serpenta-powers/boilingshot.description": "shoot a jet of boiling water, this dehydrates you and has a cooldown of 30 seconds", "power.terraoriginum.munch-powers/mounting.description": "You can mount and ride other players and entities. Whether seeking a vantage point, or swift transport. Surely you didn't think I meant mounting in §othat§r way, did you?",
"power.terraoriginum.serpenta-powers/scales.name": "Scales", "power.terraoriginum.munch-powers/quiet.name": "Quiet",
"power.terraoriginum.serpenta-powers/scales.description": "A serpenta has thick scales, giving it some natural armour", "power.terraoriginum.munch-powers/quiet.description": "You're too small to make sound, sculk sensors don't even hear you.",
"power.terraoriginum.munch-powers/tiny_appetite.name": "Tiny Appetite",
//-----Fairy-----// "power.terraoriginum.munch-powers/tiny_appetite.description": "You don't lose hunger very quickly"
"origin.terraoriginum.fairy.name": "Fairy",
"origin.terraoriginum.fairy.description": "A tiny humanoid creature that has wings.",
"power.terraoriginum.fairy-powers/smallheight.name": "Small",
"power.terraoriginum.fairy-powers/smallheight.description": "You are only about one block tall",
"power.terraoriginum.fairy-powers/fragile.name": "Fragile",
"power.terraoriginum.fairy-powers/fragile.description": "You only have half the usual health",
"power.terraoriginum.fairy-powers/yummyhoney.name": "Yummy Honey",
"power.terraoriginum.fairy-powers/yummyhoney.description": "honey is extremely good for you, providing a lot of food and topping up your saturation",
"power.terraoriginum.fairy-powers/nimble.name": "Nimble",
"power.terraoriginum.fairy-powers/nimble.description": "You must remain lightweight to fly, this means you cannot wear armour stronger than chainmail.",
"power.terraoriginum.fairy-powers/pollenation.name": "Pollenation",
"power.terraoriginum.fairy-powers/pollenation.description": "you pollenate plants in a 4 block radius to yourself, making them grow faster.",
//-----Lato-----//
"origin.terraoriginum.lato.name": "Lato",
"origin.terraoriginum.lato.description": "A creature from a faraway world, one with very little sun, one with a very high gravitational pull.",
"power.terraoriginum.lato-powers/sun_damage.name": "Xeroderma Pigmentosum",
"power.terraoriginum.lato-powers/sun_damage.description": "Your skin sizzles up in the sun.",
"power.terraoriginum.lato-powers/teleport.name": "Teleportation",
"power.terraoriginum.lato-powers/teleport.description": "You can teleport some distance away.",
"power.terraoriginum.lato-powers/perfect_vision.name": "Perfect Vision",
"power.terraoriginum.lato-powers/perfect_vision.description": "Carefully constructed eyes that allow for perfect vision, they also are toggleable.",
"power.terraoriginum.lato-powers/rage.name": "Rage",
"power.terraoriginum.lato-powers/rage.description": "Rage gives strength and speed for a short period of time.",
"power.terraoriginum.lato-powers/strong.name": "Strong",
"power.terraoriginum.lato-powers/strong.description": "You do more damage than regular people.",
"power.terraoriginum.lato-powers/twelve_hearts.name": "Healthy",
"power.terraoriginum.lato-powers/twelve_hearts.description": "Being what you are, you have 12 hearts.",
"power.terraoriginum.lato-powers/lato_blooded.name": "Lato Blooded",
"power.terraoriginum.lato-powers/lato_blooded.description": "A Latian's blood can work out most poisoning by itself.",
"power.terraoriginum.lato-powers/tailwind.name": "Tailwind",
"power.terraoriginum.lato-powers/tailwind.description": "You are a little bit quicker on foot than others.",
"power.terraoriginum.lato-powers/natural_armor.name": "Thick Skin",
"power.terraoriginum.lato-powers/natural_armor.description": "Even without wearing armor, your skin provides natural protection.",
"power.terraoriginum.lato-powers/long_arms.name": "Long Arms",
"power.terraoriginum.lato-powers/long_arms.description": "You have slightly longer arms.",
"power.terraoriginum.lato-powers/tall.name": "Tall",
"power.terraoriginum.lato-powers/tall.description": "You are half a block taller.",
//-----Mync-----//
"origin.terraoriginum.mync.name": "Mync",
"origin.terraoriginum.mync.description": "Myncs are blind Latos. They can't teleport like regular Latos but are stronger than most Latos.",
"power.terraoriginum.mync-powers/mync_blind.name": "Mushroom Sense",
"power.terraoriginum.mync-powers/mync_blind.description": "Standing by mushrooms or mushroom related blocks allows you to connect to and feel through their roots to better perceive your surroundings.",
"power.terraoriginum.mync-powers/mync_tailwind.name": "Tailwind",
"power.terraoriginum.mync-powers/mync_tailwind.description": "You are a little bit quicker on foot than others.",
"power.terraoriginum.mync-powers/mync_rage.name": "Rage",
"power.terraoriginum.mync-powers/mync_rage.description": "Rage gives strength and speed for a short period of time.",
"power.terraoriginum.mync-powers/mync_natural_armour.name": "Thick Skin",
"power.terraoriginum.mync-powers/mync_natural_armour.description": "Even without wearing armor, your skin provides natural protection.",
"power.terraoriginum.mync-powers/mync_vision.name": "Blind",
"power.terraoriginum.mync-powers/mync_vision.description": "Myncs, being blind Latos, have to perceive their environment through sound.",
"power.terraoriginum.mync-powers/mync_echolocate.name": "Echolocation",
"power.terraoriginum.mync-powers/mync_echolocate.description": "Use your [Tab button] to make a sound to figure out how your surrounding area looks like. Nearby wool will stop this from working, but you can use a night vision potion to get it to work permanently.",
"power.terraoriginum.mync-powers/mync_strong.name": "Strong",
"power.terraoriginum.mync-powers/mync_strong.description": "You do more damage than regular people.",
"death.attack.terraoriginum:burn_in_sun": "%1$s sizzled up in the sun.",
"death.attack.terraoriginum:burn_in_sun.player": "%1$s sizzled up in the sun whilst trying to escape %2$s.",
//-----Kitsune-----//
"origin.terraoriginum.kitsune.name": "Kitsune",
"origin.terraoriginum.kitsune.description": "This race of Spirit Foxes dwell around settlements waiting for for treasure to be left unguarded. Though weak in terms of vitality they use their spiritual power to hide and strengthen their power.",
"power.terraoriginum.kitsune-powers/armor.name": "Rich Man's Armour",
"power.terraoriginum.kitsune-powers/armor.description": "You cannot use chanimail armor or leather armor because mmm, unfancy",
"power.terraoriginum.kitsune-powers/diet.name": "Vulpine Diet",
"power.terraoriginum.kitsune-powers/diet.description": "Kitsune love berries and therefore they cure 4 hunger points and 14.4 saturation points (like golden carrots) & your diet is restricted to meat, fish, and berries, so you can't really eat vegetables.",
"power.terraoriginum.kitsune-powers/fox_pouch.name": "Mighty Mouth",
"power.terraoriginum.kitsune-powers/fox_pouch.description": "You carry a secret stash that no one but you has acccess to. You can access this pouch by using your load hotbar activator key.",
"power.terraoriginum.kitsune-powers/home.name": "Home Sweet Home",
"power.terraoriginum.kitsune-powers/home.description": "Your natural spawnpoint is in the Taiga biome.",
"power.terraoriginum.kitsune-powers/hungy.name": "Fast Metabolism",
"power.terraoriginum.kitsune-powers/hungy.description": "A small body performing great movements requires a large amount of food!",
"power.terraoriginum.kitsune-powers/paws.name": "Paws",
"power.terraoriginum.kitsune-powers/paws.description": "You are unable to hold a shield and deal less damage with projectiles because of how your paws are built.",
"power.terraoriginum.kitsune-powers/phasing.name": "Phasing",
"power.terraoriginum.kitsune-powers/phasing.description": "You can walk through solid material, except obsidian, crying obsidian, barriers and bedrock, BUT you are unable to phase up or down.",
"power.terraoriginum.kitsune-powers/pounce.name": "Pounce",
"power.terraoriginum.kitsune-powers/pounce.description": "You perform a great leap towards the direction you're facing. You also deal more damage while falling.",
"power.terraoriginum.kitsune-powers/run.name": "Scram!",
"power.terraoriginum.kitsune-powers/run.description": "Whenever your health goes below 4 hearts, you gain a small speed boost",
"power.terraoriginum.kitsune-powers/speed.name": "Small Frame",
"power.terraoriginum.kitsune-powers/speed.description": "Your small frame gives little weight, making it easier to move at the cost of health.",
//-----Yulde-----//
"origin.terraoriginum.yulde.name": "Yulde",
"origin.terraoriginum.yulde.description": "A Yulde is a Lato with the ability to change the tides of battle, at the cost of their lives.",
"power.terraoriginum.yulde-powers/last_stand.name": "Last Stand",
"power.terraoriginum.yulde-powers/last_stand.description": "You gain strength 4 and speed 2 for 60 seconds, after which you will, without fail, die.",
"death.attack.terraoriginum:last_stand": "%1$s made their last stand.",
"death.attack.terraoriginum:last_stand.player": "%1$s made their last stand before dying to %2$s.",
//-----florian-----//
"origin.terraoriginum.florian.name": "Florian",
"origin.terraoriginum.florian.description": "Florians are soft-hearted creatures of nature. They rarely pose a threat and stand as keepers of the natural environment.",
"power.terraoriginum.florian-powers/absorbing.name": "Absorbing",
"power.terraoriginum.florian-powers/absorbing.description": "You gain strength when in contact with water.",
"power.terraoriginum.florian-powers/flammable.name": "Flammable",
"power.terraoriginum.florian-powers/flammable.description": "You take twice as much damage from fire",
"power.terraoriginum.florian-powers/photosynthesis.name": "Photosynthesis",
"power.terraoriginum.florian-powers/photosynthesis.description": "You are satiated when in the sun.",
"power.terraoriginum.florian-powers/pocket_sand.name": "Pocket Sand",
"power.terraoriginum.florian-powers/pocket_sand.description": "As a protective measure, you keep sand in your pocket to temporarily blind an attacker",
"power.terraoriginum.florian-powers/aura_of_growth.name": "Growth Aura",
"power.terraoriginum.florian-powers/aura_of_growth.description": "Crops around you grow at a faster rate.",
"power.terraoriginum.florian-powers/bonemeal.name": "Bonemeal Body",
"power.terraoriginum.florian-powers/bonemeal.description": "When hit, you spread bonemeal into your surrounding area.",
"power.terraoriginum.florian-powers/compost.name": "Compostable",
"power.terraoriginum.florian-powers/compost.description": "When you're in a composter, it gradually fills up",
"power.terraoriginum.florian-powers/green_fingered.name": "Green Fingered",
"power.terraoriginum.florian-powers/green_fingered.description": "Your skin has a slightly green hue to it",
"power.terraoriginum.florian-powers/small.name": "Small",
"power.terraoriginum.florian-powers/small.description": "You are quite small and have 5 hearts because of it.",
"power.terraoriginum.florian-powers/weak.name": "Weak",
"power.terraoriginum.florian-powers/weak.description": "Because you are a creature of nature, you cannot do much damage.",
//-----Muckunde-----//
"origin.terraoriginum.muckunde.name": "Muckunde",
"origin.terraoriginum.muckunde.description": "A dirt creature often found borrowing underground.",
"power.terraoriginum.muckunde-powers/toughskin.name": "Tough Skin",
"power.terraoriginum.muckunde-powers/toughskin.description": "A muckunde has hard skin, giving it some natural armour",
"power.terraoriginum.muckunde-powers/likesoil1.name": "Like Soil",
"power.terraoriginum.muckunde-powers/likesoil1.description": "This origin has the ability to phase through any dirt-like blocks.",
"power.terraoriginum.muckunde-powers/yummybeets.name": "Yummy Beets",
"power.terraoriginum.muckunde-powers/yummybeets.description": "Your body makes good use of the nutritional composition of beetroot",
"power.terraoriginum.muckunde-powers/hydrophobic.name": "Hydrophobic",
"power.terraoriginum.muckunde-powers/hydrophobic.description": "your body completely ignores water",
//-----Monarch-----//
"origin.terraoriginum.monarch.name": "Monarch",
"origin.terraoriginum.monarch.description": "The Monarchs were the first of them all, they took pride in the fact that they were superior to all others of their time, that was until newer and better species came along and drove them to near extinction. \nNow they have returned after evolving into something far more powerful",
"power.terraoriginum.monarch-powers/hyperefficient_blood.name": "Hyperefficient Blood",
"power.terraoriginum.monarch-powers/hyperefficient_blood.description": "Your blood is extremely efficient, destroying any poisons within your bloodstream before they have a chance to do any damage",
"power.terraoriginum.monarch-powers/solar_energy.name": "Solar Energy",
"power.terraoriginum.monarch-powers/solar_energy.description": "You draw energy from the sun and store it within your body, and access it at will to use various abilities. But if you run out, your body will no longer be able to keep itself together",
"power.terraoriginum.monarch-powers/sun_fueled.name": "Sun Fueled",
"power.terraoriginum.monarch-powers/sun_fueled.description": "You have evolved to draw power from the sun, leading you to become more powerful during the day",
"power.terraoriginum.monarch-powers/nuclear_rush.name": "Nuclear Rush",
"power.terraoriginum.monarch-powers/nuclear_rush.description": "using the sun energy stored within your body, you can temporarily start a weak thermonuclear reaction, pushing your body beyond the limitations of living flesh.",
"power.terraoriginum.monarch-powers/instant_transmission.name": "Instant Transmission",
"power.terraoriginum.monarch-powers/instant_transmission.description": "Use the thermonuclear energy stored in your body to erase the space between you and your target",
"power.terraoriginum.monarch-powers/nyctophobia.name": "Nyctophobia",
"power.terraoriginum.monarch-powers/nyctophobia.description": "Your power is derived from the sun, making you weaker during the night",
"power.terraoriginum.monarch-powers/shining.name": "Shining",
"power.terraoriginum.monarch-powers/shining.description": "An entire lifetime of absorbing the sun's energy makes you radiate it's light",
"power.terraoriginum.monarch-powers/super_dash.name": "Super Dash",
"power.terraoriginum.monarch-powers/super_dash.description": "release a large portion of the solar energy stored within your body to create a large amount of thrust in whatever direction you are facing",
"power.terraoriginum.monarch-powers/hydropetrification.name": "Hydropetrification",
"power.terraoriginum.monarch-powers/hydropetrification.description": "Your body's cells contain a high concentration of neutrinos to facilitate nuclear processes whithin itself, this causes your entire body to heavily slow down underwater",
"power.terraoriginum.monarch-powers/totem_fueled.name": "Totem Fueled",
"power.terraoriginum.monarch-powers/totem_fueled.description": "Craft a Sun Totem and hold it to get small amounts of sun energy even outside the sun",
//-----Blight-----//
"origin.terraoriginum.blight.name": "Blight",
"origin.terraoriginum.blight.description": "Blights are foul and disgusting creatures. Created in the depths of the nether, they exist for the purpose of bring rot and wither to all forms of nature.",
"power.terraoriginum.blight-powers/bane_of_agriculture.name": "Bane of Agriculture",
"power.terraoriginum.blight-powers/bane_of_agriculture.description": "Through a process not very well understood, blights can rapidly reverse the growth of all crops in about a 6 block radius around themselves",
"power.terraoriginum.blight-powers/blighted_feet.name": "Blighted Feet",
"power.terraoriginum.blight-powers/blighted_feet.description": "The Blight's cursed feet destroy life within the soil they touch, turning it to course dirt.",
"power.terraoriginum.blight-powers/nether_spawn.name": "Nether Spawn",
"power.terraoriginum.blight-powers/nether_spawn.description": "Blights created in the nether, hence you will start there when you spawn. Curiously, they are not immune to fire like most other nether inhabitants",
"power.terraoriginum.blight-powers/foul_flesh.name": "Foul Flesh",
"power.terraoriginum.blight-powers/foul_flesh.description": "The Blight's flesh is foul and rotten, and as such no poison can effect it.",
"power.terraoriginum.blight-powers/florivory.name": "Florvory",
"power.terraoriginum.blight-powers/florivory.description": "The Blight cannot naturally regenerate, and needs to devour flowers to reconstitute it's body if damaged.",
"power.terraoriginum.blight-powers/dead_cells.name": "Dead Cells",
"power.terraoriginum.blight-powers/dead_cells.description": "A large portion of a Blight's body is comprised of dead cells, hitting them does not damage it's vital functions, essentially acting as a small amount of armour for the blight."
} }

View File

@@ -1,7 +1,7 @@
{ {
"parent": "minecraft:block/crop", "parent": "minecraft:block/cross",
"textures": { "textures": {
"crop": "terraoriginum:block/cotton_crop_block_stage0" "cross": "terraoriginum:block/crop_cotton_0"
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"parent": "minecraft:block/crop", "parent": "minecraft:block/cross",
"textures": { "textures": {
"crop": "terraoriginum:block/cotton_crop_block_stage1" "cross": "terraoriginum:block/crop_cotton_1"
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"parent": "minecraft:block/crop", "parent": "minecraft:block/cross",
"textures": { "textures": {
"crop": "terraoriginum:block/cotton_crop_block_stage2" "cross": "terraoriginum:block/crop_cotton_2"
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"parent": "minecraft:block/crop", "parent": "minecraft:block/cross",
"textures": { "textures": {
"crop": "terraoriginum:block/cotton_crop_block_stage3" "cross": "terraoriginum:block/crop_cotton_3"
} }
} }

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:block/cross",
"textures": {
"cross": "terraoriginum:block/crop_cotton_4"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "minecraft:block/cross",
"textures": {
"cross": "terraoriginum:block/crop_cotton_5"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/ghostly_boots"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/ghostly_chestplate"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/ghostly_cloth"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/ghostly_helmet"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/ghostly_leggings"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "terraoriginum:item/tiny"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 577 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 248 B

After

Width:  |  Height:  |  Size: 614 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 373 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -1,5 +0,0 @@
{
"values": [
"terraoriginum:tick"
]
}

View File

@@ -16,6 +16,7 @@
"terraoriginum:fairy", "terraoriginum:fairy",
"terraoriginum:muckunde", "terraoriginum:muckunde",
"terraoriginum:blight", "terraoriginum:blight",
"terraoriginum:munch",
{ {
"condition": { "condition": {
"type": "origins:equipped_item", "type": "origins:equipped_item",

View File

@@ -13,7 +13,8 @@
"terraoriginum:florian-powers/aura_of_growth", "terraoriginum:florian-powers/aura_of_growth",
"terraoriginum:florian-powers/pocket_sand", "terraoriginum:florian-powers/pocket_sand",
"terraoriginum:florian-powers/weak", "terraoriginum:florian-powers/weak",
"terraoriginum:florian-powers/five_hearts" "terraoriginum:florian-powers/five_hearts",
"terraoriginum:florian-powers/passivemobs"
], ],
"icon": "minecraft:rose_bush", "icon": "minecraft:rose_bush",
"order": 1000, "order": 1000,

View File

@@ -0,0 +1,21 @@
{
"powers": [
"terraoriginum:munch-powers/tiny",
"terraoriginum:munch-powers/short_arms",
"terraoriginum:munch-powers/tiny_motion",
"terraoriginum:munch-powers/tiny_width",
"terraoriginum:munch-powers/little_health",
"terraoriginum:munch-powers/better_health",
"terraoriginum:munch-powers/tiny_appetite",
"terraoriginum:munch-powers/nimble",
"terraoriginum:munch-powers/quiet",
"terraoriginum:munch-powers/climbing",
"terraoriginum:munch-powers/mounting",
"terraoriginum:munch-powers/speedy_bastard"
],
"icon": {
"item": "terraoriginum:tiny"
},
"order": 999,
"impact": 3
}

View File

@@ -0,0 +1,21 @@
{
"type":"origins:action_over_time",
"entity_action":{
"type":"origins:and",
"actions":[
{
"type":"origins:execute_command",
"command":"team add aggropassive"
},
{
"type":"origins:execute_command",
"command":"team join aggropassive @s"
},
{
"type":"origins:execute_command",
"command":"team join aggropassive @e[type=#terraoriginum:hostiles]"
}
]
},
"interval":20
}

View File

@@ -2,25 +2,25 @@
"type": "origins:active_self", "type": "origins:active_self",
"hidden": "true", "hidden": "true",
"entity_action": { "entity_action": {
"type": "origins:and", "type": "origins:and",
"actions": [ "actions": [
{ {
"type": "origins:apply_effect", "type": "origins:apply_effect",
"effect": { "effect": {
"effect": "minecraft:speed", "effect": "minecraft:speed",
"duration": 400, "duration": 400,
"amplifier": 1 "amplifier": 1
} }
}, },
{ {
"type": "origins:heal", "type": "origins:heal",
"amount": 8 "amount": 8
} }
] ]
}, },
"cooldown": 2400, "cooldown": 2400,
"hud_render": { "hud_render": {
"sprite_location": "terraoriginum:textures/gui/nothing.png", "sprite_location": "terraoriginum:textures/gui/nothing.png",
"bar_index": "0" "bar_index": "0"
} }
} }

View File

@@ -1,37 +1,37 @@
{ {
"condition": { "condition": {
"type": "origins:and", "type": "origins:and",
"conditions": [ "conditions": [
{ {
"inverted": true, "inverted": true,
"type": "origins:inventory", "type": "origins:inventory",
"process_mode": "items", "process_mode": "items",
"slots": [ "slots": [
"weapon.mainhand", "weapon.mainhand",
"weapon.offhand" "weapon.offhand"
], ],
"item_condition": { "item_condition": {
"type": "origins:ingredient", "type": "origins:ingredient",
"ingredient": { "ingredient": {
"item": "terraoriginum:umbrella" "item": "terraoriginum:umbrella"
} }
}
},
{
"type": "origins:exposed_to_sun"
} }
}, ]
{ },
"type": "origins:exposed_to_sun"
}
]
},
"type": "origins:damage_over_time", "type": "origins:damage_over_time",
"interval": 15, "interval": 15,
"onset_delay": 1, "onset_delay": 1,
"damage": 3, "damage": 3,
"damage_easy": 2, "damage_easy": 2,
"damage_source": { "damage_source": {
"name": "terraoriginum:burn_in_sun", "name": "terraoriginum:burn_in_sun",
"unblockable": true, "unblockable": true,
"bypasses_armor": true "bypasses_armor": true
}, },
"protection_enchantment": "terraoriginum:sun_protection", "protection_enchantment": "terraoriginum:sun_protection",
"protection_effectiveness": 1.1 "protection_effectiveness": 1.1
} }

View File

@@ -1,7 +1,7 @@
{ {
"condition": { "condition": {
"type": "origins:resource", "type": "origins:resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"comparison": ">=", "comparison": ">=",
"compare_to": 50 "compare_to": 50
}, },
@@ -48,7 +48,7 @@
}, },
{ {
"type": "origins:change_resource", "type": "origins:change_resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"change": -50, "change": -50,
"operation": "add" "operation": "add"
} }

View File

@@ -8,7 +8,7 @@
{ {
"condition": { "condition": {
"type": "origins:resource", "type": "origins:resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"comparison": "<", "comparison": "<",
"compare_to": 50 "compare_to": 50
}, },

View File

@@ -1,7 +1,7 @@
{ {
"condition": { "condition": {
"type": "origins:resource", "type": "origins:resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"comparison": ">=", "comparison": ">=",
"compare_to": 100 "compare_to": 100
}, },
@@ -35,7 +35,7 @@
}, },
{ {
"type": "origins:change_resource", "type": "origins:change_resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"change": -100, "change": -100,
"operation": "add" "operation": "add"
}, },

View File

@@ -6,7 +6,7 @@
"interval": 40, "interval": 40,
"entity_action": { "entity_action": {
"type": "origins:change_resource", "type": "origins:change_resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"change": 10, "change": 10,
"operation": "add" "operation": "add"
} }

View File

@@ -21,7 +21,7 @@
}, },
{ {
"type": "origins:change_resource", "type": "origins:change_resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"change": -300 "change": -300
} }
] ]
@@ -31,7 +31,7 @@
}, },
"condition": { "condition": {
"type": "origins:resource", "type": "origins:resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"comparison": ">=", "comparison": ">=",
"compare_to": 200 "compare_to": 200
}, },

View File

@@ -17,7 +17,7 @@
"interval": 40, "interval": 40,
"entity_action": { "entity_action": {
"type": "origins:change_resource", "type": "origins:change_resource",
"resource": "terraoriginum:monarchpowers/solar_energy", "resource": "terraoriginum:monarch-powers/solar_energy",
"change": 4, "change": 4,
"operation": "add" "operation": "add"
} }

View File

@@ -0,0 +1,7 @@
{
"type": "origins:modify_healing",
"modifier":{
"operation": "multiply_total",
"value": 1
}
}

View File

@@ -0,0 +1,79 @@
{
"type": "origins:multiple",
"toggle": {
"type": "origins:toggle",
"active_by_default": false,
"key": {
"key": "key.origins.primary_active"
},
"retain_state": true
},
"wall_run": {
"type": "origins:action_over_time",
"entity_action": {
"type": "origins:and",
"actions": [
{
"type":"origins:apply_effect",
"effect":{
"effect":"minecraft:levitation",
"duration":2,
"amplifier":-1,
"is_ambient":false,
"show_particles":false,
"show_icon":false
}
},
{
"type":"origins:add_velocity",
"x": 0.0,
"y": 0.0,
"z":0.05,
"space":"local",
"client": true,
"server": true,
"set":false
}
]
},
"falling_action": {
"type":"origins:clear_effect",
"effect":"minecraft:levitation"
},
"interval": 1,
"condition": {
"type": "origins:and",
"conditions": [
{
"type": "origins:power_active",
"power": "terraoriginum:munch-powers/climbing_toggle"
},
{
"type":"origins:on_block",
"inverted":true
},
{
"type": "origins:or",
"conditions": [
{
"type":"origins:block_collision",
"offset_x":0.1,
"offset_z":0.1,
"offset_y":0,
"inverted":false
},
{
"type":"origins:block_collision",
"offset_x":-0.1,
"offset_z":-0.1,
"offset_y":0,
"inverted":false
}
],
"inverted": false
}
]
}
}
}

View File

@@ -0,0 +1,8 @@
{
"type": "origins:attribute",
"modifier": {
"attribute": "minecraft:generic.max_health",
"value": -12.0,
"operation": "addition"
}
}

View File

@@ -0,0 +1,56 @@
{
"type":"origins:multiple",
"mount":{
"type":"origins:active_self",
"entity_action":{
"type":"origins:raycast",
"distance":10.00,
"block":false,
"entity":true,
"shape_type":"collider",
"fluid_handling":"none",
"bientity_condition":{
"type":"origins:target_condition",
"condition":{
"type":"origins:living"
}
},
"bientity_action":{
"type":"origins:mount"
},
"entity_distance":3.00,
"command_step":1.00,
"command_along_ray_only_on_hit":false
},
"cooldown":1,
"hud_render":{
"should_render":false
},
"key":{
"key":"key.origins.secondary_active",
"continuous":false
},
"condition":{
"type":"origins:riding",
"inverted":true
}
},
"dismount":{
"type":"origins:active_self",
"entity_action":{
"type":"origins:dismount"
},
"cooldown":1,
"hud_render":{
"should_render":false
},
"key":{
"key":"key.sneak",
"continuous":false
},
"condition":{
"type":"origins:riding",
"inverted":false
}
}
}

View File

@@ -0,0 +1,37 @@
{
"type": "origins:multiple",
"damage_immunity": {
"type": "origins:invulnerability",
"damage_condition": {
"type": "origins:or",
"conditions": [
{
"type": "origins:name",
"name": "fall"
},
{
"type": "origins:name",
"name": "flyIntoWall"
},
{
"type": "origins:name",
"name": "cactus"
},
{
"type": "origins:name",
"name": "sweetBerryBush"
},
{
"type": "origins:name",
"name": "thorns"
}
]
}
},
"prevent_block_slowness": {
"type": "terraoriginum:prevent_block_slowness"
},
"can_walk_on_powder_snow": {
"type": "terraoriginum:can_walk_on_powder_snow"
}
}

View File

@@ -0,0 +1,7 @@
{
"type": "origins:prevent_game_event",
"events":[
"minecraft:step",
"minecraft:hit_ground"
]
}

View File

@@ -0,0 +1,8 @@
{
"type": "origins:action_over_time",
"interval": 20,
"entity_action": {
"type": "origins:execute_command",
"command": "/scale set pehkui:reach 0.5"
}
}

View File

@@ -0,0 +1,22 @@
{
"type": "origins:active_self",
"key": "key.origins.ternary_active",
"entity_action": {
"type": "origins:and",
"actions": [
{
"type": "origins:apply_effect",
"effect": {
"effect": "minecraft:speed",
"duration": 600,
"amplifier": 4
}
}
]
},
"cooldown": 2400,
"hud_render": {
"sprite_location": "origins:textures/gui/resource_bar.png",
"bar_index": "2"
}
}

View File

@@ -0,0 +1,8 @@
{
"type": "origins:action_over_time",
"interval": 20,
"entity_action": {
"type": "origins:execute_command",
"command": "/scale set pehkui:height 0.13"
}
}

View File

@@ -0,0 +1,8 @@
{
"type": "origins:modify_exhaustion",
"modifier": {
"name": "Origin modifier",
"operation": "multiply_base",
"value": -0.75
}
}

View File

@@ -0,0 +1,8 @@
{
"type": "origins:action_over_time",
"interval": 20,
"entity_action": {
"type": "origins:execute_command",
"command": "/scale set pehkui:motion 0.55"
}
}

View File

@@ -0,0 +1,9 @@
{
"type": "origins:action_over_time",
"hidden": true,
"interval": 20,
"entity_action": {
"type": "origins:execute_command",
"command": "/scale set pehkui:width 0.13"
}
}

View File

@@ -4,6 +4,76 @@
"entity_action": { "entity_action": {
"type": "origins:if_else_list", "type": "origins:if_else_list",
"actions": [ "actions": [
{
"condition": {
"type": "origins:and",
"conditions": [
{
"type": "origins:inventory",
"process_mode": "items",
"slots": [
"armor.head"
],
"item_condition": {
"type": "origins:ingredient",
"ingredient": {
"item": "terraoriginum:ghostly_helmet"
}
}
},
{
"type": "origins:inventory",
"process_mode": "items",
"slots": [
"armor.chest"
],
"item_condition": {
"type": "origins:ingredient",
"ingredient": {
"item": "terraoriginum:ghostly_chestplate"
}
}
},
{
"type": "origins:inventory",
"process_mode": "items",
"slots": [
"armor.legs"
],
"item_condition": {
"type": "origins:ingredient",
"ingredient": {
"item": "terraoriginum:ghostly_leggings"
}
}
},
{
"type": "origins:inventory",
"process_mode": "items",
"slots": [
"armor.feet"
],
"item_condition": {
"type": "origins:ingredient",
"ingredient": {
"item": "terraoriginum:ghostly_boots"
}
}
}
]
},
"action": {
"type": "origins:and",
"actions": [
{
"type": "origins:change_resource",
"resource": "terraoriginum:spirit-powers/ectoplasm",
"change": 2,
"operation": "add"
}
]
}
},
{ {
"condition": { "condition": {
"type": "origins:brightness", "type": "origins:brightness",
@@ -24,9 +94,14 @@
}, },
{ {
"condition": { "condition": {
"type": "origins:brightness", "type": "origins:or",
"comparison": "<=", "conditions": [
"compare_to": 0.17948718 {
"type": "origins:brightness",
"comparison": "<=",
"compare_to": 0.17948718
}
]
}, },
"action": { "action": {
"type": "origins:and", "type": "origins:and",

View File

@@ -0,0 +1,20 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
" # ",
"#E#",
" # "
],
"key": {
"#": {
"item": "terraoriginum:cotton_ball"
},
"E": {
"item": "minecraft:echo_shard"
}
},
"result": {
"item": "terraoriginum:ghostly_cloth",
"count": 1
}
}

View File

@@ -0,0 +1,33 @@
{
"replace": false,
"values": [
"minecraft:blaze",
"minecraft:cave_spider",
"minecraft:spider",
"minecraft:piglin",
"minecraft:drowned",
"minecraft:enderman",
"minecraft:zombified_piglin",
"minecraft:creeper",
"minecraft:elder_guardian",
"minecraft:endermite",
"minecraft:ghast",
"minecraft:guardian",
"minecraft:hoglin",
"minecraft:husk",
"minecraft:magma_cube",
"minecraft:phantom",
"minecraft:piglin_brute",
"minecraft:pillager",
"minecraft:ravager",
"minecraft:skeleton",
"minecraft:slime",
"minecraft:stray",
"minecraft:vindicator",
"minecraft:witch",
"minecraft:wither_skeleton",
"minecraft:zoglin",
"minecraft:zombie",
"minecraft:zombie_villager"
]
}

View File

@@ -25,7 +25,7 @@
"client": [ "client": [
"com.smithy.terraoriginum.client.TerraKeybinds", "com.smithy.terraoriginum.client.TerraKeybinds",
"com.smithy.terraoriginum.client.layerRenderer" "com.smithy.terraoriginum.client.layerRenderer"
] ]
}, },
"mixins": [ "mixins": [
"terra.mixins.json" "terra.mixins.json"
@@ -37,6 +37,5 @@
"minecraft": "1.20.1", "minecraft": "1.20.1",
"pehkui": ">=3.7.8" "pehkui": ">=3.7.8"
}, },
"conflicts": { "conflicts": {}
} }
}

View File

@@ -5,7 +5,9 @@
"compatibilityLevel": "JAVA_16", "compatibilityLevel": "JAVA_16",
"mixins": [ "mixins": [
"PlayerConditionsMixin", "PlayerConditionsMixin",
"PlayerEntityMixin" "PlayerEntityMixin",
"EntityMixin",
"PowderSnowBlockMixin"
], ],
"injectors": { "injectors": {
"defaultRequire": 1 "defaultRequire": 1