Class BulletItem<T extends BulletEntity>

java.lang.Object
net.minecraft.world.item.Item
net.minecraft.world.item.ArrowItem
tech.anonymoushacker1279.immersiveweapons.item.projectile.BulletItem<T>
All Implemented Interfaces:
net.minecraft.world.flag.FeatureElement, net.minecraft.world.item.ProjectileItem, net.minecraft.world.level.ItemLike, net.neoforged.neoforge.common.extensions.IItemExtension
Direct Known Subclasses:
DragonFireballItem

public class BulletItem<T extends BulletEntity> extends net.minecraft.world.item.ArrowItem
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     

    Nested classes/interfaces inherited from class net.minecraft.world.item.Item

    net.minecraft.world.item.Item.Properties, net.minecraft.world.item.Item.TooltipContext

    Nested classes/interfaces inherited from interface net.minecraft.world.item.ProjectileItem

    net.minecraft.world.item.ProjectileItem.DispenseConfig, net.minecraft.world.item.ProjectileItem.PositionFunction
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final boolean
     
    final double
     
    final Supplier<net.minecraft.world.entity.EntityType<T>>
     
    final double
     
     
     
    final boolean
     
    final int
     
    final float
     
    final int
     

    Fields inherited from class net.minecraft.world.item.Item

    ABSOLUTE_MAX_STACK_SIZE, APPROXIMATELY_INFINITE_USE_DURATION, BASE_ATTACK_DAMAGE_ID, BASE_ATTACK_SPEED_ID, BY_BLOCK, canCombineRepair, CODEC, CODEC_WITH_BOUND_COMPONENTS, DEFAULT_MAX_STACK_SIZE, descriptionId, MAX_BAR_WIDTH, STREAM_CODEC

    Fields inherited from interface net.minecraft.world.flag.FeatureElement

    FILTERED_REGISTRIES
  • Constructor Summary

    Constructors
    Constructor
    Description
    BulletItem(net.minecraft.world.item.Item.Properties properties, double damage, Supplier<net.minecraft.world.entity.EntityType<T>> bulletEntity, int pierceLevel, boolean canBeInfinite, float misfireChance, double gravityModifier, CustomArrowItem.InaccuracySettings inaccuracySettings, int knockbackStrength, HitEffectUtils.HitEffect hitEffect, boolean isExplosive)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    createBullet(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
     
    createCannonball(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
     
    createDragonFireball(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
     
    createFlare(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
     
    boolean
    isInfinite(net.minecraft.world.item.ItemStack bullet, net.minecraft.world.item.ItemStack gun, net.minecraft.world.entity.LivingEntity shooter)
    Check if the bullet is infinite.

    Methods inherited from class net.minecraft.world.item.ArrowItem

    asProjectile, createArrow

    Methods inherited from class net.minecraft.world.item.Item

    appendHoverText, asItem, builtInRegistryHolder, byBlock, byId, canDestroyBlock, canFitInsideContainerItems, components, computeDefaultResource, finishUsingItem, getAttackDamageBonus, getBarColor, getBarWidth, getCraftingRemainder, getDefaultInstance, getDefaultMaxStackSize, getDescriptionId, getDestroySpeed, getId, getItemDamageSource, getName, getPlayerPOVHitResult, getTooltipImage, getUseAnimation, getUseDuration, hurtEnemy, interactLivingEntity, inventoryTick, isBarVisible, isCombineRepairable, isCorrectToolForDrops, isFoil, mineBlock, onCraftedBy, onCraftedPostProcess, onDestroyed, onUseTick, overrideOtherStackedOnMe, overrideStackedOnOther, postHurtEnemy, releaseUsing, requiredFeatures, resetDefaultResource, shouldPrintOpWarning, toString, use, useOn, useOnRelease

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.minecraft.world.flag.FeatureElement

    isEnabled

    Methods inherited from interface net.neoforged.neoforge.common.extensions.IItemExtension

    applyEnchantments, canBeHurtBy, canContinueUsing, canEquip, canFitInsideContainerItems, canGrindstoneRepair, canPerformAction, canWalkOnPowderedSnow, createEntity, damageItem, doesSneakBypassUse, getAllEnchantments, getBurnTime, getCraftingRemainder, getCreatorModId, getDamage, getDefaultAttributeModifiers, getEnchantmentLevel, getEntityLifespan, getEquipmentSlot, getHighlightTip, getMaxDamage, getMaxStackSize, getSweepHitBox, getXpRepairRatio, hasCustomEntity, isDamageable, isDamaged, isGazeDisguise, isNotReplaceableByPickAction, isPiglinCurrency, isPrimaryItemFor, makesPiglinsNeutral, onAnimalArmorTick, onDestroyed, onDroppedByPlayer, onEntityItemUpdate, onEntitySwing, onItemUseFirst, onLeftClickEntity, onStopUsing, setDamage, shouldCauseBlockBreakReset, shouldCauseReequipAnimation, supportsEnchantment

    Methods inherited from interface net.minecraft.world.item.ProjectileItem

    createDispenseConfig, shoot
  • Field Details

    • entitySupplier

      public final Supplier<net.minecraft.world.entity.EntityType<T extends BulletEntity>> entitySupplier
    • pierceLevel

      public final int pierceLevel
    • canBeInfinite

      public final boolean canBeInfinite
    • misfireChance

      public final float misfireChance
    • gravityModifier

      public final double gravityModifier
    • inaccuracySettings

      public final CustomArrowItem.InaccuracySettings inaccuracySettings
    • knockbackStrength

      public final int knockbackStrength
    • damage

      public final double damage
    • hitEffect

      public final HitEffectUtils.HitEffect hitEffect
    • isExplosive

      public final boolean isExplosive
  • Constructor Details

    • BulletItem

      public BulletItem(net.minecraft.world.item.Item.Properties properties, double damage, Supplier<net.minecraft.world.entity.EntityType<T>> bulletEntity, int pierceLevel, boolean canBeInfinite, float misfireChance, double gravityModifier, CustomArrowItem.InaccuracySettings inaccuracySettings, int knockbackStrength, HitEffectUtils.HitEffect hitEffect, boolean isExplosive)
  • Method Details

    • createBullet

      public BulletEntity createBullet(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
    • createFlare

      public FlareEntity createFlare(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
    • createCannonball

      public CannonballEntity createCannonball(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
    • createDragonFireball

      public DragonFireballBulletEntity createDragonFireball(net.minecraft.world.level.Level level, net.minecraft.world.entity.LivingEntity shooter, net.minecraft.world.item.ItemStack gun)
    • isInfinite

      public boolean isInfinite(net.minecraft.world.item.ItemStack bullet, net.minecraft.world.item.ItemStack gun, net.minecraft.world.entity.LivingEntity shooter)
      Check if the bullet is infinite. Restricts the ability to lower level bullets for balance.
      Overrides:
      isInfinite in class net.minecraft.world.item.ArrowItem
      Parameters:
      bullet - the bullet being checked
      gun - the gun firing the bullet
      shooter - the entity firing the gun
      Returns:
      boolean