Skip to content

Commit

Permalink
Crustacean stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
MysticKoko committed Jul 15, 2024
1 parent dc7e2fa commit 4507ef1
Show file tree
Hide file tree
Showing 8 changed files with 83 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"pools": [
{
"bonus_rolls": 0.0,
"entries": [
{
"type": "minecraft:item",
"name": "hybrid-aquatic:lobster_claw"
}
],
"rolls": 1.0
},
{
"bonus_rolls": 0.0,
"entries": [
{
"type": "minecraft:item",
"name": "hybrid-aquatic:raw_lobster_tail"
}
],
"rolls": 1.0
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"pools": [
{
"bonus_rolls": 0.0,
"entries": [
{
"type": "minecraft:item",
"name": "hybrid-aquatic:raw_lobster_tail"
}
],
"rolls": 1.0
}
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -732,6 +732,28 @@ class GenericLootTableProvider(output: FabricDataOutput) : SimpleFabricLootTable
)
)

exporter.accept(
HybridAquaticLootTables.CLAWED_LOBSTER,
LootTable.builder()
.pool(
LootPool.builder()
.with(ItemEntry.builder(HybridAquaticItems.LOBSTER_CLAW))
)
.pool(
LootPool.builder()
.with(ItemEntry.builder(HybridAquaticItems.RAW_LOBSTER_TAIL))
)
)

exporter.accept(
HybridAquaticLootTables.CLAWLESS_LOBSTER,
LootTable.builder()
.pool(
LootPool.builder()
.with(ItemEntry.builder(HybridAquaticItems.RAW_LOBSTER_TAIL))
)
)

exporter.accept(
HybridAquaticLootTables.CRAB_DIGGING_TREASURE_ID,
LootTable.builder()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,32 @@
package dev.hybridlabs.aquatic.entity.crustacean

import dev.hybridlabs.aquatic.tag.HybridAquaticBiomeTags
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.util.Identifier
import net.minecraft.world.World

class LobsterEntity(entityType: EntityType<out HybridAquaticCrustaceanEntity>, world: World) :
HybridAquaticCrustaceanEntity(entityType, world, emptyMap(), false, false) {
HybridAquaticCrustaceanEntity(entityType, world, variants = hashMapOf(
"american" to CrustaceanVariant.biomeVariant("american", HybridAquaticBiomeTags.LOBSTER_SPAWN_BIOMES,
ignore = listOf(CrustaceanVariant.Ignore.MODEL, CrustaceanVariant.Ignore.ANIMATION)),
"california_spiny" to CrustaceanVariant.biomeVariant("california_spiny", HybridAquaticBiomeTags.LOBSTER_SPAWN_BIOMES,
ignore = listOf(CrustaceanVariant.Ignore.MODEL, CrustaceanVariant.Ignore.ANIMATION)),
"ornate_spiny" to CrustaceanVariant.biomeVariant("ornate_spiny", HybridAquaticBiomeTags.LOBSTER_SPAWN_BIOMES,
ignore = listOf(CrustaceanVariant.Ignore.MODEL, CrustaceanVariant.Ignore.ANIMATION)),
),
false, false) {

public override fun getLootTableId(): Identifier {
return when (this.variant?.variantName) {
"american" -> Identifier("hybrid-aquatic", "gameplay/clawed_lobster")
"california_spiny" -> Identifier("hybrid-aquatic", "gameplay/clawless_lobster")
"ornate_spiny" -> Identifier("hybrid-aquatic", "gameplay/clawless_lobster")
else -> super.getLootTableId()
}
}

companion object {
fun createMobAttributes(): DefaultAttributeContainer.Builder {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ object HybridAquaticLootTables {
val ORANGESHOULDER = Identifier(HybridAquatic.MOD_ID, "gameplay/orangeshoulder")
val UNICORNFISH = Identifier(HybridAquatic.MOD_ID, "gameplay/unicornfish")

val CLAWED_LOBSTER = Identifier(HybridAquatic.MOD_ID, "gameplay/clawed_lobster")
val CLAWLESS_LOBSTER = Identifier(HybridAquatic.MOD_ID, "gameplay/clawless_lobster")

val BLUE_SPOTTED_STINGRAY = Identifier(HybridAquatic.MOD_ID, "gameplay/blue_spotted_stingray")

val CRAB_DIGGING_TREASURE_ID = Identifier(HybridAquatic.MOD_ID, "gameplay/crab_digging_treasure")
Expand Down

0 comments on commit 4507ef1

Please sign in to comment.