Skip to content

Commit

Permalink
Bootlegged tuna variants atm
Browse files Browse the repository at this point in the history
Added:
 - Variants to YellowfinTunaEntity
  • Loading branch information
dragonflame86 committed Jun 8, 2024
1 parent 9ba631a commit 438be52
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -256,16 +256,16 @@ open class HybridAquaticFishEntity(
dataTracker.set(VARIANT_DATA, value)
}

var variant: FishVariant?
get() = variants[""]
private var variantKey: String
get() = dataTracker.get(VARIANT)
private set(value) {
variants
dataTracker.set(VARIANT, value)
}

var variantKey: String
get() = dataTracker.get(VARIANT)
var variant: FishVariant?
get() = variants[""]
private set(value) {
dataTracker.set(VARIANT, value)
variants
}

// endregion
Expand Down Expand Up @@ -475,7 +475,7 @@ open class HybridAquaticFishEntity(

@Suppress("UNUSED")
data class FishVariant(
val variantName : String,
var variantName : String,
val spawnCondition: (WorldAccess, SpawnReason, BlockPos, Random ) -> Boolean
) {
companion object {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@ open class HybridAquaticSchoolingFishEntity(
override val prey: TagKey<EntityType<*>>,
override val predator: TagKey<EntityType<*>>,
private var leader: HybridAquaticSchoolingFishEntity? = null,
private var groupSize: Int = 1
) : HybridAquaticFishEntity(type, world, emptyMap(), HybridAquaticEntityTags.NONE, HybridAquaticEntityTags.NONE) {
private var groupSize: Int = 1,
private val variants: Map<String, FishVariant> = hashMapOf()
) : HybridAquaticFishEntity(type, world, variants, HybridAquaticEntityTags.NONE, HybridAquaticEntityTags.NONE) {

override fun initGoals() {
super.initGoals()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,14 @@ 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.registry.tag.BiomeTags
import net.minecraft.world.World

class YellowfinTunaEntity(entityType: EntityType<out YellowfinTunaEntity>, world: World) :
HybridAquaticSchoolingFishEntity(entityType, world, HybridAquaticEntityTags.TUNA_PREY, HybridAquaticEntityTags.TUNA_PREDATOR) {
HybridAquaticSchoolingFishEntity(entityType, world, HybridAquaticEntityTags.TUNA_PREY, HybridAquaticEntityTags.TUNA_PREDATOR, variants = hashMapOf(
"bluefin" to FishVariant.biomeVariant("bluefin", BiomeTags.IS_END),
"yellowfin" to FishVariant.biomeVariant("yellowfin", BiomeTags.IS_NETHER)
)) {
override fun initGoals() {
super.initGoals()
goalSelector.add(5, FishJumpGoal(this, 10))
Expand Down

0 comments on commit 438be52

Please sign in to comment.