diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/HybridAquaticClient.kt b/src/client/kotlin/dev/hybridlabs/aquatic/HybridAquaticClient.kt index 1e3dd0edd..5e855cb9d 100644 --- a/src/client/kotlin/dev/hybridlabs/aquatic/HybridAquaticClient.kt +++ b/src/client/kotlin/dev/hybridlabs/aquatic/HybridAquaticClient.kt @@ -59,7 +59,6 @@ object HybridAquaticClient : ClientModInitializer { BlockEntityRendererFactories.register(HybridAquaticBlockEntityTypes.MESSAGE_IN_A_BOTTLE, ::MessageInABottleBlockEntityRenderer) BlockEntityRendererFactories.register(HybridAquaticBlockEntityTypes.BUOY, ::BuoyBlockEntityRenderer) BlockEntityRendererFactories.register(HybridAquaticBlockEntityTypes.HYDROTHERMAL_VENT, ::HydrothermalVentBlockEntityRenderer) - BlockEntityRendererFactories.register(HybridAquaticBlockEntityTypes.CRAB_POT, ::CrabPotBlockEntityRenderer) BlockEntityRendererFactories.register(HybridAquaticBlockEntityTypes.TUBE_SPONGE, ::TubeSpongeBlockEntityRenderer) } @@ -72,7 +71,6 @@ object HybridAquaticClient : ClientModInitializer { registry.register(HybridAquaticItems.GIANT_CLAM, GiantClamBlockItemRenderer()) registry.register(HybridAquaticItems.TUBE_SPONGE, TubeSpongeBlockItemRenderer()) registry.register(HybridAquaticItems.BUOY, BuoyBlockItemRenderer()) - registry.register(HybridAquaticItems.CRAB_POT, CrabPotBlockItemRenderer()) registry.register(HybridAquaticItems.MESSAGE_IN_A_BOTTLE, MessageInABottleBlockItemRenderer()) registry.register(HybridAquaticItems.HYDROTHERMAL_VENT, HydrothermalVentBlockItemRenderer()) } diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/model/block/entity/CrabPotBlockEntityModel.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/model/block/entity/CrabPotBlockEntityModel.kt deleted file mode 100644 index 24e504ba4..000000000 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/model/block/entity/CrabPotBlockEntityModel.kt +++ /dev/null @@ -1,26 +0,0 @@ -package dev.hybridlabs.aquatic.client.model.block.entity - -import dev.hybridlabs.aquatic.HybridAquatic -import dev.hybridlabs.aquatic.block.entity.CrabPotBlockEntity -import net.minecraft.util.Identifier -import software.bernie.geckolib.model.GeoModel - -class CrabPotBlockEntityModel: GeoModel() { - override fun getAnimationResource(entity: CrabPotBlockEntity): Identifier { - return ANIMATION_LOCATION - } - - override fun getModelResource(animatable: CrabPotBlockEntity): Identifier { - return MODEL_LOCATION - } - - override fun getTextureResource(entity: CrabPotBlockEntity): Identifier { - return TEXTURE_LOCATION - } - - companion object { - val ANIMATION_LOCATION = Identifier(HybridAquatic.MOD_ID, "animations/crab_pot.animation.json") - val MODEL_LOCATION = Identifier(HybridAquatic.MOD_ID, "geo/crab_pot.geo.json") - val TEXTURE_LOCATION = Identifier(HybridAquatic.MOD_ID, "textures/block/crab_pot.png") - } -} \ No newline at end of file diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/model/entity/KarkinosEntityModel.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/model/entity/KarkinosEntityModel.kt deleted file mode 100644 index c85842362..000000000 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/model/entity/KarkinosEntityModel.kt +++ /dev/null @@ -1,5 +0,0 @@ -package dev.hybridlabs.aquatic.client.model.entity - -import dev.hybridlabs.aquatic.entity.critter.HybridAquaticCritterEntity - -class KarkinosEntityModel : HybridAquaticCritterEntityModel("karkinos") diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/block/entity/CrabPotBlockEntityRenderer.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/block/entity/CrabPotBlockEntityRenderer.kt deleted file mode 100644 index 2d99c1804..000000000 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/block/entity/CrabPotBlockEntityRenderer.kt +++ /dev/null @@ -1,8 +0,0 @@ -package dev.hybridlabs.aquatic.client.render.block.entity - -import dev.hybridlabs.aquatic.block.entity.CrabPotBlockEntity -import dev.hybridlabs.aquatic.client.model.block.entity.CrabPotBlockEntityModel -import net.minecraft.client.render.block.entity.BlockEntityRendererFactory.Context -import software.bernie.geckolib.renderer.GeoBlockRenderer - -class CrabPotBlockEntityRenderer(context: Context) : GeoBlockRenderer(CrabPotBlockEntityModel()) \ No newline at end of file diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/HybridAquaticEntityRenderers.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/HybridAquaticEntityRenderers.kt index b0636f8ec..eeac33757 100644 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/HybridAquaticEntityRenderers.kt +++ b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/HybridAquaticEntityRenderers.kt @@ -68,12 +68,10 @@ object HybridAquaticEntityRenderers { val YETI_CRAB = EntityRendererRegistry.register(HybridAquaticEntityTypes.YETI_CRAB, ::YetiCrabEntityRenderer) val GIANT_ISOPOD = EntityRendererRegistry.register(HybridAquaticEntityTypes.GIANT_ISOPOD, ::GiantIsopodEntityRenderer) val SHRIMP = EntityRendererRegistry.register(HybridAquaticEntityTypes.SHRIMP, ::ShrimpEntityRenderer) - val MANTIS_SHRIMP = EntityRendererRegistry.register(HybridAquaticEntityTypes.MANTIS_SHRIMP, ::MantisShrimpEntityRenderer) val CRAYFISH = EntityRendererRegistry.register(HybridAquaticEntityTypes.CRAYFISH, ::CrayfishEntityRenderer) val LOBSTER = EntityRendererRegistry.register(HybridAquaticEntityTypes.LOBSTER, ::LobsterEntityRenderer) val COCONUT_CRAB = EntityRendererRegistry.register(HybridAquaticEntityTypes.COCONUT_CRAB, ::CoconutCrabEntityRenderer) val HERMIT_CRAB = EntityRendererRegistry.register(HybridAquaticEntityTypes.HERMIT_CRAB, ::HermitCrabEntityRenderer) - val KARKINOS = EntityRendererRegistry.register(HybridAquaticEntityTypes.KARKINOS, ::KarkinosEntityRenderer) val STARFISH = EntityRendererRegistry.register(HybridAquaticEntityTypes.STARFISH, ::StarfishEntityRenderer) val NUDIBRANCH = EntityRendererRegistry.register(HybridAquaticEntityTypes.NUDIBRANCH, ::NudibranchEntityRenderer) val SEA_CUCUMBER = EntityRendererRegistry.register(HybridAquaticEntityTypes.SEA_CUCUMBER, ::SeaCucumberEntityRenderer) diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/KarkinosEntityRenderer.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/KarkinosEntityRenderer.kt deleted file mode 100644 index b99a7af9e..000000000 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/entity/KarkinosEntityRenderer.kt +++ /dev/null @@ -1,27 +0,0 @@ -package dev.hybridlabs.aquatic.client.render.entity - -import dev.hybridlabs.aquatic.client.model.entity.KarkinosEntityModel -import dev.hybridlabs.aquatic.entity.critter.HybridAquaticCritterEntity -import net.minecraft.client.render.VertexConsumerProvider -import net.minecraft.client.render.entity.EntityRendererFactory.Context -import net.minecraft.client.util.math.MatrixStack -import software.bernie.geckolib.renderer.GeoEntityRenderer - -class KarkinosEntityRenderer(context: Context) : GeoEntityRenderer(context, KarkinosEntityModel()) { - override fun render( - entity: HybridAquaticCritterEntity?, - entityYaw: Float, - partialTick: Float, - poseStack: MatrixStack?, - bufferSource: VertexConsumerProvider?, - packedLight: Int - ) { - val size = HybridAquaticCritterEntity.getScaleAdjustment(entity!!, 0.05f) - poseStack!!.scale(size, size, size) - super.render(entity, entityYaw, partialTick, poseStack, bufferSource, packedLight) - } - - override fun getMotionAnimThreshold(animatable: HybridAquaticCritterEntity?): Float { - return 0.0025f - } -} \ No newline at end of file diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/CrabPotBlockItemRenderer.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/CrabPotBlockItemRenderer.kt deleted file mode 100644 index 67515b087..000000000 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/CrabPotBlockItemRenderer.kt +++ /dev/null @@ -1,28 +0,0 @@ -package dev.hybridlabs.aquatic.client.render.item - -import dev.hybridlabs.aquatic.HybridAquaticClient -import dev.hybridlabs.aquatic.block.HybridAquaticBlocks -import dev.hybridlabs.aquatic.block.entity.CrabPotBlockEntity -import dev.hybridlabs.aquatic.client.render.block.entity.CrabPotBlockEntityRenderer -import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry.DynamicItemRenderer -import net.minecraft.client.render.VertexConsumerProvider -import net.minecraft.client.render.model.json.ModelTransformationMode -import net.minecraft.client.util.math.MatrixStack -import net.minecraft.item.ItemStack -import net.minecraft.util.math.BlockPos - -class CrabPotBlockItemRenderer: DynamicItemRenderer { - private val crabPotBlockEntity = CrabPotBlockEntity(BlockPos.ORIGIN, HybridAquaticBlocks.CRAB_POT.defaultState) - private val renderer = CrabPotBlockEntityRenderer(HybridAquaticClient.createBlockEntityRendererFactoryContext()) - - override fun render( - stack: ItemStack, - mode: ModelTransformationMode, - matrices: MatrixStack, - vertexConsumers: VertexConsumerProvider, - light: Int, - overlay: Int - ) { - renderer.render(crabPotBlockEntity, 1.0f, matrices, vertexConsumers, light, overlay) - } -} \ No newline at end of file diff --git a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/HydrothermalVentBlockItemRenderer.kt b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/HydrothermalVentBlockItemRenderer.kt index 9c8d5af2a..3d6f55273 100644 --- a/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/HydrothermalVentBlockItemRenderer.kt +++ b/src/client/kotlin/dev/hybridlabs/aquatic/client/render/item/HydrothermalVentBlockItemRenderer.kt @@ -2,10 +2,7 @@ package dev.hybridlabs.aquatic.client.render.item import dev.hybridlabs.aquatic.HybridAquaticClient import dev.hybridlabs.aquatic.block.HybridAquaticBlocks -import dev.hybridlabs.aquatic.block.entity.BuoyBlockEntity -import dev.hybridlabs.aquatic.block.entity.CrabPotBlockEntity import dev.hybridlabs.aquatic.block.entity.HydrothermalVentBlockEntity -import dev.hybridlabs.aquatic.client.render.block.entity.BuoyBlockEntityRenderer import dev.hybridlabs.aquatic.client.render.block.entity.HydrothermalVentBlockEntityRenderer import net.fabricmc.fabric.api.client.rendering.v1.BuiltinItemRendererRegistry.DynamicItemRenderer import net.minecraft.client.render.VertexConsumerProvider diff --git a/src/generated/resources/assets/hybrid-aquatic/blockstates/crab_pot.json b/src/generated/resources/assets/hybrid-aquatic/blockstates/crab_pot.json deleted file mode 100644 index 702499be6..000000000 --- a/src/generated/resources/assets/hybrid-aquatic/blockstates/crab_pot.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "variants": { - "": { - "model": "hybrid-aquatic:block/crab_pot" - } - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/hybrid-aquatic/lang/en_us.json b/src/generated/resources/assets/hybrid-aquatic/lang/en_us.json index b3312944c..e2002883d 100644 --- a/src/generated/resources/assets/hybrid-aquatic/lang/en_us.json +++ b/src/generated/resources/assets/hybrid-aquatic/lang/en_us.json @@ -3,7 +3,6 @@ "block.hybrid-aquatic.basking_shark_plushie": "Basking Shark Plushie", "block.hybrid-aquatic.bull_shark_plushie": "Bull Shark Plushie", "block.hybrid-aquatic.buoy": "Buoy", - "block.hybrid-aquatic.crab_pot": "Crab Pot", "block.hybrid-aquatic.crate": "Crate", "block.hybrid-aquatic.crate.description": "Break with an axe to open", "block.hybrid-aquatic.frilled_shark_plushie": "Frilled Shark Plushie", @@ -54,13 +53,11 @@ "entity.hybrid-aquatic.hammerhead_shark": "Hammerhead Shark", "entity.hybrid-aquatic.hermit_crab": "Hermit Crab", "entity.hybrid-aquatic.horseshoe_crab": "Horseshoe Crab", - "entity.hybrid-aquatic.karkinos": "Karkinos", "entity.hybrid-aquatic.lightfoot_crab": "Lightfoot Crab", "entity.hybrid-aquatic.lionfish": "Lionfish", "entity.hybrid-aquatic.lions_mane_jellyfish": "Lion's Mane Jellyfish", "entity.hybrid-aquatic.lobster": "Lobster", "entity.hybrid-aquatic.mahimahi": "Mahimahi", - "entity.hybrid-aquatic.mantis_shrimp": "Mantis Shrimp", "entity.hybrid-aquatic.mauve_stinger": "Mauve Stinger", "entity.hybrid-aquatic.moon_jellyfish": "Moon Jellyfish", "entity.hybrid-aquatic.moray_eel": "Moray Eel", @@ -171,7 +168,6 @@ "item.hybrid-aquatic.hermit_crab_spawn_egg": "Hermit Crab Spawn Egg", "item.hybrid-aquatic.hook.description": "Needs to be put in the offhand", "item.hybrid-aquatic.horseshoe_crab_spawn_egg": "Horseshoe Crab Spawn Egg", - "item.hybrid-aquatic.karkinos_spawn_egg": "Karkinos Spawn Egg", "item.hybrid-aquatic.lightfoot_crab_spawn_egg": "Lightfoot Crab Spawn Egg", "item.hybrid-aquatic.lionfish": "Lionfish", "item.hybrid-aquatic.lionfish_spawn_egg": "Lionfish Spawn Egg", @@ -181,7 +177,6 @@ "item.hybrid-aquatic.magnetic_hook.description": "Increases treasure chance", "item.hybrid-aquatic.mahi_mahi": "Mahi Mahi", "item.hybrid-aquatic.mahimahi_spawn_egg": "Mahimahi Spawn Egg", - "item.hybrid-aquatic.mantis_shrimp_spawn_egg": "Mantis Shrimp Spawn Egg", "item.hybrid-aquatic.mauve_stinger_spawn_egg": "Mauve Stinger Spawn Egg", "item.hybrid-aquatic.moon_jellyfish_spawn_egg": "Moon Jellyfish Spawn Egg", "item.hybrid-aquatic.moray_eel": "Moray Eel", diff --git a/src/generated/resources/assets/hybrid-aquatic/models/block/crab_pot.json b/src/generated/resources/assets/hybrid-aquatic/models/block/crab_pot.json deleted file mode 100644 index 40974f824..000000000 --- a/src/generated/resources/assets/hybrid-aquatic/models/block/crab_pot.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "textures": { - "particle": "hybrid-aquatic:block/crab_pot" - } -} \ No newline at end of file diff --git a/src/generated/resources/assets/hybrid-aquatic/models/item/crab_pot.json b/src/generated/resources/assets/hybrid-aquatic/models/item/crab_pot.json deleted file mode 100644 index d5f792278..000000000 --- a/src/generated/resources/assets/hybrid-aquatic/models/item/crab_pot.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "hybrid-aquatic:item/template_crab_pot" -} \ No newline at end of file diff --git a/src/generated/resources/assets/hybrid-aquatic/models/item/mantis_shrimp_spawn_egg.json b/src/generated/resources/assets/hybrid-aquatic/models/item/mantis_shrimp_spawn_egg.json deleted file mode 100644 index d1aaa9d6e..000000000 --- a/src/generated/resources/assets/hybrid-aquatic/models/item/mantis_shrimp_spawn_egg.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "minecraft:item/template_spawn_egg" -} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/advancements/recipes/building_blocks/crab_pot.json b/src/generated/resources/data/hybrid-aquatic/advancements/recipes/building_blocks/crab_pot.json deleted file mode 100644 index d7283f6e8..000000000 --- a/src/generated/resources/data/hybrid-aquatic/advancements/recipes/building_blocks/crab_pot.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_crab_claw": { - "conditions": { - "items": [ - { - "items": [ - "hybrid-aquatic:crab_claw" - ] - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "hybrid-aquatic:crab_pot" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_crab_claw", - "has_the_recipe" - ] - ], - "rewards": { - "recipes": [ - "hybrid-aquatic:crab_pot" - ] - }, - "sends_telemetry_event": false -} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/blocks/crab_pot.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/blocks/crab_pot.json deleted file mode 100644 index a09eca0d3..000000000 --- a/src/generated/resources/data/hybrid-aquatic/loot_tables/blocks/crab_pot.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "bonus_rolls": 0.0, - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ], - "entries": [ - { - "type": "minecraft:item", - "name": "hybrid-aquatic:crab_pot" - } - ], - "rolls": 1.0 - } - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/coconut_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/coconut_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/coconut_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/flower_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/flower_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/flower_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/ghost_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/ghost_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/ghost_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/lightfoot_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/lightfoot_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/lightfoot_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/spider_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/spider_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/spider_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/vampire_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/vampire_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/vampire_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/yeti_crab.json b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/yeti_crab.json new file mode 100644 index 000000000..036d1bdc9 --- /dev/null +++ b/src/generated/resources/data/hybrid-aquatic/loot_tables/entities/yeti_crab.json @@ -0,0 +1,48 @@ +{ + "type": "minecraft:entity", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "conditions": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "flags": { + "is_on_fire": true + } + } + } + ], + "function": "minecraft:furnace_smelt" + }, + { + "count": { + "type": "minecraft:uniform", + "max": 1.0, + "min": 0.0 + }, + "function": "minecraft:looting_enchant" + }, + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "hybrid-aquatic:crab_claw" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/recipes/crab_pot.json b/src/generated/resources/data/hybrid-aquatic/recipes/crab_pot.json deleted file mode 100644 index d3cee5e75..000000000 --- a/src/generated/resources/data/hybrid-aquatic/recipes/crab_pot.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "type": "minecraft:crafting_shaped", - "category": "building", - "key": { - "I": { - "item": "minecraft:iron_bars" - }, - "W": { - "tag": "minecraft:planks" - } - }, - "pattern": [ - "WWW", - "III", - "WWW" - ], - "result": { - "item": "hybrid-aquatic:crab_pot" - }, - "show_notification": true -} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/tags/entity_types/prey/mantis_shrimp.json b/src/generated/resources/data/hybrid-aquatic/tags/entity_types/prey/mantis_shrimp.json deleted file mode 100644 index e9e411f1e..000000000 --- a/src/generated/resources/data/hybrid-aquatic/tags/entity_types/prey/mantis_shrimp.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "#hybrid-aquatic:crab" - ] -} \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/tags/entity_types/shrimp.json b/src/generated/resources/data/hybrid-aquatic/tags/entity_types/shrimp.json index 9f07e762c..433f2dc0a 100644 --- a/src/generated/resources/data/hybrid-aquatic/tags/entity_types/shrimp.json +++ b/src/generated/resources/data/hybrid-aquatic/tags/entity_types/shrimp.json @@ -2,7 +2,6 @@ "replace": false, "values": [ "hybrid-aquatic:shrimp", - "hybrid-aquatic:mantis_shrimp", "hybrid-aquatic:crayfish", "hybrid-aquatic:lobster" ] diff --git a/src/generated/resources/data/hybrid-aquatic/tags/items/medium_fish.json b/src/generated/resources/data/hybrid-aquatic/tags/items/medium_fish.json index 202c0695a..1b85c14d5 100644 --- a/src/generated/resources/data/hybrid-aquatic/tags/items/medium_fish.json +++ b/src/generated/resources/data/hybrid-aquatic/tags/items/medium_fish.json @@ -2,6 +2,9 @@ "replace": false, "values": [ "hybrid-aquatic:yellowfin_tuna", - "hybrid-aquatic:mahi_mahi" + "hybrid-aquatic:mahi_mahi", + "hybrid-aquatic:opah", + "hybrid-aquatic:moray_eel", + "hybrid-aquatic:triggerfish" ] } \ No newline at end of file diff --git a/src/generated/resources/data/hybrid-aquatic/tags/items/small_fish.json b/src/generated/resources/data/hybrid-aquatic/tags/items/small_fish.json index 5e69757b5..e3d2a614d 100644 --- a/src/generated/resources/data/hybrid-aquatic/tags/items/small_fish.json +++ b/src/generated/resources/data/hybrid-aquatic/tags/items/small_fish.json @@ -12,7 +12,6 @@ "hybrid-aquatic:clownfish", "hybrid-aquatic:unicorn_fish", "hybrid-aquatic:cowfish", - "hybrid-aquatic:triggerfish", "hybrid-aquatic:tiger_barb", "hybrid-aquatic:oscar" ] diff --git a/src/generated/resources/data/hybrid-aquatic/tags/worldgen/biome/mantis_shrimp_spawn_biomes.json b/src/generated/resources/data/hybrid-aquatic/tags/worldgen/biome/mantis_shrimp_spawn_biomes.json deleted file mode 100644 index 72a1f2b84..000000000 --- a/src/generated/resources/data/hybrid-aquatic/tags/worldgen/biome/mantis_shrimp_spawn_biomes.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:warm_ocean" - ] -} \ No newline at end of file diff --git a/src/main/java/dev/hybridlabs/aquatic/mixin/PlayerEntityMixin.java b/src/main/java/dev/hybridlabs/aquatic/mixin/PlayerEntityMixin.java index 2e62f453e..d2bc22646 100644 --- a/src/main/java/dev/hybridlabs/aquatic/mixin/PlayerEntityMixin.java +++ b/src/main/java/dev/hybridlabs/aquatic/mixin/PlayerEntityMixin.java @@ -1,19 +1,14 @@ package dev.hybridlabs.aquatic.mixin; import dev.hybridlabs.aquatic.access.CustomPlayerEntityData; -import dev.hybridlabs.aquatic.effect.HybridAquaticStatusEffects; import dev.hybridlabs.aquatic.entity.shark.HybridAquaticSharkEntity; import net.minecraft.entity.Entity; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.ai.TargetPredicate; import net.minecraft.entity.damage.DamageSource; -import net.minecraft.entity.effect.StatusEffectInstance; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.nbt.NbtCompound; -import net.minecraft.registry.tag.BiomeTags; -import net.minecraft.world.World; import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; @@ -63,22 +58,4 @@ private void setCustomHurtTimeOnDamage(DamageSource source, float amount, Callba if (foundEntity != null) hybrid_aquatic$setHurtTime(200); } } - - @Inject(method = "tick", at = @At("TAIL")) - private void tickDownCustomHurtTime(CallbackInfo ci) { - int cHurtTime = hybrid_aquatic$getHurtTime(); - if (cHurtTime > 0) { - hybrid_aquatic$setHurtTime(cHurtTime - 1); - } - - var player = (PlayerEntity)(Object)this; - var world = player.getWorld(); - if(!world.isClient) { - if (world.isRaining() && - world.getBiome(player.getBlockPos()).isIn(BiomeTags.IS_OCEAN) && - (player.getY() > world.getSeaLevel() && player.getY() < world.getSeaLevel() + 12)) { - player.addStatusEffect(new StatusEffectInstance(HybridAquaticStatusEffects.INSTANCE.getTHALASSOPHOBIA(), 2, 1)); - } - } - } } diff --git a/src/main/java/dev/hybridlabs/aquatic/utils/HybridAquaticSpawnGroup.java b/src/main/java/dev/hybridlabs/aquatic/utils/HybridAquaticSpawnGroup.java index 8514984ff..5f1bb7554 100644 --- a/src/main/java/dev/hybridlabs/aquatic/utils/HybridAquaticSpawnGroup.java +++ b/src/main/java/dev/hybridlabs/aquatic/utils/HybridAquaticSpawnGroup.java @@ -3,11 +3,11 @@ import net.minecraft.entity.SpawnGroup; public enum HybridAquaticSpawnGroup { - FISH("ha_fish", 12, true, false, 48), - FISH_UNDERGROUND("ha_fish_underground", 6, true, false, 48), - JELLY("ha_jelly", 3, false, false, 48), - SHARK("ha_shark", 3, false, false, 64), - CRITTER("ha_critter", 6, true, false, 48); + FISH("ha_fish", 8, true, false, 32), + FISH_UNDERGROUND("ha_fish_underground", 6, true, false, 32), + JELLY("ha_jelly", 3, false, false, 32), + SHARK("ha_shark", 3, false, false, 32), + CRITTER("ha_critter", 4, true, false, 32); public SpawnGroup spawnGroup; public final String name; diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/block/CrabPotBlock.kt b/src/main/kotlin/dev/hybridlabs/aquatic/block/CrabPotBlock.kt deleted file mode 100644 index 49d79b74e..000000000 --- a/src/main/kotlin/dev/hybridlabs/aquatic/block/CrabPotBlock.kt +++ /dev/null @@ -1,80 +0,0 @@ -@file:Suppress("OVERRIDE_DEPRECATION") - -package dev.hybridlabs.aquatic.block - -import dev.hybridlabs.aquatic.block.entity.CrabPotBlockEntity -import net.minecraft.block.* -import net.minecraft.block.entity.BlockEntity -import net.minecraft.fluid.FluidState -import net.minecraft.fluid.Fluids -import net.minecraft.item.ItemPlacementContext -import net.minecraft.registry.tag.FluidTags -import net.minecraft.state.StateManager -import net.minecraft.state.property.Properties -import net.minecraft.util.math.BlockPos -import net.minecraft.util.math.Direction -import net.minecraft.util.shape.VoxelShape -import net.minecraft.world.BlockView -import net.minecraft.world.WorldAccess -import net.minecraft.world.WorldView - -open class CrabPotBlock(settings: Settings): Block(settings), BlockEntityProvider, Waterloggable { - init { - defaultState = stateManager.defaultState.with(Properties.WATERLOGGED, false) - } - - override fun getRenderType(state: BlockState): BlockRenderType { - return BlockRenderType.ENTITYBLOCK_ANIMATED - } - - override fun createBlockEntity(pos: BlockPos, state: BlockState): BlockEntity { - return CrabPotBlockEntity(pos, state) - } - - override fun getPlacementState(ctx: ItemPlacementContext): BlockState? { - val fluidState = ctx.world.getFluidState(ctx.blockPos) - return if (fluidState.isIn(FluidTags.WATER)) defaultState.with( - Properties.WATERLOGGED, ctx.world.getFluidState(ctx.blockPos).isOf( - Fluids.WATER)) else null - } - - override fun getFluidState(state: BlockState): FluidState { - return if (state.get(Properties.WATERLOGGED)) Fluids.WATER.getStill(false) else super.getFluidState(state) - } - - override fun getStateForNeighborUpdate( - state: BlockState, - direction: Direction, - neighborState: BlockState, - world: WorldAccess, - pos: BlockPos, - neighborPos: BlockPos - ): BlockState { - return if (canPlaceAt(state, world, pos)) super.getStateForNeighborUpdate(state, direction, neighborState, world, pos, neighborPos) - else Blocks.AIR.defaultState - } - - override fun appendProperties(builder: StateManager.Builder) { - builder.add(Properties.WATERLOGGED) - } - - override fun getOutlineShape( - state: BlockState, - world: BlockView, - pos: BlockPos, - context: ShapeContext - ): VoxelShape { - return SHAPE - } - - override fun canPlaceAt(state: BlockState, world: WorldView, pos: BlockPos): Boolean { - val placedOn = world.getBlockState(pos) - val isAirAbove = world.getBlockState(pos.up()).isAir && world.getBlockState(pos.up(2)).isAir - - return placedOn.fluidState.isOf(Fluids.WATER) && isAirAbove - } - - companion object { - val SHAPE: VoxelShape = createCuboidShape(1.0, 3.0, 1.0, 15.0, 16.0, 15.0) - } -} \ No newline at end of file diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/block/HybridAquaticBlocks.kt b/src/main/kotlin/dev/hybridlabs/aquatic/block/HybridAquaticBlocks.kt index 7b1021d60..538b5e538 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/block/HybridAquaticBlocks.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/block/HybridAquaticBlocks.kt @@ -60,10 +60,6 @@ object HybridAquaticBlocks { .drops(Identifier(HybridAquatic.MOD_ID, "blocks/giant_clam")) )) - val CRAB_POT = register("crab_pot", CrabPotBlock(FabricBlockSettings.copyOf(Blocks.OAK_PLANKS) - .hardness(0.75F) - )) - val BUOY = register("buoy", BuoyBlock(FabricBlockSettings.copyOf(Blocks.OAK_PLANKS) .nonOpaque() .luminance(15) diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/CrabPotBlockEntity.kt b/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/CrabPotBlockEntity.kt deleted file mode 100644 index 428ed6f0e..000000000 --- a/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/CrabPotBlockEntity.kt +++ /dev/null @@ -1,47 +0,0 @@ -package dev.hybridlabs.aquatic.block.entity - -import net.minecraft.block.BlockState -import net.minecraft.block.entity.BlockEntity -import net.minecraft.util.math.BlockPos -import software.bernie.geckolib.core.animatable.GeoAnimatable -import software.bernie.geckolib.core.animatable.instance.AnimatableInstanceCache -import software.bernie.geckolib.core.animation.* -import software.bernie.geckolib.core.`object`.PlayState -import software.bernie.geckolib.util.GeckoLibUtil -import software.bernie.geckolib.util.RenderUtils - - -class CrabPotBlockEntity(pos: BlockPos, state: BlockState) : BlockEntity(HybridAquaticBlockEntityTypes.CRAB_POT, pos, state), GeoAnimatable { - private val animCache = GeckoLibUtil.createInstanceCache(this) - - private fun predicate(event: AnimationState): PlayState where E : BlockEntity?, E : GeoAnimatable { - return if (world != null) { - event.controller.setAnimation(FLOAT_ANIMATION) - PlayState.CONTINUE - } else { - PlayState.STOP - } - } - override fun registerControllers(controllerRegistrar: AnimatableManager.ControllerRegistrar) { - controllerRegistrar.add( - AnimationController( - this, - "controller", - 0, - ::predicate - ) - ) - } - - override fun getAnimatableInstanceCache(): AnimatableInstanceCache { - return animCache - } - - override fun getTick(p0: Any?): Double { - return RenderUtils.getCurrentTick() - } - - companion object { - val FLOAT_ANIMATION: RawAnimation = RawAnimation.begin().then("float", Animation.LoopType.LOOP) - } -} diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/HybridAquaticBlockEntityTypes.kt b/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/HybridAquaticBlockEntityTypes.kt index 124268a7e..ea80106d1 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/HybridAquaticBlockEntityTypes.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/block/entity/HybridAquaticBlockEntityTypes.kt @@ -16,7 +16,6 @@ object HybridAquaticBlockEntityTypes { val GIANT_CLAM: BlockEntityType = register("giant_clam", FabricBlockEntityTypeBuilder.create(::GiantClamBlockEntity, HybridAquaticBlocks.GIANT_CLAM)) val MESSAGE_IN_A_BOTTLE: BlockEntityType = register("message_in_a_bottle", FabricBlockEntityTypeBuilder.create(::MessageInABottleBlockEntity, HybridAquaticBlocks.MESSAGE_IN_A_BOTTLE)) val BUOY: BlockEntityType = register("buoy", FabricBlockEntityTypeBuilder.create(::BuoyBlockEntity, HybridAquaticBlocks.BUOY)) - val CRAB_POT: BlockEntityType = register("crab_pot", FabricBlockEntityTypeBuilder.create(::CrabPotBlockEntity, HybridAquaticBlocks.CRAB_POT)) val HYDROTHERMAL_VENT: BlockEntityType = register("hydrothermal_vent", FabricBlockEntityTypeBuilder.create(::HydrothermalVentBlockEntity, HybridAquaticBlocks.HYDROTHERMAL_VENT)) val TUBE_SPONGE: BlockEntityType = register("tube_sponge", FabricBlockEntityTypeBuilder.create(::TubeSpongeBlockEntity, HybridAquaticBlocks.TUBE_SPONGE)) diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/client/LanguageProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/client/LanguageProvider.kt index 22c6fd0e5..cb0d2dced 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/client/LanguageProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/client/LanguageProvider.kt @@ -66,7 +66,6 @@ class LanguageProvider(output: FabricDataOutput) : FabricLanguageProvider(output HybridAquaticBlocks.TUBE_SPONGE to "Tube Sponge", HybridAquaticBlocks.CRATE to "Crate", HybridAquaticBlocks.BUOY to "Buoy", - HybridAquaticBlocks.CRAB_POT to "Crab Pot", HybridAquaticBlocks.HYDROTHERMAL_VENT to "Hydrothermal Vent", HybridAquaticBlocks.GIANT_CLAM to "Giant Clam", ).forEach { (block, translation) -> @@ -118,7 +117,6 @@ class LanguageProvider(output: FabricDataOutput) : FabricLanguageProvider(output // effects mapOf( HybridAquaticStatusEffects.BLEEDING to "Bleeding", - HybridAquaticStatusEffects.THALASSOPHOBIA to "Thalassophobia" ).forEach { (effect, translation) -> val identifier = Registries.STATUS_EFFECT.getId(effect) builder.add("effect.${identifier?.namespace}.${identifier?.path}", translation) @@ -215,7 +213,6 @@ class LanguageProvider(output: FabricDataOutput) : FabricLanguageProvider(output HybridAquaticEntityTypes.HORSESHOE_CRAB to "Horseshoe Crab", HybridAquaticEntityTypes.GIANT_ISOPOD to "Giant Isopod", HybridAquaticEntityTypes.SHRIMP to "Shrimp", - HybridAquaticEntityTypes.MANTIS_SHRIMP to "Mantis Shrimp", HybridAquaticEntityTypes.CRAYFISH to "Crayfish", HybridAquaticEntityTypes.LOBSTER to "Lobster", HybridAquaticEntityTypes.NUDIBRANCH to "Nudibranch", @@ -232,7 +229,6 @@ class LanguageProvider(output: FabricDataOutput) : FabricLanguageProvider(output HybridAquaticEntityTypes.LIONS_MANE_JELLYFISH to "Lion's Mane Jellyfish", HybridAquaticEntityTypes.ATOLLA_JELLYFISH to "Atolla Jellyfish", HybridAquaticEntityTypes.BLUE_JELLYFISH to "Blue Jellyfish", - HybridAquaticEntityTypes.KARKINOS to "Karkinos", ) // verify display name list is valid diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/client/ModelProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/client/ModelProvider.kt index 24b62b0df..100724a4a 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/client/ModelProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/client/ModelProvider.kt @@ -41,7 +41,6 @@ class ModelProvider(output: FabricDataOutput) : FabricModelProvider(output) { HybridAquaticBlocks.MESSAGE_IN_A_BOTTLE to (Blocks.GLASS to TEMPLATE_MESSAGE_IN_A_BOTTLE), HybridAquaticBlocks.BUOY to (HybridAquaticBlocks.BUOY to TEMPLATE_BUOY), HybridAquaticBlocks.HYDROTHERMAL_VENT to (HybridAquaticBlocks.HYDROTHERMAL_VENT to TEMPLATE_HYDROTHERMAL_VENT), - HybridAquaticBlocks.CRAB_POT to (HybridAquaticBlocks.CRAB_POT to TEMPLATE_CRAB_POT), HybridAquaticBlocks.GIANT_CLAM to (HybridAquaticBlocks.GIANT_CLAM to TEMPLATE_GIANT_CLAM) ).forEach { (block, info) -> val (particleBlock, template) = info diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/RecipeProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/RecipeProvider.kt index 95168453b..f2cba9922 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/RecipeProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/RecipeProvider.kt @@ -37,15 +37,6 @@ class RecipeProvider(output: FabricDataOutput) : FabricRecipeProvider(output) { .criterion("has_lantern", InventoryChangedCriterion.Conditions.items(Items.LANTERN)) .offerTo(exporter) - ShapedRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, HybridAquaticItems.CRAB_POT) - .pattern("WWW") - .pattern("III") - .pattern("WWW") - .input('I', Items.IRON_BARS) - .input('W', ItemTags.PLANKS) - .criterion("has_crab_claw", InventoryChangedCriterion.Conditions.items(HybridAquaticItems.CRAB_CLAW)) - .offerTo(exporter) - // hook recipes ShapedRecipeJsonBuilder.create(RecipeCategory.TOOLS, HybridAquaticItems.BARBED_HOOK) .pattern("N ") diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/loot/EntityTypeLootTableProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/loot/EntityTypeLootTableProvider.kt index d9198760d..06579dadd 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/loot/EntityTypeLootTableProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/loot/EntityTypeLootTableProvider.kt @@ -68,6 +68,90 @@ class EntityTypeLootTableProvider(output: FabricDataOutput) : SimpleFabricLootTa ) } + export(exporter, HybridAquaticEntityTypes.SPIDER_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.GHOST_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.VAMPIRE_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.FLOWER_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.COCONUT_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.YETI_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + + export(exporter, HybridAquaticEntityTypes.LIGHTFOOT_CRAB) { + pool( + LootPool.builder() + .with( + ItemEntry.builder(HybridAquaticItems.CRAB_CLAW) + .apply(FurnaceSmeltLootFunction.builder().conditionally(EntityPropertiesLootCondition.builder(LootContext.EntityTarget.THIS, NEEDS_ENTITY_ON_FIRE))) + .apply(LootingEnchantLootFunction.builder(UniformLootNumberProvider.create(0.0F, 1.0F))) + .apply(SetCountLootFunction.builder(UniformLootNumberProvider.create(1.0F, 2.0F))) + ) + ) + } + // cephalopods export(exporter, HybridAquaticEntityTypes.VAMPIRE_SQUID) { pool( diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/BiomeTagProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/BiomeTagProvider.kt index e740b8112..ca14be5f9 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/BiomeTagProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/BiomeTagProvider.kt @@ -146,10 +146,6 @@ class BiomeTagProvider(output: FabricDataOutput, registriesFuture: CompletableFu BiomeKeys.LUKEWARM_OCEAN, ) - getOrCreateTagBuilder(HybridAquaticBiomeTags.MANTIS_SHRIMP_SPAWN_BIOMES).add( - BiomeKeys.WARM_OCEAN, - ) - getOrCreateTagBuilder(HybridAquaticBiomeTags.CRAYFISH_SPAWN_BIOMES).add( BiomeKeys.SWAMP, BiomeKeys.MANGROVE_SWAMP, diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/EntityTypeTagProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/EntityTypeTagProvider.kt index 148c032fc..9a2f926a9 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/EntityTypeTagProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/EntityTypeTagProvider.kt @@ -110,9 +110,6 @@ class EntityTypeTagProvider(output: FabricDataOutput, registriesFuture: Completa getOrCreateTagBuilder(HybridAquaticEntityTags.SQUID_PREY) .addTag(HybridAquaticEntityTags.SHRIMP) - getOrCreateTagBuilder(HybridAquaticEntityTags.MANTIS_SHRIMP_PREY) - .addTag(HybridAquaticEntityTags.CRAB) - // fishes getOrCreateTagBuilder(HybridAquaticEntityTags.FISHES) .add( @@ -186,7 +183,6 @@ class EntityTypeTagProvider(output: FabricDataOutput, registriesFuture: Completa getOrCreateTagBuilder(HybridAquaticEntityTags.SHRIMP) .add( HybridAquaticEntityTypes.SHRIMP, - HybridAquaticEntityTypes.MANTIS_SHRIMP, HybridAquaticEntityTypes.CRAYFISH, HybridAquaticEntityTypes.LOBSTER ) diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/ItemTagProvider.kt b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/ItemTagProvider.kt index 4a5f389dd..e69215f59 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/ItemTagProvider.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/data/server/tag/ItemTagProvider.kt @@ -20,6 +20,7 @@ class ItemTagProvider(output: FabricDataOutput, registriesFuture: CompletableFut ).forEach { item -> getOrCreateTagBuilder(HybridAquaticItemTags.LURE_ITEMS).add(item) } + listOf( HybridAquaticItems.LIONFISH, HybridAquaticItems.ROCKFISH, @@ -32,15 +33,18 @@ class ItemTagProvider(output: FabricDataOutput, registriesFuture: CompletableFut HybridAquaticItems.CLOWNFISH, HybridAquaticItems.UNICORN_FISH, HybridAquaticItems.COWFISH, - HybridAquaticItems.TRIGGERFISH, HybridAquaticItems.TIGER_BARB, HybridAquaticItems.OSCAR, ).forEach { item -> getOrCreateTagBuilder(HybridAquaticItemTags.SMALL_FISH).add(item) } + listOf( HybridAquaticItems.YELLOWFIN_TUNA, - HybridAquaticItems.MAHI_MAHI + HybridAquaticItems.MAHI_MAHI, + HybridAquaticItems.OPAH, + HybridAquaticItems.MORAY_EEL, + HybridAquaticItems.TRIGGERFISH, ).forEach { item -> getOrCreateTagBuilder(HybridAquaticItemTags.MEDIUM_FISH).add(item) } diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/effect/Bleeding.kt b/src/main/kotlin/dev/hybridlabs/aquatic/effect/Bleeding.kt index c2d0c5929..243054525 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/effect/Bleeding.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/effect/Bleeding.kt @@ -11,9 +11,9 @@ class Bleeding : StatusEffect(StatusEffectCategory.HARMFUL, 0xee4049) { } override fun applyUpdateEffect(entity: LivingEntity, amplifier: Int) { - val targetHealth = entity.maxHealth / 2.0f + val targetHealth = entity.maxHealth / 0.3f if (entity.health > targetHealth) { - entity.health = maxOf(entity.health - 2.0f, targetHealth) + entity.health = maxOf(entity.health - 0.3f, targetHealth) } } } diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/effect/HybridAquaticStatusEffects.kt b/src/main/kotlin/dev/hybridlabs/aquatic/effect/HybridAquaticStatusEffects.kt index 701c175ba..9618260f8 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/effect/HybridAquaticStatusEffects.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/effect/HybridAquaticStatusEffects.kt @@ -8,8 +8,6 @@ import net.minecraft.util.Identifier object HybridAquaticStatusEffects { val BLEEDING = register("bleeding", Bleeding()) - val THALASSOPHOBIA = register("thalassophobia", Thalassophobia()) - private fun register(id: String, effect: StatusEffect): StatusEffect { return Registry.register(Registries.STATUS_EFFECT, Identifier(HybridAquatic.MOD_ID, id), effect) } diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/effect/Thalassophobia.kt b/src/main/kotlin/dev/hybridlabs/aquatic/effect/Thalassophobia.kt deleted file mode 100644 index edaec35de..000000000 --- a/src/main/kotlin/dev/hybridlabs/aquatic/effect/Thalassophobia.kt +++ /dev/null @@ -1,9 +0,0 @@ -package dev.hybridlabs.aquatic.effect - -import net.minecraft.entity.LivingEntity -import net.minecraft.entity.effect.StatusEffect -import net.minecraft.entity.effect.StatusEffectCategory -import net.minecraft.entity.effect.StatusEffectInstance - -class Thalassophobia : StatusEffect(StatusEffectCategory.HARMFUL, 0x000000) { -} diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/entity/HybridAquaticEntityTypes.kt b/src/main/kotlin/dev/hybridlabs/aquatic/entity/HybridAquaticEntityTypes.kt index c5d1900ea..5579574e0 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/entity/HybridAquaticEntityTypes.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/entity/HybridAquaticEntityTypes.kt @@ -354,13 +354,6 @@ object HybridAquaticEntityTypes { LobsterEntity.createMobAttributes() ) - val MANTIS_SHRIMP = registerCritter( - "mantis_shrimp", - ::MantisShrimpEntity, - EntityDimensions.fixed(0.5f, 0.5f), - MantisShrimpEntity.createMobAttributes() - ) - val SHRIMP = registerCritter( "shrimp", ::ShrimpEntity, @@ -389,13 +382,6 @@ object HybridAquaticEntityTypes { YetiCrabEntity.createMobAttributes() ) - val KARKINOS = registerCritter( - "karkinos", - ::KarkinosEntity, - EntityDimensions.fixed(2.25f, 1.25f), - KarkinosEntity.createMobAttributes() - ) - //critters diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/entity/SpawnRestrictionRegistry.kt b/src/main/kotlin/dev/hybridlabs/aquatic/entity/SpawnRestrictionRegistry.kt index e74ada818..58b20c46a 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/entity/SpawnRestrictionRegistry.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/entity/SpawnRestrictionRegistry.kt @@ -88,7 +88,6 @@ object SpawnRestrictionRegistry { setOf( HybridAquaticEntityTypes.GIANT_ISOPOD, HybridAquaticEntityTypes.SHRIMP, - HybridAquaticEntityTypes.MANTIS_SHRIMP, HybridAquaticEntityTypes.CRAYFISH, HybridAquaticEntityTypes.LOBSTER, HybridAquaticEntityTypes.STARFISH, diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/KarkinosEntity.kt b/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/KarkinosEntity.kt deleted file mode 100644 index f243a341f..000000000 --- a/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/KarkinosEntity.kt +++ /dev/null @@ -1,81 +0,0 @@ -package dev.hybridlabs.aquatic.entity.critter - -import net.minecraft.enchantment.EnchantmentHelper -import net.minecraft.enchantment.Enchantments -import net.minecraft.entity.EntityType -import net.minecraft.entity.attribute.DefaultAttributeContainer -import net.minecraft.entity.attribute.EntityAttributes -import net.minecraft.entity.mob.WaterCreatureEntity -import net.minecraft.entity.player.PlayerEntity -import net.minecraft.world.Difficulty -import net.minecraft.world.World -import software.bernie.geckolib.core.animatable.GeoAnimatable -import software.bernie.geckolib.core.animation.AnimationState -import software.bernie.geckolib.core.`object`.PlayState - -class KarkinosEntity(entityType: EntityType, world: World) : - HybridAquaticCrabEntity(entityType, world) { - - private var isFlipped: Boolean = false - private var flipTimer: Int = 0 - - companion object { - fun createMobAttributes(): DefaultAttributeContainer.Builder { - return WaterCreatureEntity.createMobAttributes() - .add(EntityAttributes.GENERIC_MAX_HEALTH, 100.0) - .add(EntityAttributes.GENERIC_MOVEMENT_SPEED, 0.6) - .add(EntityAttributes.GENERIC_ATTACK_DAMAGE, 4.0) - .add(EntityAttributes.GENERIC_FOLLOW_RANGE, 32.0) - .add(EntityAttributes.GENERIC_KNOCKBACK_RESISTANCE, 100.0) - } - } - - private fun beFlipped() { - isFlipped = true - flipTimer = 100 - } - - override fun damage(source: net.minecraft.entity.damage.DamageSource?, amount: Float): Boolean { - val damaged = super.damage(source, amount) - - if (damaged && source?.source is PlayerEntity && !isFlipped) { - val player = source.source as PlayerEntity - val heldItem = player.mainHandStack - - if (EnchantmentHelper.getLevel(Enchantments.BANE_OF_ARTHROPODS, heldItem) > 2 || - (EnchantmentHelper.getLevel(Enchantments.RIPTIDE, heldItem) > 0) - ) { - beFlipped() - } - } - - return damaged - } - - override fun checkDespawn() { - if (world.difficulty == Difficulty.PEACEFUL && this.isDisallowedInPeaceful) { - discard() - } else { - despawnCounter = 0 - } - } - - override fun isPushable(): Boolean = - this.isFlipped - - - - override fun predicate(event: AnimationState): PlayState { - if (isFlipped) { - event.controller.setAnimation(FLIPPED_ANIMATION) - return PlayState.CONTINUE - } - - return super.predicate(event) - } - - - override fun getMovementSpeed(): Float { - return if (isFlipped) 0.0f else super.getMovementSpeed() - } -} diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/MantisShrimpEntity.kt b/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/MantisShrimpEntity.kt deleted file mode 100644 index 8fe024e48..000000000 --- a/src/main/kotlin/dev/hybridlabs/aquatic/entity/critter/MantisShrimpEntity.kt +++ /dev/null @@ -1,27 +0,0 @@ -package dev.hybridlabs.aquatic.entity.critter - -import net.minecraft.entity.EntityType -import net.minecraft.entity.attribute.DefaultAttributeContainer -import net.minecraft.entity.attribute.EntityAttributes -import net.minecraft.entity.mob.WaterCreatureEntity -import net.minecraft.world.World - -class MantisShrimpEntity(entityType: EntityType, world: World) : - HybridAquaticCritterEntity(entityType, world) { - companion object { - fun createMobAttributes(): DefaultAttributeContainer.Builder { - return WaterCreatureEntity.createMobAttributes() - .add(EntityAttributes.GENERIC_MAX_HEALTH, 4.0) - .add(EntityAttributes.GENERIC_MOVEMENT_SPEED, 0.4) - .add(EntityAttributes.GENERIC_ATTACK_DAMAGE, 4.0) - .add(EntityAttributes.GENERIC_FOLLOW_RANGE, 16.0) - } - } - override fun getMaxSize() : Int { - return 5 - } - - override fun getMinSize(): Int { - return -5 - } -} \ No newline at end of file diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItemGroups.kt b/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItemGroups.kt index 88fac48f3..6315f3a32 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItemGroups.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItemGroups.kt @@ -90,7 +90,6 @@ object HybridAquaticItemGroups { entries.add(HybridAquaticItems.FISHING_NET) entries.add(HybridAquaticItems.BUOY) - entries.add(HybridAquaticItems.CRAB_POT) entries.add(HybridAquaticItems.HYDROTHERMAL_VENT) entries.add(HybridAquaticItems.TUBE_SPONGE) entries.add(HybridAquaticItems.GIANT_CLAM) diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItems.kt b/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItems.kt index 7069d683f..d53959150 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItems.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/item/HybridAquaticItems.kt @@ -9,7 +9,10 @@ import net.fabricmc.fabric.api.item.v1.FabricItemSettings import net.minecraft.block.Block import net.minecraft.entity.EntityType import net.minecraft.entity.mob.MobEntity -import net.minecraft.item.* +import net.minecraft.item.BlockItem +import net.minecraft.item.FoodComponent +import net.minecraft.item.Item +import net.minecraft.item.SpawnEggItem import net.minecraft.registry.Registries import net.minecraft.registry.Registry import net.minecraft.util.Identifier @@ -17,7 +20,6 @@ import net.minecraft.util.Identifier object HybridAquaticItems { val ANEMONE = registerBlockItem("anemone", HybridAquaticBlocks.ANEMONE) val BUOY = registerPlaceableInWaterBlockItem("buoy", HybridAquaticBlocks.BUOY) - val CRAB_POT = registerBlockItem("crab_pot", HybridAquaticBlocks.CRAB_POT) val HYDROTHERMAL_VENT = registerBlockItem("hydrothermal_vent", HybridAquaticBlocks.HYDROTHERMAL_VENT) val MESSAGE_IN_A_BOTTLE = register("message_in_a_bottle", MessageInABottleItem(FabricItemSettings())) @@ -415,22 +417,21 @@ object HybridAquaticItems { val SEA_NETTLE_SPAWN_EGG = registerSpawnEgg("sea_nettle_spawn_egg", HybridAquaticEntityTypes.SEA_NETTLE, 0xf7bc78, 0x76435f) // crab spawn eggs - val COCONUT_CRAB_SPAWN_EGG = registerSpawnEgg("coconut_crab_spawn_egg", HybridAquaticEntityTypes.COCONUT_CRAB, 0xedab50, 0x8a4836) - val CRAB_SPAWN_EGG = registerSpawnEgg("crab_spawn_egg", HybridAquaticEntityTypes.CRAB, 0xb85249, 0xf1e4db) - val CRAYFISH_SPAWN_EGG = registerSpawnEgg("crayfish_spawn_egg", HybridAquaticEntityTypes.CRAYFISH, 0xedab50, 0x8a4836) - val FIDDLER_CRAB_SPAWN_EGG = registerSpawnEgg("fiddler_crab_spawn_egg", HybridAquaticEntityTypes.FIDDLER_CRAB, 0xcf552f, 0xe2dea8) - val FLOWER_CRAB_SPAWN_EGG = registerSpawnEgg("flower_crab_spawn_egg", HybridAquaticEntityTypes.FLOWER_CRAB, 0xedab50, 0x8a4836) - val GHOST_CRAB_SPAWN_EGG = registerSpawnEgg("ghost_crab_spawn_egg", HybridAquaticEntityTypes.GHOST_CRAB, 0xedab50, 0x8a4836) - val GIANT_ISOPOD_SPAWN_EGG = registerSpawnEgg("giant_isopod_spawn_egg", HybridAquaticEntityTypes.GIANT_ISOPOD, 0xedab50, 0x8a4836) - val HERMIT_CRAB_SPAWN_EGG = registerSpawnEgg("hermit_crab_spawn_egg", HybridAquaticEntityTypes.HERMIT_CRAB, 0xedab50, 0x8a4836) - val HORSESHOE_CRAB_SPAWN_EGG = registerSpawnEgg("horseshoe_crab_spawn_egg", HybridAquaticEntityTypes.HORSESHOE_CRAB, 0xedab50, 0x8a4836) - val LIGHTFOOT_CRAB_SPAWN_EGG = registerSpawnEgg("lightfoot_crab_spawn_egg", HybridAquaticEntityTypes.LIGHTFOOT_CRAB, 0xedab50, 0x8a4836) - val LOBSTER_SPAWN_EGG = registerSpawnEgg("lobster_spawn_egg", HybridAquaticEntityTypes.LOBSTER, 0xedab50, 0x8a4836) - val MANTIS_SHRIMP_SPAWN_EGG = registerSpawnEgg("mantis_shrimp_spawn_egg", HybridAquaticEntityTypes.MANTIS_SHRIMP, 0xedab50, 0x8a4836) - val SHRIMP_SPAWN_EGG = registerSpawnEgg("shrimp_spawn_egg", HybridAquaticEntityTypes.SHRIMP, 0xedab50, 0x8a4836) // Note: Corrected typo in entity type - val SPIDER_CRAB_SPAWN_EGG = registerSpawnEgg("spider_crab_spawn_egg", HybridAquaticEntityTypes.SPIDER_CRAB, 0xedab50, 0x8a4836) - val VAMPIRE_CRAB_SPAWN_EGG = registerSpawnEgg("vampire_crab_spawn_egg", HybridAquaticEntityTypes.VAMPIRE_CRAB, 0xedab50, 0x8a4836) - val YETI_CRAB_SPAWN_EGG = registerSpawnEgg("yeti_crab_spawn_egg", HybridAquaticEntityTypes.YETI_CRAB, 0xedab50, 0x8a4836) + val COCONUT_CRAB_SPAWN_EGG = registerSpawnEgg("coconut_crab_spawn_egg", HybridAquaticEntityTypes.COCONUT_CRAB, 0x3e2d25, 0x3c546d) + val CRAB_SPAWN_EGG = registerSpawnEgg("crab_spawn_egg", HybridAquaticEntityTypes.CRAB, 0x81353f, 0xeecfce) + val CRAYFISH_SPAWN_EGG = registerSpawnEgg("crayfish_spawn_egg", HybridAquaticEntityTypes.CRAYFISH, 0x697152, 0x7c4452) + val FIDDLER_CRAB_SPAWN_EGG = registerSpawnEgg("fiddler_crab_spawn_egg", HybridAquaticEntityTypes.FIDDLER_CRAB, 0x80366b, 0xf39949) + val FLOWER_CRAB_SPAWN_EGG = registerSpawnEgg("flower_crab_spawn_egg", HybridAquaticEntityTypes.FLOWER_CRAB, 0x9b8a6e, 0x20a094) + val GHOST_CRAB_SPAWN_EGG = registerSpawnEgg("ghost_crab_spawn_egg", HybridAquaticEntityTypes.GHOST_CRAB, 0xf2be69, 0xf5fcd9) + val GIANT_ISOPOD_SPAWN_EGG = registerSpawnEgg("giant_isopod_spawn_egg", HybridAquaticEntityTypes.GIANT_ISOPOD, 0xe6d3d6, 0x3c2236) + val HERMIT_CRAB_SPAWN_EGG = registerSpawnEgg("hermit_crab_spawn_egg", HybridAquaticEntityTypes.HERMIT_CRAB, 0xe97b13, 0xf2a65e) + val HORSESHOE_CRAB_SPAWN_EGG = registerSpawnEgg("horseshoe_crab_spawn_egg", HybridAquaticEntityTypes.HORSESHOE_CRAB, 0x6e6b55, 0x403b31) + val LIGHTFOOT_CRAB_SPAWN_EGG = registerSpawnEgg("lightfoot_crab_spawn_egg", HybridAquaticEntityTypes.LIGHTFOOT_CRAB, 0xb0305c, 0xff8c41) + val LOBSTER_SPAWN_EGG = registerSpawnEgg("lobster_spawn_egg", HybridAquaticEntityTypes.LOBSTER, 0x421b2f, 0x8a4836) + val SHRIMP_SPAWN_EGG = registerSpawnEgg("shrimp_spawn_egg", HybridAquaticEntityTypes.SHRIMP, 0xeb564b, 0xff9166) + val SPIDER_CRAB_SPAWN_EGG = registerSpawnEgg("spider_crab_spawn_egg", HybridAquaticEntityTypes.SPIDER_CRAB, 0x9d3e41, 0xc6836f) + val VAMPIRE_CRAB_SPAWN_EGG = registerSpawnEgg("vampire_crab_spawn_egg", HybridAquaticEntityTypes.VAMPIRE_CRAB, 0x322947, 0x752053) + val YETI_CRAB_SPAWN_EGG = registerSpawnEgg("yeti_crab_spawn_egg", HybridAquaticEntityTypes.YETI_CRAB, 0xfff4dd, 0xffd16b) //critter spawn eggs val NUDIBRANCH_SPAWN_EGG = registerSpawnEgg("nudibranch_spawn_egg", HybridAquaticEntityTypes.NUDIBRANCH, 0xf7be47, 0xb853a3) diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticBiomeTags.kt b/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticBiomeTags.kt index 56bc47d84..0a05f1dc8 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticBiomeTags.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticBiomeTags.kt @@ -74,7 +74,6 @@ object HybridAquaticBiomeTags { val YETI_CRAB_SPAWN_BIOMES = create("yeti_crab_spawn_biomes") val GIANT_ISOPOD_SPAWN_BIOMES = create("giant_isopod_spawn_biomes") val SHRIMP_SPAWN_BIOMES = create("shrimp_spawn_biomes") - val MANTIS_SHRIMP_SPAWN_BIOMES = create("mantis_shrimp_spawn_biomes") val CRAYFISH_SPAWN_BIOMES = create("crayfish_spawn_biomes") val LOBSTER_SPAWN_BIOMES = create("lobster_spawn_biomes") val COCONUT_CRAB_SPAWN_BIOMES = create("coconut_crab_spawn_biomes") diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticEntityTags.kt b/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticEntityTags.kt index 991db408d..025993b14 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticEntityTags.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/tag/HybridAquaticEntityTags.kt @@ -17,7 +17,6 @@ object HybridAquaticEntityTags { val WHALE_SHARK_PREY = create("prey/whale_shark") val STINGRAY_PREY = create("prey/stingray") val SQUID_PREY = create("prey/squid") - val MANTIS_SHRIMP_PREY = create("prey/mantis_shrimp") val LARGE_PREY = create("large_prey") val MEDIUM_PREY = create("medium_prey") diff --git a/src/main/kotlin/dev/hybridlabs/aquatic/world/EntityBiomeModifications.kt b/src/main/kotlin/dev/hybridlabs/aquatic/world/EntityBiomeModifications.kt index cd7474e44..15a7ea014 100644 --- a/src/main/kotlin/dev/hybridlabs/aquatic/world/EntityBiomeModifications.kt +++ b/src/main/kotlin/dev/hybridlabs/aquatic/world/EntityBiomeModifications.kt @@ -93,7 +93,6 @@ object EntityBiomeModifications { addCritter(HybridAquaticEntityTypes.YETI_CRAB, HybridAquaticBiomeTags.YETI_CRAB_SPAWN_BIOMES, 7, 1, 2) addCritter(HybridAquaticEntityTypes.GIANT_ISOPOD, HybridAquaticBiomeTags.GIANT_ISOPOD_SPAWN_BIOMES, 7, 1, 2) addCritter(HybridAquaticEntityTypes.SHRIMP, HybridAquaticBiomeTags.SHRIMP_SPAWN_BIOMES, 7, 1, 2) - addCritter(HybridAquaticEntityTypes.MANTIS_SHRIMP, HybridAquaticBiomeTags.MANTIS_SHRIMP_SPAWN_BIOMES, 7, 1, 2) addCritter(HybridAquaticEntityTypes.CRAYFISH, HybridAquaticBiomeTags.CRAYFISH_SPAWN_BIOMES, 7, 1, 2) addCritter(HybridAquaticEntityTypes.LOBSTER, HybridAquaticBiomeTags.LOBSTER_SPAWN_BIOMES, 7, 1, 2) addCritter(HybridAquaticEntityTypes.COCONUT_CRAB, HybridAquaticBiomeTags.COCONUT_CRAB_SPAWN_BIOMES, 7, 1, 2) diff --git a/src/main/resources/assets/hybrid-aquatic/animations/crab_pot.animation.json b/src/main/resources/assets/hybrid-aquatic/animations/crab_pot.animation.json deleted file mode 100644 index 2c489d3e3..000000000 --- a/src/main/resources/assets/hybrid-aquatic/animations/crab_pot.animation.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "format_version": "1.8.0", - "animations": { - "water_bob": { - "loop": true, - "animation_length": 4, - "bones": { - "buoy": { - "rotation": { - "0.0": { - "vector": [2.5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 2.5] - }, - "2.0": { - "vector": [-2.5, 0, 0] - }, - "3.0": { - "vector": [0, 0, -2.5] - }, - "4.0": { - "vector": [2.5, 0, 0] - } - }, - "position": { - "0.0": { - "vector": [0, 1, 0] - }, - "2.0": { - "vector": [0, 2, 0] - }, - "4.0": { - "vector": [0, 1, 0] - } - } - }, - "flag": { - "rotation": { - "0.0": { - "vector": [0, 10, 0] - }, - "2.0": { - "vector": [0, -10, 0] - }, - "4.0": { - "vector": [0, 10, 0] - } - } - } - } - }, - "float": { - "loop": true, - "animation_length": 4, - "bones": { - "buoy": { - "rotation": { - "0.0": { - "vector": [2.5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 2.5] - }, - "2.0": { - "vector": [-2.5, 0, 0] - }, - "3.0": { - "vector": [0, 0, -2.5] - }, - "4.0": { - "vector": [2.5, 0, 0] - } - }, - "position": { - "0.0": { - "vector": [0, 1, 0] - }, - "2.0": { - "vector": [0, 2, 0] - }, - "4.0": { - "vector": [0, 1, 0] - } - } - }, - "lantern": { - "rotation": { - "0.0": { - "vector": [-2.5, 0, 0] - }, - "1.0": { - "vector": [0, 0, -2.5] - }, - "2.0": { - "vector": [2.5, 0, 0] - }, - "3.0": { - "vector": [0, 0, 2.5] - }, - "4.0": { - "vector": [-2.5, 0, 0] - } - } - } - } - } - }, - "geckolib_format_version": 2 -} \ No newline at end of file diff --git a/src/main/resources/assets/hybrid-aquatic/animations/karkinos.animation.json b/src/main/resources/assets/hybrid-aquatic/animations/karkinos.animation.json deleted file mode 100644 index d34eb1dc0..000000000 --- a/src/main/resources/assets/hybrid-aquatic/animations/karkinos.animation.json +++ /dev/null @@ -1,1043 +0,0 @@ -{ - "format_version": "1.8.0", - "animations": { - "idle": { - "loop": true, - "animation_length": 3, - "bones": { - "right_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "1.5": { - "vector": [0, -5, 0] - }, - "3.0": { - "vector": [0, 0, 0] - } - } - }, - "left_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "1.5": { - "vector": [0, 5, 0] - }, - "3.0": { - "vector": [0, 0, 0] - } - } - } - } - }, - "walk": { - "loop": true, - "animation_length": 1, - "bones": { - "right_leg_1": { - "rotation": { - "0.0": { - "vector": [0, 22.5, 0] - }, - "0.25": { - "vector": [0, 0, 22.5] - }, - "0.5": { - "vector": [-22.5, -22.5, 22.5] - }, - "0.75": { - "vector": [0, -22.5, 0] - }, - "1.0": { - "vector": [0, 22.5, 0] - } - } - }, - "left_leg_1": { - "rotation": { - "0.0": { - "vector": [0, -22.5, 0] - }, - "0.25": { - "vector": [0, 0, -22.5] - }, - "0.5": { - "vector": [-22.5, 22.5, -22.5] - }, - "0.75": { - "vector": [0, 22.5, 0] - }, - "1.0": { - "vector": [0, -22.5, 0] - } - } - }, - "right_leg_2": { - "rotation": { - "0.0": { - "vector": [0, -22.5, 0] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, 22.5] - }, - "0.75": { - "vector": [-22.5, -22.5, 22.5] - }, - "1.0": { - "vector": [0, -22.5, 0] - } - } - }, - "left_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 22.5, 0] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, -22.5] - }, - "0.75": { - "vector": [-22.5, 22.5, -22.5] - }, - "1.0": { - "vector": [0, 22.5, 0] - } - } - }, - "right_leg_3": { - "rotation": { - "0.0": { - "vector": [0, -45, 22.5] - }, - "0.25": { - "vector": [0, -45, 0] - }, - "0.5": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [-22.5, -22.5, 22.5] - }, - "1.0": { - "vector": [0, -45, 22.5] - } - } - }, - "left_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 45, -22.5] - }, - "0.25": { - "vector": [0, 45, 0] - }, - "0.5": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [-22.5, 22.5, -22.5] - }, - "1.0": { - "vector": [0, 45, -22.5] - } - } - }, - "right_leg_4": { - "rotation": { - "0.0": { - "vector": [20.94102, -26.71053, 30.36119] - }, - "0.25": { - "vector": [9.00717, -46.79519, 24.14867] - }, - "0.5": { - "vector": [0, -45, 0] - }, - "0.75": { - "vector": [0, -22.5, 0] - }, - "1.0": { - "vector": [20.94102, -26.71053, 30.36119] - } - } - }, - "left_leg_4": { - "rotation": { - "0.0": { - "vector": [20.94102, 26.71053, -30.36119] - }, - "0.25": { - "vector": [9.00717, 46.79519, -24.14867] - }, - "0.5": { - "vector": [0, 45, 0] - }, - "0.75": { - "vector": [0, 22.5, 0] - }, - "1.0": { - "vector": [20.94102, 26.71053, -30.36119] - } - } - }, - "left_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 22.5, 0] - }, - "0.5": { - "vector": [0, 15, 0] - }, - "1.0": { - "vector": [0, 22.5, 0] - } - } - }, - "right_arm_2": { - "rotation": { - "0.0": { - "vector": [0, -22.5, 0] - }, - "0.5": { - "vector": [0, -15, 0] - }, - "1.0": { - "vector": [0, -22.5, 0] - } - } - }, - "body": { - "rotation": { - "0.0": { - "vector": [-2.5, 0, 0] - }, - "0.5": { - "vector": [0, 0, 0] - }, - "1.0": { - "vector": [-2.5, 0, 0] - } - } - } - } - }, - "attack_left": { - "loop": true, - "animation_length": 1, - "bones": { - "body": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, -5, 0] - }, - "0.75": { - "vector": [0, 5, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5417": { - "vector": [0, -35, 0] - }, - "0.75": { - "vector": [7.5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5417": { - "vector": [0, 5, 0] - }, - "0.75": { - "vector": [2.5, -15, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, -45] - }, - "0.75": { - "vector": [0, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - } - } - }, - "attack_right": { - "loop": true, - "animation_length": 1, - "bones": { - "body": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 5, 0] - }, - "0.75": { - "vector": [0, -5, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5417": { - "vector": [0, 35, 0] - }, - "0.75": { - "vector": [7.5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5417": { - "vector": [0, -5, 0] - }, - "0.75": { - "vector": [2.5, 15, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, 45] - }, - "0.75": { - "vector": [0, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - } - } - }, - "spit": { - "loop": true, - "animation_length": 1, - "bones": { - "body": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 22.5, 0] - }, - "0.3333": { - "vector": [0, -22.5, 0] - }, - "1.0": { - "vector": [0, 22.5, 0] - } - } - }, - "left_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [-5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [-8.5168, 0.34836, 7.67626] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "left_leg_4": { - "rotation": { - "0.0": { - "vector": [0, 0, 25.30064] - }, - "0.3333": { - "vector": [-26.3261, 2.36489, 25.30064] - }, - "1.0": { - "vector": [0, 0, 25.30064] - } - } - }, - "left_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [0, -67.5, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_arm_1": { - "rotation": { - "0.0": { - "vector": [0, -22.5, 0] - }, - "0.3333": { - "vector": [0, 22.5, 0] - }, - "1.0": { - "vector": [0, -22.5, 0] - } - } - }, - "right_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [-5, 0, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [-8.5168, -0.34836, -7.67626] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - }, - "right_leg_4": { - "rotation": { - "0.0": { - "vector": [0, 0, -25.30064] - }, - "0.3333": { - "vector": [-26.3261, -2.36489, -25.30064] - }, - "1.0": { - "vector": [0, 0, -25.30064] - } - } - }, - "right_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.3333": { - "vector": [0, 67.5, 0] - }, - "1.0": { - "vector": [0, 0, 0] - } - } - } - } - }, - "block": { - "loop": true, - "animation_length": 2, - "bones": { - "left_arm_2": { - "rotation": { - "0.0": { - "vector": [57.04902, 21.55151, 59.26162] - }, - "1.0": { - "vector": [48.48527, 18.51654, 49.82228] - }, - "2.0": { - "vector": [57.04902, 21.55151, 59.26162] - } - } - }, - "right_arm_1": { - "rotation": { - "vector": [0, -22.5, 0] - } - }, - "right_arm_2": { - "rotation": { - "0.0": { - "vector": [32.67199, -9.17273, -35.40187] - }, - "1.0": { - "vector": [29.36799, -4.88529, -31.21432] - }, - "2.0": { - "vector": [32.67199, -9.17273, -35.40187] - } - } - } - } - }, - "flipped": { - "loop": true, - "animation_length": 0.5, - "bones": { - "body": { - "rotation": { - "0.0": { - "vector": [-170.00933, 0.43399, -2.46207] - }, - "0.25": { - "vector": [-170.00933, -0.43399, 2.46207] - }, - "0.5": { - "vector": [-170.00933, 0.43399, -2.46207] - } - }, - "position": { - "vector": [0, -3.5, 0] - } - }, - "left_arm_1": { - "rotation": { - "0.0": { - "vector": [22.5, 0, 0] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [22.5, 0, 0] - } - } - }, - "left_arm_2": { - "rotation": { - "0.0": { - "vector": [-12.5, 0, -22.5] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [-12.5, 0, -22.5] - } - } - }, - "left_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, -45] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, -45] - } - } - }, - "left_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 22.5] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, 22.5] - } - } - }, - "left_leg_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, 0, 22.5] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "left_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, 0, 22.5] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "left_leg_4": { - "rotation": { - "0.0": { - "vector": [-54.12437, 14.60696, 58.37563] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [-54.12437, 14.60696, 58.37563] - } - } - }, - "left_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, -22.5, 0] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [22.5, 0, 0] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [-15, 0, 22.5] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, 0, 45] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_leg_1": { - "rotation": { - "0.0": { - "vector": [0, 0, -22.5] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, -22.5] - } - } - }, - "right_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, 0, -22.5] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, -22.5] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 0, -22.5] - } - } - }, - "right_leg_4": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [-54.12437, -14.60696, -58.37563] - }, - "0.5": { - "vector": [0, 0, 0] - } - } - }, - "right_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 22.5, 0] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.5": { - "vector": [0, 22.5, 0] - } - } - } - } - }, - "death": { - "loop": "hold_on_last_frame", - "animation_length": 0.75, - "bones": { - "body": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [-5, 0, 0] - }, - "0.75": { - "vector": [0, 0, 0] - } - }, - "position": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [0, -4, 0] - } - } - }, - "left_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [0, -22.5, 0] - } - } - }, - "left_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, 22.5] - }, - "0.75": { - "vector": [0, 0, 0] - } - } - }, - "left_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, -45] - }, - "0.75": { - "vector": [0, 0, 0] - } - } - }, - "left_eye": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, -22.5] - }, - "0.75": { - "vector": [0, 0, 45] - } - } - }, - "left_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [4.99527, -0.21782, -0.0095] - }, - "0.75": { - "vector": [0, 0, -20] - } - } - }, - "left_leg_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [5, 0, 2.5] - }, - "0.75": { - "vector": [0, 0, -22.5] - } - } - }, - "left_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [6.46247, -0.19537, -4.80035] - }, - "0.75": { - "vector": [0, 0, -22.5] - } - } - }, - "left_leg_4": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [21.32437, 2.472, -19.96582] - }, - "0.75": { - "vector": [40.75099, 5.32056, -42.60557] - } - } - }, - "left_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [0, -22.5, 0] - } - } - }, - "right_arm_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [0, 22.5, 0] - } - } - }, - "right_arm_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, -22.5] - }, - "0.75": { - "vector": [0, 0, 0] - } - } - }, - "right_claw": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, 45] - }, - "0.75": { - "vector": [0, 0, 0] - } - } - }, - "right_eye": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.375": { - "vector": [0, 0, 22.5] - }, - "0.75": { - "vector": [0, 0, -45] - } - } - }, - "right_leg_1": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [5, 0, -2.5] - }, - "0.75": { - "vector": [0, 0, 22.5] - } - } - }, - "right_leg_2": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [4.99527, 0.21782, 0.0095] - }, - "0.75": { - "vector": [0, 0, 20] - } - } - }, - "right_leg_3": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [6.46247, 0.19537, 4.80035] - }, - "0.75": { - "vector": [0, 0, 22.5] - } - } - }, - "right_leg_4": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.25": { - "vector": [21.32437, -2.472, 19.96582] - }, - "0.75": { - "vector": [40.75099, -5.32056, 42.60557] - } - } - }, - "right_mouthpiece": { - "rotation": { - "0.0": { - "vector": [0, 0, 0] - }, - "0.75": { - "vector": [0, 22.5, 0] - } - } - } - } - } - }, - "geckolib_format_version": 2 -} \ No newline at end of file diff --git a/src/main/resources/assets/hybrid-aquatic/geo/crab_pot.geo.json b/src/main/resources/assets/hybrid-aquatic/geo/crab_pot.geo.json deleted file mode 100644 index 2eb011899..000000000 --- a/src/main/resources/assets/hybrid-aquatic/geo/crab_pot.geo.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "format_version": "1.12.0", - "minecraft:geometry": [ - { - "description": { - "identifier": "geometry.unknown", - "texture_width": 64, - "texture_height": 64, - "visible_bounds_width": 2, - "visible_bounds_height": 2.5, - "visible_bounds_offset": [0, 0.75, 0] - }, - "bones": [ - { - "name": "crab_pot", - "pivot": [0, 0, 0], - "cubes": [ - {"origin": [-7.5, 2, -7.5], "size": [15, 12, 15], "uv": [0, 0]}, - {"origin": [-8, 0, -8], "size": [16, 2, 16], "uv": [0, 27]}, - {"origin": [-8, 14, -8], "size": [16, 2, 16], "uv": [0, 27]} - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/hybrid-aquatic/geo/karkinos.geo.json b/src/main/resources/assets/hybrid-aquatic/geo/karkinos.geo.json deleted file mode 100644 index dcd4a81d4..000000000 --- a/src/main/resources/assets/hybrid-aquatic/geo/karkinos.geo.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "format_version": "1.12.0", - "minecraft:geometry": [ - { - "description": { - "identifier": "geometry.unknown", - "texture_width": 128, - "texture_height": 128, - "visible_bounds_width": 4, - "visible_bounds_height": 2.5, - "visible_bounds_offset": [0, 0.75, 0] - }, - "bones": [ - { - "name": "body", - "pivot": [0, 9.85685, 1.4562], - "cubes": [ - {"origin": [-16, 6.5, -11], "size": [32, 8, 25], "pivot": [-3, 9, 11.5], "rotation": [-10, 0, 0], "uv": [0, 0]}, - {"origin": [-13, 4, -10.5], "size": [26, 7, 23], "uv": [0, 33]} - ] - }, - { - "name": "left_arm_1", - "parent": "body", - "pivot": [8, 7, -6], - "rotation": [0, -112.5, 0], - "cubes": [ - {"origin": [0, 3, -13.5], "size": [8, 6, 7], "uv": [55, 83]} - ] - }, - { - "name": "left_arm_2", - "parent": "left_arm_1", - "pivot": [0, 8, -14], - "rotation": [0, 45, 0], - "cubes": [ - {"origin": [-10, 1.5, -14], "size": [10, 9, 8], "uv": [0, 63]}, - {"origin": [-20, 4, -13.5], "size": [10, 6, 7], "uv": [36, 63]} - ] - }, - { - "name": "left_claw", - "parent": "left_arm_2", - "pivot": [-10, 5, -10], - "cubes": [ - {"origin": [-18, 3, -12.5], "size": [8, 3, 5], "uv": [75, 47]} - ] - }, - { - "name": "left_eye", - "parent": "body", - "pivot": [1.5, 8.25, -10.5], - "rotation": [22.5, 0, 22.5], - "cubes": [ - {"origin": [-0.09567, 8.46339, -10.41161], "size": [3, 8, 3], "uv": [0, 8]} - ] - }, - { - "name": "left_leg_2", - "parent": "body", - "pivot": [12, 6, 3], - "cubes": [ - {"origin": [12, 0, 2], "size": [11, 8, 4], "uv": [84, 63]} - ] - }, - { - "name": "left_leg_1", - "parent": "body", - "pivot": [12, 7, -1], - "rotation": [0, 22.5, 0], - "cubes": [ - {"origin": [12, 0, -3], "size": [11, 10, 4], "uv": [75, 33]} - ] - }, - { - "name": "left_leg_3", - "parent": "body", - "pivot": [12, 5, 8.5], - "rotation": [0, -22.5, 0], - "cubes": [ - {"origin": [12, 0, 7.5], "size": [11, 7, 4], "uv": [89, 0]} - ] - }, - { - "name": "left_leg_4", - "parent": "body", - "pivot": [8, 4, 11], - "rotation": [0, -67.5, 0], - "cubes": [ - {"origin": [8, 0, 10], "size": [11, 6, 4], "uv": [26, 92]} - ] - }, - { - "name": "left_mouthpiece", - "parent": "body", - "pivot": [4.35, 7, -10], - "cubes": [ - {"origin": [0, 3.9924, -11], "size": [4, 5, 1], "uv": [0, 19]} - ] - }, - { - "name": "right_arm_1", - "parent": "body", - "pivot": [-8, 7, -6], - "rotation": [0, 112.5, 0], - "cubes": [ - {"origin": [-8, 3, -13.5], "size": [8, 6, 7], "uv": [0, 80]} - ] - }, - { - "name": "right_arm_2", - "parent": "right_arm_1", - "pivot": [0, 8, -14], - "rotation": [0, -45, 0], - "cubes": [ - {"origin": [0, 2.5, -14], "size": [7, 7, 8], "uv": [62, 68]}, - {"origin": [7, 4, -13.5], "size": [6, 5, 7], "uv": [0, 93]} - ] - }, - { - "name": "right_claw", - "parent": "right_arm_2", - "pivot": [7, 6, -10], - "cubes": [ - {"origin": [7, 3, -12.5], "size": [5, 3, 5], "uv": [0, 0]} - ] - }, - { - "name": "right_eye", - "parent": "body", - "pivot": [-1.5, 8.25, -10.5], - "rotation": [22.5, 0, -22.5], - "cubes": [ - {"origin": [-2.90433, 8.46339, -10.41161], "size": [3, 8, 3], "uv": [12, 8]} - ] - }, - { - "name": "right_leg_1", - "parent": "body", - "pivot": [-12, 7, -1], - "rotation": [0, -22.5, 0], - "cubes": [ - {"origin": [-23, 0, -3], "size": [11, 10, 4], "uv": [32, 76]} - ] - }, - { - "name": "right_leg_2", - "parent": "body", - "pivot": [-12, 6, 3], - "cubes": [ - {"origin": [-23, 0, 2], "size": [11, 8, 4], "uv": [85, 83]} - ] - }, - { - "name": "right_leg_3", - "parent": "body", - "pivot": [-12, 5, 8.5], - "rotation": [0, 22.5, 0], - "cubes": [ - {"origin": [-23, 0, 7.5], "size": [11, 7, 4], "uv": [89, 11]} - ] - }, - { - "name": "right_leg_4", - "parent": "body", - "pivot": [-8, 4, 11], - "rotation": [0, 67.5, 0], - "cubes": [ - {"origin": [-19, 0, 10], "size": [11, 6, 4], "uv": [81, 95]} - ] - }, - { - "name": "right_mouthpiece", - "parent": "body", - "pivot": [-4.35, 7, -10], - "cubes": [ - {"origin": [-4, 3.9924, -11], "size": [4, 5, 1], "uv": [10, 19]} - ] - } - ] - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/hybrid-aquatic/textures/block/crab_pot.png b/src/main/resources/assets/hybrid-aquatic/textures/block/crab_pot.png deleted file mode 100644 index d6749d758..000000000 Binary files a/src/main/resources/assets/hybrid-aquatic/textures/block/crab_pot.png and /dev/null differ diff --git a/src/main/resources/assets/hybrid-aquatic/textures/entity/karkinos.png b/src/main/resources/assets/hybrid-aquatic/textures/entity/karkinos.png deleted file mode 100644 index 5f9db0c5a..000000000 Binary files a/src/main/resources/assets/hybrid-aquatic/textures/entity/karkinos.png and /dev/null differ