End Fish fire damage & enchantments cooking
This commit is contained in:
parent
1ce74f64bf
commit
191c907e24
1 changed files with 15 additions and 1 deletions
|
@ -8,7 +8,9 @@ import net.minecraft.network.syncher.SynchedEntityData;
|
||||||
import net.minecraft.sounds.SoundEvent;
|
import net.minecraft.sounds.SoundEvent;
|
||||||
import net.minecraft.sounds.SoundEvents;
|
import net.minecraft.sounds.SoundEvents;
|
||||||
import net.minecraft.world.DifficultyInstance;
|
import net.minecraft.world.DifficultyInstance;
|
||||||
|
import net.minecraft.world.InteractionHand;
|
||||||
import net.minecraft.world.damagesource.DamageSource;
|
import net.minecraft.world.damagesource.DamageSource;
|
||||||
|
import net.minecraft.world.damagesource.EntityDamageSource;
|
||||||
import net.minecraft.world.entity.EntityType;
|
import net.minecraft.world.entity.EntityType;
|
||||||
import net.minecraft.world.entity.LivingEntity;
|
import net.minecraft.world.entity.LivingEntity;
|
||||||
import net.minecraft.world.entity.MobSpawnType;
|
import net.minecraft.world.entity.MobSpawnType;
|
||||||
|
@ -17,7 +19,11 @@ import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
|
||||||
import net.minecraft.world.entity.ai.attributes.Attributes;
|
import net.minecraft.world.entity.ai.attributes.Attributes;
|
||||||
import net.minecraft.world.entity.animal.AbstractSchoolingFish;
|
import net.minecraft.world.entity.animal.AbstractSchoolingFish;
|
||||||
import net.minecraft.world.entity.item.ItemEntity;
|
import net.minecraft.world.entity.item.ItemEntity;
|
||||||
|
import net.minecraft.world.entity.player.Player;
|
||||||
|
import net.minecraft.world.item.Item;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
import net.minecraft.world.item.enchantment.EnchantmentHelper;
|
||||||
|
import net.minecraft.world.item.enchantment.Enchantments;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.ServerLevelAccessor;
|
import net.minecraft.world.level.ServerLevelAccessor;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
|
@ -150,7 +156,15 @@ public class EndFishEntity extends AbstractSchoolingFish {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void dropFromLootTable(DamageSource source, boolean causedByPlayer) {
|
protected void dropFromLootTable(DamageSource source, boolean causedByPlayer) {
|
||||||
ItemEntity drop = new ItemEntity(level, getX(), getY(), getZ(), new ItemStack(EndItems.END_FISH_RAW));
|
Item item = source.isFire() ? EndItems.END_FISH_COOKED : EndItems.END_FISH_RAW;
|
||||||
|
if (causedByPlayer && source instanceof EntityDamageSource) {
|
||||||
|
EntityDamageSource damageSource = (EntityDamageSource) source;
|
||||||
|
ItemStack handItem = ((Player) damageSource.getEntity()).getItemInHand(InteractionHand.MAIN_HAND);
|
||||||
|
if (EnchantmentHelper.getItemEnchantmentLevel(Enchantments.FIRE_ASPECT, handItem) > 0) {
|
||||||
|
item = EndItems.END_FISH_COOKED;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ItemEntity drop = new ItemEntity(level, getX(), getY(), getZ(), new ItemStack(item));
|
||||||
this.level.addFreshEntity(drop);
|
this.level.addFreshEntity(drop);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue