From 79ff3692b9462fc79d93bd74213ce6904340fc13 Mon Sep 17 00:00:00 2001 From: SoniEx2 Date: Tue, 4 Mar 2025 22:45:19 -0300 Subject: First public commit --- .../radio/entity/ElectronicsTraderEntity.kt | 36 ++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/main/kotlin/space/autistic/radio/entity/ElectronicsTraderEntity.kt (limited to 'src/main/kotlin/space/autistic/radio/entity') diff --git a/src/main/kotlin/space/autistic/radio/entity/ElectronicsTraderEntity.kt b/src/main/kotlin/space/autistic/radio/entity/ElectronicsTraderEntity.kt new file mode 100644 index 0000000..3aa53b1 --- /dev/null +++ b/src/main/kotlin/space/autistic/radio/entity/ElectronicsTraderEntity.kt @@ -0,0 +1,36 @@ +package space.autistic.radio.entity + +import net.minecraft.entity.EntityType +import net.minecraft.entity.ai.goal.HoldInHandsGoal +import net.minecraft.entity.passive.WanderingTraderEntity +import net.minecraft.item.ItemStack +import net.minecraft.item.Items +import net.minecraft.village.TradeOffer +import net.minecraft.village.TradedItem +import net.minecraft.world.World +import space.autistic.radio.PirateRadioItems + +class ElectronicsTraderEntity(entityType: EntityType, world: World) : + WanderingTraderEntity(entityType, world) { + + override fun initGoals() { + super.initGoals() + goalSelector.goals.removeIf { it.goal is HoldInHandsGoal<*> } + } + + override fun fillRecipes() { + val offers = this.getOffers() + offers.add(TradeOffer(TradedItem(Items.EMERALD, 5), ItemStack(PirateRadioItems.POWERBANK), 3, 0, 0f)) + offers.add(TradeOffer(TradedItem(Items.EMERALD, 10), ItemStack(PirateRadioItems.FM_RECEIVER), 3, 0, 0f)) + offers.add(TradeOffer(TradedItem(Items.EMERALD, 15), ItemStack(PirateRadioItems.SBC), 3, 0, 0f)) + offers.add(TradeOffer(TradedItem(Items.EMERALD, 5), ItemStack(PirateRadioItems.STORAGE_CARD), 3, 0, 0f)) + offers.add(TradeOffer(TradedItem(Items.EMERALD, 1), ItemStack(PirateRadioItems.WIRE), 3, 0, 0f)) + } + + override fun tickMovement() { + if (!this.world.isClient) { + super.setDespawnDelay(1000) + } + super.tickMovement() + } +} \ No newline at end of file -- cgit 1.4.1