From c9ee710ab57e2fb0bf130130d882ae24f1554f83 Mon Sep 17 00:00:00 2001 From: Sollace Date: Fri, 25 Sep 2020 20:24:48 +0200 Subject: [PATCH] Added abilities for bat ponies --- .../unicopia/EquinePredicates.java | 7 ++ .../com/minelittlepony/unicopia/USounds.java | 1 + .../unicopia/ability/Abilities.java | 4 + .../unicopia/ability/BatEeeeAbility.java | 100 ++++++++++++++++++ .../unicopia/ability/BatPonyHangAbility.java | 71 +++++++++++++ .../entity/player/PlayerAttributes.java | 10 +- .../unicopia/entity/player/PlayerCamera.java | 2 +- .../unicopia/entity/player/PlayerPhysics.java | 10 ++ .../unicopia/entity/player/Pony.java | 24 +++++ .../mixin/client/MixinGameRenderer.java | 22 +++- .../client/MixinLightmapTextureManager.java | 23 ++++ .../resources/assets/unicopia/lang/en_us.json | 13 +-- .../resources/assets/unicopia/sounds.json | 10 ++ .../assets/unicopia/sounds/batpony/eeee.ogg | Bin 0 -> 22550 bytes .../assets/unicopia/sounds/batpony/eeep.ogg | Bin 0 -> 7775 bytes .../assets/unicopia/sounds/batpony/reep.ogg | Bin 0 -> 8306 bytes .../unicopia/sounds/batpony/screep0.ogg | Bin 0 -> 12040 bytes .../unicopia/sounds/batpony/screep1.ogg | Bin 0 -> 10139 bytes .../unicopia/textures/gui/ability/carry.png | Bin 793 -> 866 bytes .../unicopia/textures/gui/ability/eee.png | Bin 0 -> 1065 bytes .../unicopia/textures/gui/ability/hang.png | Bin 0 -> 735 bytes src/main/resources/unicopia.mixin.json | 1 + 22 files changed, 285 insertions(+), 13 deletions(-) create mode 100644 src/main/java/com/minelittlepony/unicopia/ability/BatEeeeAbility.java create mode 100644 src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java create mode 100644 src/main/java/com/minelittlepony/unicopia/mixin/client/MixinLightmapTextureManager.java create mode 100644 src/main/resources/assets/unicopia/sounds/batpony/eeee.ogg create mode 100644 src/main/resources/assets/unicopia/sounds/batpony/eeep.ogg create mode 100644 src/main/resources/assets/unicopia/sounds/batpony/reep.ogg create mode 100644 src/main/resources/assets/unicopia/sounds/batpony/screep0.ogg create mode 100644 src/main/resources/assets/unicopia/sounds/batpony/screep1.ogg create mode 100644 src/main/resources/assets/unicopia/textures/gui/ability/eee.png create mode 100644 src/main/resources/assets/unicopia/textures/gui/ability/hang.png diff --git a/src/main/java/com/minelittlepony/unicopia/EquinePredicates.java b/src/main/java/com/minelittlepony/unicopia/EquinePredicates.java index dda26dbc..17c42732 100644 --- a/src/main/java/com/minelittlepony/unicopia/EquinePredicates.java +++ b/src/main/java/com/minelittlepony/unicopia/EquinePredicates.java @@ -2,7 +2,9 @@ package com.minelittlepony.unicopia; import java.util.function.Predicate; +import com.minelittlepony.unicopia.ability.magic.Spell; import com.minelittlepony.unicopia.entity.Equine; +import com.minelittlepony.unicopia.entity.player.Pony; import net.minecraft.entity.Entity; import net.minecraft.entity.player.PlayerEntity; @@ -12,8 +14,13 @@ public interface EquinePredicates { Predicate RACE_INTERACT_WITH_CLOUDS = entity -> Equine.of(entity).getSpecies().canInteractWithClouds(); + Predicate PLAYER_EARTH = IS_PLAYER.and(entity -> Equine.of(entity).getSpecies() == Race.EARTH); + Predicate PLAYER_BAT = IS_PLAYER.and(entity -> Equine.of(entity).getSpecies() == Race.BAT); Predicate PLAYER_UNICORN = IS_PLAYER.and(entity -> Equine.of(entity).getSpecies().canCast()); Predicate PLAYER_CHANGELING = IS_PLAYER.and(entity -> Equine.of(entity).getSpecies() == Race.CHANGELING); Predicate PLAYER_PEGASUS = IS_PLAYER.and(entity -> ((PlayerEntity)entity).abilities.creativeMode || RACE_INTERACT_WITH_CLOUDS.test(entity)); + static Predicate carryingSpell(Class type) { + return IS_PLAYER.and(entity -> Pony.of((PlayerEntity)entity).getSpellOrEmpty(type, false).isPresent()); + } } diff --git a/src/main/java/com/minelittlepony/unicopia/USounds.java b/src/main/java/com/minelittlepony/unicopia/USounds.java index 3864fe2d..19ba00e1 100644 --- a/src/main/java/com/minelittlepony/unicopia/USounds.java +++ b/src/main/java/com/minelittlepony/unicopia/USounds.java @@ -9,6 +9,7 @@ public interface USounds { SoundEvent WING_FLAP = register("wing_flap"); SoundEvent WIND_RUSH = register("wind_rush"); + SoundEvent BATPONY_EEEE = register("batpony_eeee"); SoundEvent CHANGELING_BUZZ = register("changeling_buzz"); SoundEvent RECORD_CRUSADE = register("record.crusade"); diff --git a/src/main/java/com/minelittlepony/unicopia/ability/Abilities.java b/src/main/java/com/minelittlepony/unicopia/ability/Abilities.java index 2d680ab9..29874708 100644 --- a/src/main/java/com/minelittlepony/unicopia/ability/Abilities.java +++ b/src/main/java/com/minelittlepony/unicopia/ability/Abilities.java @@ -29,6 +29,10 @@ public interface Abilities { Ability DISGUISE = register(new ChangelingDisguiseAbility(), "disguise", AbilitySlot.SECONDARY); Ability FEED = register(new ChangelingFeedAbility(), "feed", AbilitySlot.TERTIARY); + // bat + Ability HANG = register(new BatPonyHangAbility(), "hang", AbilitySlot.SECONDARY); + Ability EEEE = register(new BatEeeeAbility(), "eee", AbilitySlot.TERTIARY); + static > T register(T power, String name, AbilitySlot slot) { Identifier id = new Identifier("unicopia", name); BY_SLOT.computeIfAbsent(slot, s -> new HashSet<>()).add(power); diff --git a/src/main/java/com/minelittlepony/unicopia/ability/BatEeeeAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/BatEeeeAbility.java new file mode 100644 index 00000000..51a09bf0 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/ability/BatEeeeAbility.java @@ -0,0 +1,100 @@ +package com.minelittlepony.unicopia.ability; + +import java.util.Random; +import java.util.function.Predicate; + +import com.minelittlepony.unicopia.AwaitTickQueue; +import com.minelittlepony.unicopia.EquinePredicates; +import com.minelittlepony.unicopia.Race; +import com.minelittlepony.unicopia.USounds; +import com.minelittlepony.unicopia.ability.data.Hit; +import com.minelittlepony.unicopia.ability.magic.spell.ShieldSpell; +import com.minelittlepony.unicopia.entity.player.Pony; +import com.minelittlepony.unicopia.util.MagicalDamageSource; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.sound.SoundCategory; +import net.minecraft.util.math.Vec3d; + +/** + * A magic casting ability for unicorns. + * (only shields for now) + */ +public class BatEeeeAbility implements Ability { + + private static final Predicate HAS_SHIELD = EquinePredicates.carryingSpell(ShieldSpell.class); + + @Override + public int getWarmupTime(Pony player) { + return 1; + } + + @Override + public int getCooldownTime(Pony player) { + return 1; + } + + @Override + public boolean canUse(Race race) { + return race == Race.BAT; + } + + @Override + public Hit tryActivate(Pony player) { + return Hit.INSTANCE; + } + + @Override + public Hit.Serializer getSerializer() { + return Hit.SERIALIZER; + } + + @Override + public void apply(Pony player, Hit data) { + Random rng = player.getWorld().random; + int count = 1 + rng.nextInt(10); + + for (int i = 0; i < count; i++) { + player.getWorld().playSound(null, player.getOrigin(), USounds.BATPONY_EEEE, SoundCategory.PLAYERS, + 0.9F + (rng.nextFloat() - 0.5F) / 2F, + 1.6F + (rng.nextFloat() - 0.5F) + ); + } + AwaitTickQueue.scheduleTask(player.getWorld(), w -> { + for (int i = 0; i < count; i++) { + player.getWorld().playSound(null, player.getOrigin(), USounds.BATPONY_EEEE, SoundCategory.PLAYERS, + 0.9F + (rng.nextFloat() - 0.5F) / 2F, + 1.6F + (rng.nextFloat() - 0.5F) + ); + } + }, rng.nextInt(10)); + + Vec3d origin = player.getOriginVector(); + + if (rng.nextInt(20000) == 0) { + player.getOwner().damage(MagicalDamageSource.create("eeee", player.getOwner()), 0.1F); + } + + player.findAllEntitiesInRange(5).forEach(e -> { + if (e instanceof LivingEntity && !HAS_SHIELD.test(e)) { + boolean isEarthPony = EquinePredicates.PLAYER_EARTH.test(e); + e.damage(MagicalDamageSource.create("eeee", player.getOwner()), isEarthPony ? 0.1F : 0.3F); + + Vec3d knockVec = origin.subtract(e.getPos()); + ((LivingEntity) e).takeKnockback(isEarthPony ? 0.3F : 0.5F, knockVec.getX(), knockVec.getZ()); + if (!isEarthPony) { + e.addVelocity(0, 0.1, 0); + } + } + }); + } + + @Override + public void preApply(Pony player, AbilitySlot slot) { + } + + @Override + public void postApply(Pony player, AbilitySlot slot) { + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java b/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java new file mode 100644 index 00000000..ee14e350 --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/ability/BatPonyHangAbility.java @@ -0,0 +1,71 @@ +package com.minelittlepony.unicopia.ability; + +import com.minelittlepony.unicopia.Race; +import com.minelittlepony.unicopia.ability.data.Numeric; +import com.minelittlepony.unicopia.entity.player.PlayerAttributes; +import com.minelittlepony.unicopia.entity.player.Pony; + +import net.minecraft.entity.attribute.EntityAttributeInstance; + +/** + * A magic casting ability for unicorns. + * (only shields for now) + */ +public class BatPonyHangAbility implements Ability { + + @Override + public int getWarmupTime(Pony player) { + return 1; + } + + @Override + public int getCooldownTime(Pony player) { + return 0; + } + + @Override + public boolean canUse(Race race) { + return race == Race.BAT; + } + + @Override + public Numeric tryActivate(Pony player) { + + EntityAttributeInstance attr = player.getOwner().getAttributeInstance(PlayerAttributes.ENTITY_GRAVTY_MODIFIER); + + if (attr.hasModifier(PlayerAttributes.BAT_HANGING)) { + return new Numeric(0); + } else if (player.canHangAt()) { + return new Numeric(1); + } + + return null; + } + + @Override + public Numeric.Serializer getSerializer() { + return Numeric.SERIALIZER; + } + + @Override + public void apply(Pony player, Numeric data) { + EntityAttributeInstance attr = player.getOwner().getAttributeInstance(PlayerAttributes.ENTITY_GRAVTY_MODIFIER); + + if (data.type == 0 && attr.hasModifier(PlayerAttributes.BAT_HANGING)) { + attr.removeModifier(PlayerAttributes.BAT_HANGING); + return; + } + + if (data.type == 1 && player.canHangAt()) { + attr.addPersistentModifier(PlayerAttributes.BAT_HANGING); + } + } + + @Override + public void preApply(Pony player, AbilitySlot slot) { + } + + @Override + public void postApply(Pony player, AbilitySlot slot) { + } +} diff --git a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerAttributes.java b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerAttributes.java index a67e0e6f..c3e786a9 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerAttributes.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerAttributes.java @@ -12,9 +12,10 @@ import net.minecraft.entity.attribute.EntityAttributes; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.util.registry.Registry; -class PlayerAttributes { +public class PlayerAttributes { - static final EntityAttribute EXTENDED_REACH_DISTANCE = register("unicopia.pegasus.reach", new ClampedEntityAttribute("player.reachDistance", 0, 0, 10)); + public static final EntityAttribute EXTENDED_REACH_DISTANCE = register("unicopia.pegasus.reach", new ClampedEntityAttribute("player.reachDistance", 0, 0, 10).setTracked(true)); + public static final EntityAttribute ENTITY_GRAVTY_MODIFIER = register("unicopia.player.gravity", (new EntityAttribute("player.gravityModifier", 1) {}).setTracked(true)); private static final EntityAttributeModifier EARTH_PONY_STRENGTH = new EntityAttributeModifier(UUID.fromString("777a5505-521e-480b-b9d5-6ea54f259564"), "Earth Pony Strength", 0.6, Operation.MULTIPLY_TOTAL); @@ -23,6 +24,9 @@ class PlayerAttributes { private static final EntityAttributeModifier PEGASUS_REACH = new EntityAttributeModifier(UUID.fromString("707b50a8-03e8-40f4-8553-ecf67025fd6d"), "Pegasus Reach", 1.5, Operation.ADDITION); + public static final EntityAttributeModifier BAT_HANGING = + new EntityAttributeModifier(UUID.fromString("a54f2595-521e-480b-b9d5-6e750577a564"), "Bat Pony Hanging", -2, Operation.MULTIPLY_TOTAL); + public void applyAttributes(Pony pony) { PlayerEntity entity = pony.getOwner(); Race race = pony.getSpecies(); @@ -49,5 +53,5 @@ class PlayerAttributes { private static EntityAttribute register(String id, EntityAttribute attribute) { return Registry.register(Registry.ATTRIBUTE, id, attribute); - } + } } diff --git a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerCamera.java b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerCamera.java index ee0718a3..097925ea 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerCamera.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerCamera.java @@ -30,7 +30,7 @@ public class PlayerCamera extends MotionCompositor { } if (player.getEntity().age > 10) { - roll = player.getInterpolator().interpolate("roll", (float)roll, 50); + roll = player.getInterpolator().interpolate("roll", (float)roll, 15); } return (float)roll; diff --git a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerPhysics.java b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerPhysics.java index 9bad4cbb..e4cc8157 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerPhysics.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/player/PlayerPhysics.java @@ -42,6 +42,16 @@ public class PlayerPhysics extends EntityPhysics implements Tickable, Moti dimensions = new PlayerDimensions(pony, this); } + @Override + public float getGravityModifier() { + if (pony.getOwner().getAttributes() == null) { + // may be null due to order of execution in the contructor. + // Will have the default (1) here in any case, so it's safe to ignore the attribute a this point. + return super.getGravityModifier(); + } + return super.getGravityModifier() * (float)pony.getOwner().getAttributeValue(PlayerAttributes.ENTITY_GRAVTY_MODIFIER); + } + private boolean checkCanFly() { if (pony.getOwner().abilities.creativeMode || pony.getOwner().isSpectator()) { return true; diff --git a/src/main/java/com/minelittlepony/unicopia/entity/player/Pony.java b/src/main/java/com/minelittlepony/unicopia/entity/player/Pony.java index 23f97325..12148826 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/player/Pony.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/player/Pony.java @@ -31,8 +31,10 @@ import com.minelittlepony.common.util.animation.LinearInterpolator; import com.minelittlepony.common.util.animation.Interpolator; import com.mojang.authlib.GameProfile; +import net.minecraft.block.BlockState; import net.minecraft.entity.Entity; import net.minecraft.entity.attribute.DefaultAttributeContainer; +import net.minecraft.entity.attribute.EntityAttributeInstance; import net.minecraft.entity.data.DataTracker; import net.minecraft.entity.data.TrackedData; import net.minecraft.entity.data.TrackedDataHandlerRegistry; @@ -46,6 +48,7 @@ import net.minecraft.server.world.ServerWorld; import net.minecraft.text.Text; import net.minecraft.text.TranslatableText; import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Direction; import net.minecraft.util.math.Vec3d; public class Pony implements Caster, Equine, Transmittable, Copieable { @@ -91,6 +94,7 @@ public class Pony implements Caster, Equine, Transmi public static void registerAttributes(DefaultAttributeContainer.Builder builder) { builder.add(PlayerAttributes.EXTENDED_REACH_DISTANCE); + builder.add(PlayerAttributes.ENTITY_GRAVTY_MODIFIER); } @Override @@ -226,8 +230,28 @@ public class Pony implements Caster, Equine, Transmi return false; } + public boolean canHangAt() { + BlockPos above = getOrigin(); + above = new BlockPos(above.getX(), getOwner().getEyeY() + 1, above.getZ()); + BlockState state = getWorld().getBlockState(above); + + return state.hasSolidTopSurface(getWorld(), above, getEntity(), Direction.DOWN); + } + @Override public void tick() { + + EntityAttributeInstance attr = entity.getAttributes().getCustomInstance(PlayerAttributes.ENTITY_GRAVTY_MODIFIER); + + if (attr.hasModifier(PlayerAttributes.BAT_HANGING)) { + gravity.isFlying = false; + entity.abilities.flying = false; + + if (Entity.squaredHorizontalLength(entity.getVelocity()) > 0.01 || entity.isSneaking() || !canHangAt()) { + attr.removeModifier(PlayerAttributes.BAT_HANGING); + } + } + gravity.tick(); if (hasSpell()) { diff --git a/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinGameRenderer.java b/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinGameRenderer.java index 17ebc49b..fe9d6667 100644 --- a/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinGameRenderer.java +++ b/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinGameRenderer.java @@ -6,6 +6,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; +import com.minelittlepony.unicopia.EquinePredicates; import com.minelittlepony.unicopia.client.render.WorldRenderDelegate; import com.minelittlepony.unicopia.entity.player.Pony; @@ -13,6 +14,8 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.render.Camera; import net.minecraft.client.render.GameRenderer; import net.minecraft.client.util.math.MatrixStack; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.effect.StatusEffects; import net.minecraft.resource.SynchronousResourceReloadListener; @Mixin(GameRenderer.class) @@ -28,7 +31,24 @@ abstract class MixinGameRenderer implements AutoCloseable, SynchronousResourceRe @Inject(method = "renderWorld(FJLnet/minecraft/client/util/math/MatrixStack;)V", at = @At("HEAD")) - public void onRenderWorld(float tickDelta, long limitTime, MatrixStack matrices, CallbackInfo info) { + private void onRenderWorld(float tickDelta, long limitTime, MatrixStack matrices, CallbackInfo info) { WorldRenderDelegate.INSTANCE.applyWorldTransform(matrices, tickDelta); } + + @Inject(method = "getNightVisionStrength(FJLnet/minecraft/entity/LivingEntity;F)F", + at = @At("HEAD"), + cancellable = true) + private static void onGetNightVisionStrengthHead(LivingEntity entity, float tickDelta, CallbackInfoReturnable info) { + if (!entity.hasStatusEffect(StatusEffects.NIGHT_VISION)) { + info.setReturnValue(0.6F); + } + } + @Inject(method = "getNightVisionStrength(FJLnet/minecraft/entity/LivingEntity;F)F", + at = @At("RETURN"), + cancellable = true) + private static void onGetNightVisionStrengthReturn(LivingEntity entity, float tickDelta, CallbackInfoReturnable info) { + if (entity.hasStatusEffect(StatusEffects.NIGHT_VISION) && EquinePredicates.PLAYER_BAT.test(entity)) { + info.setReturnValue(Math.min(1, info.getReturnValueF() + 0.6F)); + } + } } diff --git a/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinLightmapTextureManager.java b/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinLightmapTextureManager.java new file mode 100644 index 00000000..6a22c00e --- /dev/null +++ b/src/main/java/com/minelittlepony/unicopia/mixin/client/MixinLightmapTextureManager.java @@ -0,0 +1,23 @@ +package com.minelittlepony.unicopia.mixin.client; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import com.minelittlepony.unicopia.EquinePredicates; + +import net.minecraft.client.network.ClientPlayerEntity; +import net.minecraft.client.render.LightmapTextureManager; +import net.minecraft.entity.effect.StatusEffect; +import net.minecraft.entity.effect.StatusEffects; + +@Mixin(LightmapTextureManager.class) +abstract class MixinLightmapTextureManager implements AutoCloseable { + @Redirect(method = "update(F)V", + at = @At(value = "INVOKE", + target = "net/minecraft/client/network/ClientPlayerEntity.hasStatusEffect(Lnet/minecraft/entity/effect/StatusEffect;)Z") + ) + private boolean redirectHasStatusEffect(ClientPlayerEntity entity, StatusEffect effect) { + return (effect == StatusEffects.NIGHT_VISION && EquinePredicates.PLAYER_BAT.test(entity)) || entity.hasStatusEffect(effect); + } +} diff --git a/src/main/resources/assets/unicopia/lang/en_us.json b/src/main/resources/assets/unicopia/lang/en_us.json index 963bfcce..89e8580b 100644 --- a/src/main/resources/assets/unicopia/lang/en_us.json +++ b/src/main/resources/assets/unicopia/lang/en_us.json @@ -182,17 +182,14 @@ "death.attack.darkness": "%1$s went missing", "death.attack.feed": "%1$s was drained of all life", "death.attack.feed.attacker": "%1$s died to feed %2$s", - "death.attack.cold": "%1$s died of frost bite", - "death.attack.cold.attacker": "%1$s was frozen to death by %2$s", - "death.attack.cold.attacker.item": "%1$s was frozen to death by %2$s using %3$s", + "death.attack.eeee": "%1$s was firghtened to death", + "death.attack.eeee.attacker": "%2$s scared %1$s", + "death.attack.eeee.attacker.item": "%1$s was frightened to death by %2$s using %3$s", + "death.attack.eeee.self": "%1$s scared themselves to death", "death.attack.smash": "%1$s was crushed under hoof", "death.attack.smash.attacker": "%1$s was crushed by %2$s", - "death.attack.fire": "%1$s was burnt to a crisp by magic", - "death.attack.fire.attacker": "%1$s was burnt to a crisp by %2$s", - "death.attack.fire.self": "%1$s was burnt to a crisp by their own spell", - "death.attack.zap": "%1$s ate a Zap Apple", + "death.attack.zap": "%1$s bit into a Zap Apple", "death.attack.paradox": "%1$s imploded", - "death.attack.acid": "%1$s drowned in acid", "death.attack.food_poisoning": "%1$s died of food poisoning", "death.attack.food_poisoning.attacker": "%2$s poisoned %1$s to death", diff --git a/src/main/resources/assets/unicopia/sounds.json b/src/main/resources/assets/unicopia/sounds.json index b81f2773..d0f38fea 100644 --- a/src/main/resources/assets/unicopia/sounds.json +++ b/src/main/resources/assets/unicopia/sounds.json @@ -9,6 +9,16 @@ "unicopia:wing/wing3" ] }, + "batpony_eeee": { + "category": "player", + "subtitle": "unicopia.subtitle.batpony_eeee", + "sounds": [ + "unicopia:batpony/reep", + "unicopia:batpony/eeep", + "unicopia:batpony/screep0", + "unicopia:batpony/screep1" + ] + }, "changeling_buzz": { "category": "player", "subtitle": "unicopia.subtitle.changeling_buzz", diff --git a/src/main/resources/assets/unicopia/sounds/batpony/eeee.ogg b/src/main/resources/assets/unicopia/sounds/batpony/eeee.ogg new file mode 100644 index 0000000000000000000000000000000000000000..41d5f4b8b76a12e534997bfb0d2668a2c383a1fc GIT binary patch literal 22550 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 E0Cyrdd;kCd literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/sounds/batpony/eeep.ogg b/src/main/resources/assets/unicopia/sounds/batpony/eeep.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b6f7d6f4b0e7e67305ca294509dbd5edbe6fc386 GIT binary patch literal 7775 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/sounds/batpony/reep.ogg b/src/main/resources/assets/unicopia/sounds/batpony/reep.ogg new file mode 100644 index 0000000000000000000000000000000000000000..40736f4751b7f37fa3f2eb1075abb6487c2f52e9 GIT binary patch literal 8306 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/sounds/batpony/screep1.ogg b/src/main/resources/assets/unicopia/sounds/batpony/screep1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a649f158ed1473762d292449d08b1bc2a5fd6c2c GIT binary patch literal 10139 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/gui/ability/carry.png b/src/main/resources/assets/unicopia/textures/gui/ability/carry.png index 3bd33fbe1c234554c1a09ce1a2af95a23700586a..6dc5380daa8d1ae6a5c4f375b924d08dccef72df 100644 GIT binary patch delta 844 zcmV-S1GD^@2I2;gBYy)aNkl7a>9qF2R4rEP<}aO5vgQhGmrn-Tc-1-ST)!Brod)2)RHB!eUu z!54+YH61@=1pJ%K_#i zbDjr*2mSuB-nVyOeC$h$+cN^Xq~w}T ztg_9nD}M=8e|BhGTD>lJHvRS5OO~6m~%al|iZrze&)=lvYqI#`fmwHA(Md`))IRc-NpOhzCDWtZE zmqo4w0050!CkKDg;_ZzCI2L}z@=xuOk}ms~ z$yG|(G;SRMR)U{UiX0a!>mg^a>JsxV`1-*N3(nqKjsXD7svHhrV7If3s`c9YW_NGd zrjg@jMMt(IRe$y;7vbyE^X}p9O^|{!K2Tbc{h{o00nmm50urqK>ke+#L0YZX@cQ&D z2BEMwLVz;Q5KwF;+X%Lj{h{o&2u6yq{$WoyKQzE^{+cQwu@(@?7hi_M#oc7+J6D#vzgifi)SNcQ1NU8``d59 zzL9)pXJ5y($;63{yq{$8^s z20&*ipD8&|v0b%Z%XB1r%~r;kM8~>SF6!~faRD0)i`_;m>mkQ>WXm~XkrOCekt9$1 z2fM&qj(^20^lTT>WVHWJ$d7F*QmWQ#?+AQfPXxGmr@12HobPQ_xTr`=Ws)+;n3M7ju6fe7NbxzTDpQOh>2f0v(U5*ikOz$Z@gh#{S2j zeWjj!RO>Y{06GSe2GemEIj&Ezs&3ZdVh)wwhrVBb1{~*4DEA zqz@CG9cA<=OBI(8^s=6r29PG(-2l1^B&+zyafOkNE~$7ng0~z)r#D7`E6$Kv6(4|4 z?tkF8xZ{&sZ?cr>SKw&Qn0Pw%r zkBM=WY1)9}9bI1+0$#t7ClR%i~)GNin>?GRCfp6!&W! z1qypveDy^F0H6k&2e*f!o+?5GYGb4ZLoIo3fi?^7s=%p}Ku;h6H5g*`JXM1sxRDcq zyCtAQfsMx!_Z)yLK&foB9A^=@gFyI%$qR}|`utW7m#xXc(!}|53;;4K zL=)rSgr;WF=oBS*@WVgk?M}YAx}?06=r{_Y#_gtgQEEPyq^|-VP~Uf z2mt1NN@LC3t+-xfi#r>dip>_MtKR;_@&p_IyoFc0R2O?GKXA^5^{?O!D%ch4U#GXNkWa`S#H9Bq$4tzEn@i1e*{m4>!- zpZ~v^ld12$A{b+=P&UCB1Iz#ipspI3&a z4L}Ws004J>cuL2QMDXnSD*RpvM*}aJ1s+PK(4W4Gn;VPb5LhH0t!D7!&sm)Nq~8&i zM#rzihb26FzKWsY_nF@-VKXPw?rtRkL&+3wZY*MQWYl>k6cMQnPvmseQR$|8 zzi!h|7{z~f9M`@W+C(LenyOU;>OfH25vFdu31aBfik*d}5<}T}26zNU7zcLV3<`qx0KqB94Qnjra-zEA^Keqj*32P#O_Ybx~GkDqYCW;F~@afxU0QReU z2t(kw4qq<50`TG^(jkHg|t