Class AbstractGunAmmoItem
java.lang.Object
net.minecraft.world.item.Item
me.desht.pneumaticcraft.common.item.minigun.AbstractGunAmmoItem
- All Implemented Interfaces:
net.minecraft.world.level.ItemLike,net.minecraftforge.common.extensions.IForgeItem
- Direct Known Subclasses:
ArmorPiercingGunAmmoItem,ExplosiveGunAmmoItem,FreezingGunAmmoItem,IncendiaryGunAmmoItem,StandardGunAmmoItem,WeightedGunAmmoItem
public abstract class AbstractGunAmmoItem
extends net.minecraft.world.item.Item
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.item.Item
net.minecraft.world.item.Item.Properties -
Field Summary
Fields inherited from class net.minecraft.world.item.Item
BASE_ATTACK_DAMAGE_UUID, BASE_ATTACK_SPEED_UUID, BY_BLOCK, canRepair, category, EAT_DURATION, MAX_BAR_WIDTH, MAX_STACK_SIZE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappendHoverText(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.Level world, List<net.minecraft.network.chat.Component> infoList, net.minecraft.world.item.TooltipFlag extraInfo) floatgetAirUsageMultiplier(Minigun minigun, net.minecraft.world.item.ItemStack ammoStack) Get the air usage multiplier.abstract intgetAmmoColor(net.minecraft.world.item.ItemStack ammo) Get the color used to render this ammo, both when rendering the minigun model, and when drawing the bullet traces.intgetAmmoCost(net.minecraft.world.item.ItemStack ammoStack) Get the cost to fire this ammo, which is the number of rounds used up in one shot.protected floatgetDamageMultiplier(net.minecraft.world.entity.Entity target, net.minecraft.world.item.ItemStack ammoStack) Get the damage multiplier.protected net.minecraft.world.damagesource.DamageSourcegetDamageSource(Minigun minigun) intgetMaxDamage(net.minecraft.world.item.ItemStack stack) floatgetRangeMultiplier(net.minecraft.world.item.ItemStack ammoStack) Get this ammo's range modifier.intonBlockHit(Minigun minigun, net.minecraft.world.item.ItemStack ammo, net.minecraft.world.phys.BlockHitResult brtr) Called when a block is shot by the minigun's wielder.intonTargetHit(Minigun minigun, net.minecraft.world.item.ItemStack ammo, net.minecraft.world.entity.Entity target) Called when an entity is shot by the minigun's wielder.Methods inherited from class net.minecraft.world.item.Item
allowedIn, asItem, builtInRegistryHolder, byBlock, byId, canAttackBlock, canBeDepleted, canBeHurtBy, canFitInsideContainerItems, fillItemCategory, finishUsingItem, getBarColor, getBarWidth, getCraftingRemainingItem, getDefaultAttributeModifiers, getDefaultInstance, getDescription, getDescriptionId, getDescriptionId, getDestroySpeed, getDrinkingSound, getEatingSound, getEnchantmentValue, getEquipSound, getFoodProperties, getId, getItemCategory, getMaxDamage, getMaxStackSize, getName, getOrCreateDescriptionId, getPlayerPOVHitResult, getRarity, getRenderPropertiesInternal, getTooltipImage, getUseAnimation, getUseDuration, hasCraftingRemainingItem, hurtEnemy, initializeClient, interactLivingEntity, inventoryTick, isBarVisible, isComplex, isCorrectToolForDrops, isEdible, isEnchantable, isFireResistant, isFoil, isRepairable, isValidRepairItem, mineBlock, onCraftedBy, onDestroyed, onUseTick, overrideOtherStackedOnMe, overrideStackedOnOther, releaseUsing, shouldOverrideMultiplayerNbt, toString, use, useOn, useOnRelease, verifyTagAfterLoadMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraftforge.common.extensions.IForgeItem
canApplyAtEnchantingTable, canContinueUsing, canDisableShield, canElytraFly, canEquip, canPerformAction, canWalkOnPowderedSnow, createEntity, damageItem, doesSneakBypassUse, elytraFlightTick, getAllEnchantments, getArmorTexture, getAttributeModifiers, getBurnTime, getCraftingRemainingItem, getCreativeTabs, getCreatorModId, getDamage, getDefaultTooltipHideFlags, getEnchantmentLevel, getEnchantmentValue, getEntityLifespan, getEquipmentSlot, getFoodProperties, getHighlightTip, getMaxStackSize, getShareTag, getSweepHitBox, getXpRepairRatio, hasCraftingRemainingItem, hasCustomEntity, initCapabilities, isBookEnchantable, isCorrectToolForDrops, isDamageable, isDamaged, isEnderMask, isNotReplaceableByPickAction, isPiglinCurrency, makesPiglinsNeutral, onArmorTick, onBlockStartBreak, onDestroyed, onDroppedByPlayer, onEntityItemUpdate, onEntitySwing, onHorseArmorTick, onItemUseFirst, onLeftClickEntity, onUsingTick, readShareTag, setDamage, shouldCauseBlockBreakReset, shouldCauseReequipAnimation
-
Constructor Details
-
AbstractGunAmmoItem
public AbstractGunAmmoItem()
-
-
Method Details
-
getMaxDamage
public int getMaxDamage(net.minecraft.world.item.ItemStack stack) -
getRangeMultiplier
public float getRangeMultiplier(net.minecraft.world.item.ItemStack ammoStack) Get this ammo's range modifier.- Parameters:
ammoStack- this ammo- Returns:
- the range modifier; base minigun range is multiplied by this value
-
getAirUsageMultiplier
Get the air usage multiplier.- Parameters:
minigun- the minigun being usedammoStack- this ammo- Returns:
- the usage multiplier; base minigun air usage is multiplied by this value
-
getDamageMultiplier
protected float getDamageMultiplier(net.minecraft.world.entity.Entity target, net.minecraft.world.item.ItemStack ammoStack) Get the damage multiplier.- Parameters:
target- the current targetammoStack- this ammo- Returns:
- the damage multiplier; standard physical minigun bullet damage is multiplied by this value
-
getAmmoColor
public abstract int getAmmoColor(net.minecraft.world.item.ItemStack ammo) Get the color used to render this ammo, both when rendering the minigun model, and when drawing the bullet traces.- Parameters:
ammo- the ammo cartridge- Returns:
- a rendering color (ARGB format)
-
getAmmoCost
public int getAmmoCost(net.minecraft.world.item.ItemStack ammoStack) Get the cost to fire this ammo, which is the number of rounds used up in one shot.- Parameters:
ammoStack- the ammo stack- Returns:
- the ammo cost
-
getDamageSource
-
appendHoverText
public void appendHoverText(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.Level world, List<net.minecraft.network.chat.Component> infoList, net.minecraft.world.item.TooltipFlag extraInfo) - Overrides:
appendHoverTextin classnet.minecraft.world.item.Item
-
onTargetHit
public int onTargetHit(Minigun minigun, net.minecraft.world.item.ItemStack ammo, net.minecraft.world.entity.Entity target) Called when an entity is shot by the minigun's wielder. This method is responsible for applying any damage and other possible effects to the entity.- Parameters:
minigun- the minigun being usedammo- the ammo cartridge stack usedtarget- the targeted entity- Returns:
- the number of rounds fired
-
onBlockHit
public int onBlockHit(Minigun minigun, net.minecraft.world.item.ItemStack ammo, net.minecraft.world.phys.BlockHitResult brtr) Called when a block is shot by the minigun's wielder.- Parameters:
minigun- the minigun being usedammo- the ammo cartridge stack usedbrtr- the block raytrace result- Returns:
- the number of rounds fired
-