fixed various errors with rough draft of new stuff

This commit is contained in:
craisinlord committed 2026-06-25 00:31:49 -05:00
1 parent fb8fd3c927
commit cd2972a208
44 files changed
+162 -393

No files matched your search

@@ -1,29 +0,0 @@
/*
* Copyright (c) Forge Development LLC and contributors
* SPDX-License-Identifier: LGPL-2.1-only
*/
package net.neoforged.neoforge.entity;
import net.minecraft.network.protocol.Packet;
import net.minecraft.network.protocol.game.ClientGamePacketListener;
import net.minecraft.server.level.ServerEntity;
import net.minecraft.world.entity.Entity;
public abstract class PartEntity<T extends Entity> extends Entity {
private final T parent;
public PartEntity(T parent) {
super(parent.getType(), parent.level());
this.parent = parent;
}
public T getParent() {
return parent;
}
@Override
public Packet<ClientGamePacketListener> getAddEntityPacket(ServerEntity entity) {
throw new UnsupportedOperationException();
}
}
@@ -1,230 +0,0 @@
/*
Direct copy of https://github.com/shedaniel/cloth-basic-math/blob/master/src/main/java/me/shedaniel/math/Color.java under the unlicense.
*/
package software.bernie.geckolib.util;
/**
* Color holder object for storing a packed int argb value.
*/
public record Color(int argbInt) {
public static final Color WHITE = new Color(0xFFFFFFFF);
public static final Color LIGHT_GRAY = new Color(0xFFC0C0C0);
public static final Color GRAY = new Color(0xFF808080);
public static final Color DARK_GRAY = new Color(0xFF404040);
public static final Color BLACK = new Color(0xFF000000);
public static final Color RED = new Color(0xFFFF0000);
public static final Color PINK = new Color(0xFFFFAFAF);
public static final Color ORANGE = new Color(0xFFFFC800);
public static final Color YELLOW = new Color(0xFFFFFF00);
public static final Color GREEN = new Color(0xFF00FF00);
public static final Color MAGENTA = new Color(0xFFFF00FF);
public static final Color CYAN = new Color(0xFF00FFFF);
public static final Color BLUE = new Color(0xFF0000FF);
/**
* Creates a new {@code Color} instance from RGB values, ensuring 100% opacity
*/
public static Color ofOpaque(int color) {
return new Color(0xFF000000 | color);
}
/**
* Creates a new {@code Color} instance from RGB values with 100% opacity
*/
public static Color ofRGB(float red, float green, float blue) {
return ofRGBA(red, green, blue, 1f);
}
/**
* Creates a new {@code Color} instance from RGB values with 100% opacity
*/
public static Color ofRGB(int r, int g, int b) {
return ofRGBA(r, g, b, 255);
}
/**
* Creates a new {@code Color} instance from RGBA values
*/
public static Color ofRGBA(float r, float g, float b, float a) {
return ofRGBA((int)(r * 255f + 0.5), (int)(g * 255f + 0.5f), (int)(b * 255f + 0.5f), (int)(a * 255f + 0.5f));
}
/**
* Creates a new {@code Color} instance from RGBA values
*/
public static Color ofRGBA(int r, int g, int b, int a) {
return new Color(((a & 0xFF) << 24) | ((r & 0xFF) << 16) | ((g & 0xFF) << 8) | (b & 0xFF));
}
/**
* Creates a new {@code Color} instance from ARGB values
*/
public static Color ofARGB(float a, float r, float g, float b) {
return ofARGB((int)(a * 255f + 0.5f), (int)(r * 255f + 0.5), (int)(g * 255f + 0.5f), (int)(b * 255f + 0.5f));
}
/**
* Creates a new {@code Color} instance from ARGB values
*/
public static Color ofARGB(int a, int r, int g, int b) {
return new Color(((a & 0xFF) << 24) | ((r & 0xFF) << 16) | ((g & 0xFF) << 8) | (b & 0xFF));
}
/**
* Creates a new {@code Color} instance from HSB values with 100% opacity
*/
public static Color ofHSB(float hue, float saturation, float brightness) {
return ofOpaque(HSBtoARGB(hue, saturation, brightness));
}
/**
* Converts a HSB value triplet to a packed ARGB int
*/
public static int HSBtoARGB(float hue, float saturation, float brightness) {
int r = 0;
int g = 0;
int b = 0;
if (saturation == 0) {
r = g = b = (int) (brightness * 255f + 0.5f);
}
else {
float h = (hue - (float)Math.floor(hue)) * 6f;
float f = h - (float)Math.floor(h);
float p = brightness * (1 - saturation);
float q = brightness * (1 - saturation * f);
float t = brightness * (1 - (saturation * (1 - f)));
switch ((int)h) {
case 0 -> {
r = (int) (brightness * 255f + 0.5f);
g = (int) (t * 255f + 0.5f);
b = (int) (p * 255f + 0.5f);
}
case 1 -> {
r = (int) (q * 255f + 0.5f);
g = (int) (brightness * 255f + 0.5f);
b = (int) (p * 255f + 0.5f);
}
case 2 -> {
r = (int) (p * 255f + 0.5f);
g = (int) (brightness * 255f + 0.5f);
b = (int) (t * 255f + 0.5f);
}
case 3 -> {
r = (int) (p * 255f + 0.5f);
g = (int) (q * 255f + 0.5f);
b = (int) (brightness * 255f + 0.5f);
}
case 4 -> {
r = (int) (t * 255f + 0.5f);
g = (int) (p * 255f + 0.5f);
b = (int) (brightness * 255f + 0.5f);
}
case 5 -> {
r = (int) (brightness * 255f + 0.5f);
g = (int) (p * 255f + 0.5f);
b = (int) (q * 255f + 0.5f);
}
}
}
return 0xFF000000 | (r << 16) | (g << 8) | b;
}
public int getColor() {
return this.argbInt;
}
public int getAlpha() {
return this.argbInt >> 24 & 0xFF;
}
public float getAlphaFloat() {
return getAlpha() / 255f;
}
public int getRed() {
return this.argbInt >> 16 & 0xFF;
}
public float getRedFloat() {
return getRed() / 255f;
}
public int getGreen() {
return this.argbInt >> 8 & 0xFF;
}
public float getGreenFloat() {
return getGreen() / 255f;
}
public int getBlue() {
return this.argbInt & 0xFF;
}
public float getBlueFloat() {
return getBlue() / 255f;
}
/**
* Returns a brighter variant of the same color
*
* @param factor The factor for shading
*/
public Color brighter(double factor) {
int r = getRed();
int g = getGreen();
int b = getBlue();
int i = (int)(1 / (1 - (1 / factor)));
if (r == 0 && g == 0 && b == 0)
return ofRGBA(i, i, i, getAlpha());
if (r > 0 && r < i)
r = i;
if (g > 0 && g < i)
g = i;
if (b > 0 && b < i)
b = i;
return ofRGBA(Math.min((int) (r / (1 / factor)), 255), Math.min((int) (g / (1 / factor)), 255),
Math.min((int) (b / (1 / factor)), 255), getAlpha());
}
/**
* Returns a darker variant of the same color
*
* @param factor The factor for shading. The value provided is an inversely relative multiplier.<br>
* E.G. input=2 -> 2x as dark.<br>
* E.G. input=0.5 -> 0.5x as dark (brighter)
*/
public Color darker(float factor) {
return ofRGBA(Math.max((int)(getRed() * (1 / factor)), 0), Math.max((int)(getGreen() * (1 / factor)), 0),
Math.max((int)(getBlue() * (1 / factor)), 0), getAlpha());
}
@Override
public boolean equals(Object other) {
if (this == other)
return true;
if (getClass() != other.getClass())
return false;
return hashCode() == other.hashCode();
}
@Override
public int hashCode() {
return this.argbInt;
}
@Override
public String toString() {
return String.valueOf(this.argbInt);
}
}
@@ -20,7 +20,7 @@ public class CreepingHorrorRenderer extends GeoEntityRenderer<CreepingHorrorEnti
@Override
public void preRender(PoseStack poseStack, CreepingHorrorEntity animatable, BakedGeoModel model, @Nullable MultiBufferSource bufferSource, @Nullable VertexConsumer buffer, boolean isReRender, float partialTick, int packedLight, int packedOverlay, int colour) {
super.preRender(poseStack, animatable, model, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, colour);
if (animatable.isClimbing()) {
if (animatable.isWallClimbing()) {
poseStack.mulPose(Axis.XP.rotationDegrees(-90.0F));
poseStack.translate(0, -0.5, 0.5);
}
@@ -29,7 +29,7 @@ import software.bernie.geckolib.util.GeckoLibUtil;
public class CreepingHorrorEntity extends Monster implements GeoEntity {
private static final EntityDataAccessor<Boolean> CLIMBING =
SynchedEntityData.defineId(JumpyBugEntity.class, EntityDataSerializers.BOOLEAN);
SynchedEntityData.defineId(CreepingHorrorEntity.class, EntityDataSerializers.BOOLEAN);
private static final RawAnimation IDLE_ANIM = RawAnimation.begin().thenLoop("idle");
private static final RawAnimation WALK_ANIM = RawAnimation.begin().thenLoop("walk");
@@ -75,7 +75,11 @@ public class CreepingHorrorEntity extends Monster implements GeoEntity {
@Override
public boolean onClimbable() {
return this.horizontalCollision;
return this.entityData.get(CLIMBING);
}
public boolean isWallClimbing() {
return this.entityData.get(CLIMBING) && !this.onGround();
}
@Override
@@ -120,11 +124,9 @@ public class CreepingHorrorEntity extends Monster implements GeoEntity {
@Override
public void tick() {
super.tick();
if (!this.level().isClientSide()) {
this.entityData.set(CLIMBING, this.horizontalCollision);
}
if (attackAnimTicks > 0) attackAnimTicks--;
}
//TODO IT NEVER ACTUALLY SETS TO CLIMBING
public boolean isClimbing() {
return this.entityData.get(CLIMBING);
}
}
@@ -78,9 +78,9 @@ public class LurkingTerrorEntity extends Monster implements GeoEntity {
private PlayState mainAnimController(AnimationState<LurkingTerrorEntity> state) {
if (attackAnimTicks > 0) {
// if (!this.isOnGround()) {
// return state.setAndContinue(ATTACK_AIR_ANIM);
// }
if (!this.onGround()) {
return state.setAndContinue(ATTACK_AIR_ANIM);
}
return state.setAndContinue(ATTACK_LAND_ANIM);
}
if (state.isMoving()) {
@@ -1,76 +1,76 @@
{
{
"variants": {
"eggs=1,hatch=0": [
{ "model": "antarchy:block/creeping_horror_eggs_1" },
{ "model": "antarchy:block/creeping_horror_eggs_1", "y": 90 },
{ "model": "antarchy:block/creeping_horror_eggs_1", "y": 180 },
{ "model": "antarchy:block/creeping_horror_eggs_1", "y": 270 }
{ "model": "antarchy:block/creeping_horror_egg_1" },
{ "model": "antarchy:block/creeping_horror_egg_1", "y": 90 },
{ "model": "antarchy:block/creeping_horror_egg_1", "y": 180 },
{ "model": "antarchy:block/creeping_horror_egg_1", "y": 270 }
],
"eggs=1,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_1" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_1", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_1", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_1", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_1" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_1", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_1", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_1", "y": 270 }
],
"eggs=1,hatch=2": [
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_1" },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_1", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_1", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_1", "y": 270 }
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_1" },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_1", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_1", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_1", "y": 270 }
],
"eggs=2,hatch=0": [
{ "model": "antarchy:block/creeping_horror_eggs_2" },
{ "model": "antarchy:block/creeping_horror_eggs_2", "y": 90 },
{ "model": "antarchy:block/creeping_horror_eggs_2", "y": 180 },
{ "model": "antarchy:block/creeping_horror_eggs_2", "y": 270 }
{ "model": "antarchy:block/creeping_horror_egg_2" },
{ "model": "antarchy:block/creeping_horror_egg_2", "y": 90 },
{ "model": "antarchy:block/creeping_horror_egg_2", "y": 180 },
{ "model": "antarchy:block/creeping_horror_egg_2", "y": 270 }
],
"eggs=2,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_2" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_2", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_2", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_2", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_2" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_2", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_2", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_2", "y": 270 }
],
"eggs=2,hatch=2": [
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_2" },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_2", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_2", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_2", "y": 270 }
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_2" },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_2", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_2", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_2", "y": 270 }
],
"eggs=3,hatch=0": [
{ "model": "antarchy:block/creeping_horror_eggs_3" },
{ "model": "antarchy:block/creeping_horror_eggs_3", "y": 90 },
{ "model": "antarchy:block/creeping_horror_eggs_3", "y": 180 },
{ "model": "antarchy:block/creeping_horror_eggs_3", "y": 270 }
{ "model": "antarchy:block/creeping_horror_egg_3" },
{ "model": "antarchy:block/creeping_horror_egg_3", "y": 90 },
{ "model": "antarchy:block/creeping_horror_egg_3", "y": 180 },
{ "model": "antarchy:block/creeping_horror_egg_3", "y": 270 }
],
"eggs=3,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_3" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_3", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_3", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_3", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_3" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_3", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_3", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_3", "y": 270 }
],
"eggs=3,hatch=2": [
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_3" },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_3", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_3", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_3", "y": 270 }
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_3" },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_3", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_3", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_3", "y": 270 }
],
"eggs=4,hatch=0": [
{ "model": "antarchy:block/creeping_horror_eggs_4" },
{ "model": "antarchy:block/creeping_horror_eggs_4", "y": 90 },
{ "model": "antarchy:block/creeping_horror_eggs_4", "y": 180 },
{ "model": "antarchy:block/creeping_horror_eggs_4", "y": 270 }
{ "model": "antarchy:block/creeping_horror_egg_4" },
{ "model": "antarchy:block/creeping_horror_egg_4", "y": 90 },
{ "model": "antarchy:block/creeping_horror_egg_4", "y": 180 },
{ "model": "antarchy:block/creeping_horror_egg_4", "y": 270 }
],
"eggs=4,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_4" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_4", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_4", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_eggs_4", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_4" },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_4", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_4", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_creeping_horror_egg_4", "y": 270 }
],
"eggs=4,hatch=2": [
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_4" },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_4", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_4", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_eggs_4", "y": 270 }
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_4" },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_4", "y": 90 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_4", "y": 180 },
{ "model": "antarchy:block/very_cracked_creeping_horror_egg_4", "y": 270 }
]
}
}
@@ -1,76 +1,76 @@
{
{
"variants": {
"eggs=1,hatch=0": [
{ "model": "antarchy:block/lurking_terror_eggs_1" },
{ "model": "antarchy:block/lurking_terror_eggs_1", "y": 90 },
{ "model": "antarchy:block/lurking_terror_eggs_1", "y": 180 },
{ "model": "antarchy:block/lurking_terror_eggs_1", "y": 270 }
{ "model": "antarchy:block/lurking_terror_egg_1" },
{ "model": "antarchy:block/lurking_terror_egg_1", "y": 90 },
{ "model": "antarchy:block/lurking_terror_egg_1", "y": 180 },
{ "model": "antarchy:block/lurking_terror_egg_1", "y": 270 }
],
"eggs=1,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_1" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_1", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_1", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_1", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_1" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_1", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_1", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_1", "y": 270 }
],
"eggs=1,hatch=2": [
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_1" },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_1", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_1", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_1", "y": 270 }
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_1" },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_1", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_1", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_1", "y": 270 }
],
"eggs=2,hatch=0": [
{ "model": "antarchy:block/lurking_terror_eggs_2" },
{ "model": "antarchy:block/lurking_terror_eggs_2", "y": 90 },
{ "model": "antarchy:block/lurking_terror_eggs_2", "y": 180 },
{ "model": "antarchy:block/lurking_terror_eggs_2", "y": 270 }
{ "model": "antarchy:block/lurking_terror_egg_2" },
{ "model": "antarchy:block/lurking_terror_egg_2", "y": 90 },
{ "model": "antarchy:block/lurking_terror_egg_2", "y": 180 },
{ "model": "antarchy:block/lurking_terror_egg_2", "y": 270 }
],
"eggs=2,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_2" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_2", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_2", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_2", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_2" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_2", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_2", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_2", "y": 270 }
],
"eggs=2,hatch=2": [
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_2" },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_2", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_2", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_2", "y": 270 }
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_2" },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_2", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_2", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_2", "y": 270 }
],
"eggs=3,hatch=0": [
{ "model": "antarchy:block/lurking_terror_eggs_3" },
{ "model": "antarchy:block/lurking_terror_eggs_3", "y": 90 },
{ "model": "antarchy:block/lurking_terror_eggs_3", "y": 180 },
{ "model": "antarchy:block/lurking_terror_eggs_3", "y": 270 }
{ "model": "antarchy:block/lurking_terror_egg_3" },
{ "model": "antarchy:block/lurking_terror_egg_3", "y": 90 },
{ "model": "antarchy:block/lurking_terror_egg_3", "y": 180 },
{ "model": "antarchy:block/lurking_terror_egg_3", "y": 270 }
],
"eggs=3,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_3" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_3", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_3", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_3", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_3" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_3", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_3", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_3", "y": 270 }
],
"eggs=3,hatch=2": [
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_3" },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_3", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_3", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_3", "y": 270 }
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_3" },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_3", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_3", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_3", "y": 270 }
],
"eggs=4,hatch=0": [
{ "model": "antarchy:block/lurking_terror_eggs_4" },
{ "model": "antarchy:block/lurking_terror_eggs_4", "y": 90 },
{ "model": "antarchy:block/lurking_terror_eggs_4", "y": 180 },
{ "model": "antarchy:block/lurking_terror_eggs_4", "y": 270 }
{ "model": "antarchy:block/lurking_terror_egg_4" },
{ "model": "antarchy:block/lurking_terror_egg_4", "y": 90 },
{ "model": "antarchy:block/lurking_terror_egg_4", "y": 180 },
{ "model": "antarchy:block/lurking_terror_egg_4", "y": 270 }
],
"eggs=4,hatch=1": [
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_4" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_4", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_4", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_eggs_4", "y": 270 }
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_4" },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_4", "y": 90 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_4", "y": 180 },
{ "model": "antarchy:block/slightly_cracked_lurking_terror_egg_4", "y": 270 }
],
"eggs=4,hatch=2": [
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_4" },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_4", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_4", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_eggs_4", "y": 270 }
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_4" },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_4", "y": 90 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_4", "y": 180 },
{ "model": "antarchy:block/very_cracked_lurking_terror_egg_4", "y": 270 }
]
}
}
@@ -92,8 +92,8 @@
"block.antarchy.smooth_dream_sandstone_slab": "Smooth Dream Sandstone Slab",
"block.antarchy.cut_dream_sandstone_slab": "Cut Dream Sandstone Slab",
"block.antarchy.bed_bug_egg": "Bed Bug Egg",
"block.antarchy.creeping_horror_eggs": "Creeping Horror Eggs",
"block.antarchy.lurking_terror_eggs": "Lurking Terror Eggs",
"block.antarchy.creeping_horror_egg": "Creeping Horror Egg",
"block.antarchy.lurking_terror_egg": "Lurking Terror Egg",
"block.antarchy.wasp_nest": "Wasp Nest",
"block.antarchy.red_ant_nest": "Red Ant Nest",
"block.antarchy.brown_ant_nest": "Brown Ant Nest",
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "antarchy:item/creeping_horror_egg"
}
}
@@ -1,3 +0,0 @@
{
"parent": "antarchy:block/creeping_horror_eggs_1"
}
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "antarchy:item/lurking_terror_egg"
}
}
@@ -1,3 +0,0 @@
{
"parent": "antarchy:block/lurking_terror_eggs_1"
}
@@ -618,7 +618,7 @@ public final class AntarchyFabricContent {
() -> new DreamFireBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.SOUL_FIRE)));
public static final DeferredBlock<DreamCeilingFireBlock> DREAM_CEILING_FIRE = BLOCKS.register("dream_fire_ceiling",
() -> new DreamCeilingFireBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.SOUL_FIRE)));
public static final DeferredBlock<CreepingHorrorEggBlock> CREEPING_HORROR_EGGS = BLOCKS.register("creeping_horror_eggs",
public static final DeferredBlock<CreepingHorrorEggBlock> CREEPING_HORROR_EGG = BLOCKS.register("creeping_horror_egg",
() -> new CreepingHorrorEggBlock(BlockBehaviour.Properties.of()
.strength(0.15F)
.sound(SoundType.METAL)
@@ -626,7 +626,7 @@ public final class AntarchyFabricContent {
.noOcclusion()
.noCollission()
.replaceable()));
public static final DeferredBlock<LurkingTerrorEggBlock> LURKING_TERROR_EGGS = BLOCKS.register("lurking_terror_eggs",
public static final DeferredBlock<LurkingTerrorEggBlock> LURKING_TERROR_EGG = BLOCKS.register("lurking_terror_egg",
() -> new LurkingTerrorEggBlock(BlockBehaviour.Properties.of()
.strength(0.15F)
.sound(SoundType.METAL)
@@ -1137,8 +1137,8 @@ public final class AntarchyFabricContent {
() -> new StandingAndWallBlockItem(DREAM_TORCH.get(), DREAM_WALL_TORCH.get(), new Item.Properties(), Direction.UP));
public static final DeferredItem<net.minecraft.world.item.BlockItem> DREAM_LANTERN_ITEM = ITEMS.registerSimpleBlockItem(DREAM_LANTERN);
public static final DeferredItem<net.minecraft.world.item.BlockItem> DREAM_CAMPFIRE_ITEM = ITEMS.registerSimpleBlockItem(DREAM_CAMPFIRE);
public static final DeferredItem<net.minecraft.world.item.BlockItem> CREEPING_HORROR_EGGS_ITEM = ITEMS.registerSimpleBlockItem(CREEPING_HORROR_EGGS);
public static final DeferredItem<net.minecraft.world.item.BlockItem> LURKING_TERROR_EGGS_ITEM = ITEMS.registerSimpleBlockItem(LURKING_TERROR_EGGS);
public static final DeferredItem<net.minecraft.world.item.BlockItem> CREEPING_HORROR_EGG_ITEM = ITEMS.registerSimpleBlockItem(CREEPING_HORROR_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> LURKING_TERROR_EGG_ITEM = ITEMS.registerSimpleBlockItem(LURKING_TERROR_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> BED_BUG_EGG_ITEM = ITEMS.registerSimpleBlockItem(BED_BUG_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> WASP_NEST_ITEM = ITEMS.registerSimpleBlockItem(WASP_NEST);
public static final DeferredItem<net.minecraft.world.item.BlockItem> HUSHWEED_ITEM = ITEMS.registerSimpleBlockItem(HUSHWEED);
@@ -2349,8 +2349,8 @@ public final class AntarchyFabricContent {
() -> PINK_MILKWEED.get(),
() -> TORCHFLOWER_BUSH.get(),
() -> BED_BUG_EGG.get(),
() -> CREEPING_HORROR_EGGS.get(),
() -> LURKING_TERROR_EGGS.get(),
() -> CREEPING_HORROR_EGG.get(),
() -> LURKING_TERROR_EGG.get(),
() -> WASP_NEST.get(),
() -> HUSHWEED.get(),
() -> OURANWOOD_SQUIRREL_NEST.get(),
@@ -1,7 +1,7 @@
package com.craisinlord.antarchy.fabric.mixin;
import com.craisinlord.antarchy.content.item.JumpyBootsHelper;
import com.craisinlord.antarchy.content.item.JumpyBootsItem;
import com.craisinlord.antarchy.fabric.util.JumpyBootsFabricHelper;
import net.minecraft.world.entity.LivingEntity;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
@@ -13,7 +13,7 @@ public abstract class JumpyBootsFallDamageMixin {
private float antarchy$reduceJumpyBootsFallDamage(float fallDistance) {
LivingEntity self = (LivingEntity) (Object) this;
if (!JumpyBootsItem.isWearingJumpyBoots(self)) return fallDistance;
long protectionUntil = self.getPersistentData().getLong(JumpyBootsHelper.FALL_PROTECTION_NBT_KEY);
long protectionUntil = JumpyBootsFabricHelper.getProtectionUntil(self);
if (self.level().getGameTime() < protectionUntil) {
return fallDistance * 0.25F;
}
@@ -8,6 +8,7 @@ import com.craisinlord.antarchy.content.gravity.AntarchyGravityApi;
import com.craisinlord.antarchy.content.item.BrutalflyElytraFlightHelper;
import com.craisinlord.antarchy.content.item.BrutalflyElytraItem;
import com.craisinlord.antarchy.content.item.JumpyBootsHelper;
import com.craisinlord.antarchy.fabric.util.JumpyBootsFabricHelper;
import com.craisinlord.antarchy.content.item.JumpyBootsItem;
import com.craisinlord.antarchy.content.item.GravityGunItem;
import com.craisinlord.antarchy.content.network.*;
@@ -299,7 +300,7 @@ public final class AntarchyFabricNetworking {
player.level().playSound(null, player.blockPosition(), SoundEvents.SLIME_JUMP, SoundSource.PLAYERS,
1.0F, 0.6F + (clampedCharge / (float) JumpyBootsHelper.CHARGE_TICKS_MAX) * 0.6F);
player.getPersistentData().putLong(JumpyBootsHelper.FALL_PROTECTION_NBT_KEY,
JumpyBootsFabricHelper.setProtectionUntil(player,
player.level().getGameTime() + JumpyBootsHelper.FALL_PROTECTION_TICKS);
player.getCooldowns().addCooldown(boots.getItem(), JumpyBootsHelper.COOLDOWN_TICKS);
@@ -0,0 +1,19 @@
package com.craisinlord.antarchy.fabric.util;
import net.minecraft.world.entity.LivingEntity;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
public class JumpyBootsFabricHelper {
private static final Map<UUID, Long> PROTECTION_TIMES = new ConcurrentHashMap<>();
public static long getProtectionUntil(LivingEntity entity) {
return PROTECTION_TIMES.getOrDefault(entity.getUUID(), 0L);
}
public static void setProtectionUntil(LivingEntity entity, long gameTime) {
PROTECTION_TIMES.put(entity.getUUID(), gameTime);
}
}
@@ -235,8 +235,8 @@ public class AntarchyNeoforge {
() -> AntarchyNeoforgeBlocks.PINK_MILKWEED.get(),
() -> AntarchyNeoforgeBlocks.TORCHFLOWER_BUSH.get(),
() -> AntarchyNeoforgeBlocks.BED_BUG_EGG.get(),
() -> AntarchyNeoforgeBlocks.CREEPING_HORROR_EGGS.get(),
() -> AntarchyNeoforgeBlocks.LURKING_TERROR_EGGS.get(),
() -> AntarchyNeoforgeBlocks.CREEPING_HORROR_EGG.get(),
() -> AntarchyNeoforgeBlocks.LURKING_TERROR_EGG.get(),
() -> AntarchyNeoforgeBlocks.WASP_NEST.get(),
() -> AntarchyNeoforgeBlocks.HUSHWEED.get(),
() -> AntarchyNeoforgeBlocks.OURANWOOD_SQUIRREL_NEST.get(),
@@ -202,9 +202,9 @@ public final class AntarchyNeoforgeBlocks {
.noOcclusion()
.noCollission()
.replaceable()));
public static final DeferredBlock<CreepingHorrorEggBlock> CREEPING_HORROR_EGGS = BLOCKS.register("creeping_horror_eggs",
public static final DeferredBlock<CreepingHorrorEggBlock> CREEPING_HORROR_EGG = BLOCKS.register("creeping_horror_egg",
() -> new CreepingHorrorEggBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.TURTLE_EGG)));
public static final DeferredBlock<LurkingTerrorEggBlock> LURKING_TERROR_EGGS = BLOCKS.register("lurking_terror_eggs",
public static final DeferredBlock<LurkingTerrorEggBlock> LURKING_TERROR_EGG = BLOCKS.register("lurking_terror_egg",
() -> new LurkingTerrorEggBlock(BlockBehaviour.Properties.ofFullCopy(Blocks.TURTLE_EGG)));
public static final DeferredBlock<WaspNestBlock> WASP_NEST = BLOCKS.register("wasp_nest",
() -> new WaspNestBlock(AntarchyNeoforgeItems::waspNestBlockEntityType, BlockBehaviour.Properties.ofFullCopy(Blocks.BEE_NEST)));
@@ -95,8 +95,8 @@ public class AntarchyNeoforgeCreativeModeTabs {
event.accept(AntarchyNeoforgeItems.INFESTED_COARSE_DIRT_ITEM.get());
event.accept(AntarchyNeoforgeItems.TRIFFID_GOO_BLOCK_ITEM.get());
event.accept(AntarchyNeoforgeItems.BED_BUG_EGG_ITEM.get());
event.accept(AntarchyNeoforgeItems.CREEPING_HORROR_EGGS_ITEM.get());
event.accept(AntarchyNeoforgeItems.LURKING_TERROR_EGGS_ITEM.get());
event.accept(AntarchyNeoforgeItems.CREEPING_HORROR_EGG_ITEM.get());
event.accept(AntarchyNeoforgeItems.LURKING_TERROR_EGG_ITEM.get());
event.accept(AntarchyNeoforgeItems.WASP_NEST_ITEM.get());
event.accept(AntarchyNeoforgeItems.RED_ANT_NEST_ITEM.get());
event.accept(AntarchyNeoforgeItems.BROWN_ANT_NEST_ITEM.get());
@@ -270,8 +270,8 @@ public final class AntarchyNeoforgeItems {
public static final DeferredItem<net.minecraft.world.item.BlockItem> DREAM_LANTERN_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.DREAM_LANTERN);
public static final DeferredItem<net.minecraft.world.item.BlockItem> DREAM_CAMPFIRE_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.DREAM_CAMPFIRE);
public static final DeferredItem<net.minecraft.world.item.BlockItem> BED_BUG_EGG_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.BED_BUG_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> CREEPING_HORROR_EGGS_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.CREEPING_HORROR_EGGS);
public static final DeferredItem<net.minecraft.world.item.BlockItem> LURKING_TERROR_EGGS_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.LURKING_TERROR_EGGS);
public static final DeferredItem<net.minecraft.world.item.BlockItem> CREEPING_HORROR_EGG_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.CREEPING_HORROR_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> LURKING_TERROR_EGG_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.LURKING_TERROR_EGG);
public static final DeferredItem<net.minecraft.world.item.BlockItem> WASP_NEST_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.WASP_NEST);
public static final DeferredItem<net.minecraft.world.item.BlockItem> HUSHWEED_ITEM = ITEMS.registerSimpleBlockItem(AntarchyNeoforgeBlocks.HUSHWEED);
public static final DeferredItem<BucketItem> ICHOR_BUCKET = ITEMS.register("ichor_bucket",