All Classes and Interfaces
Class
Description
Determines whether a block is broken, cracked, or skip damage.
Holds data from config for a material.
Utility class that stores all block damage on the server.
The
Chunk class does not provide a hashing method, so we are stuck wrapping
the chunk in order to use a HashMapThis class outlines a sorter to define the order that blocks should regenerate from an explosion.
This explosion defines a rectangular prism shaped explosion, where a valid (non-negative) width
and height are specified.
Handles breaking the weapon over a certain number of shots, so weapons do not last forever.
This enum is used to keep a list of all NBT tags used by WeaponMechanics.
This class highlights different points in a hit box.
This explosion uses the minecraft explosion system, instead of using a shape.
Wraps a
LivingEntity object to simplify per-entity data/methods that are used by
WeaponMechanics.For equipping
Useful commands for testing different explosion sizes and shapes.
Listens and cancels events that could interfere with block regeneration, or cause damage because
of the missing blocks
It also regenerates blocks if chunks unload
This interface outlines the shape an explosion may take.
Factory class to provide explosion exposures to the
Explosion's serializer.For reload
This class highlights the different types a Firearm can have.
This task handles firing projectiles every
N ticks.Deprecated.
Deprecated.
Deprecated.
Deprecated.
Deprecated.
Simple class to help with handling spread and recoil change
Uses parabolas to calculate the area of explosions, where a parabola is defined as: y = m(x -
xOffset)^2 + yOffset xOffset is ignored here yOffset is the depth.
Wraps a
Player object to simplify per-player data/methods that are used by
WeaponMechanics.This class encapsulates an (x, y) point with a value.
This event is called after
WeaponPreShootEvent but right before WeaponShootEvent.Called whenever a
WeaponProjectile ends.This class outlines convenient methods for any
WeaponEvent that involves an
WeaponProjectile.Called whenever an explosion is spawned by a weapon (When a projectile explodes, usually).
Called whenever a
WeaponProjectile hits a block.Called whenever a projectile hits an entity.
Called right before calculations for an explosion occurs.
A projectile script is a class that can be attached to a projectile.
This class is run once for every Minecraft Server tick (ideally 20 ticks per second).
Really lightweight remove on block collision projectile.
Repair-Kits are items that can be used to repair multiple different weapons/armors, instead of
redefining a repair-item for every weapon.
People can choose where the bullet is offset from depending on VR/Scope.
Keeps track of the left and right shoot locations, since the position should probably be
different for each arm.
The
Skin interface is to abstract out the Skin.apply(ItemStack) method, since there
are 2 different skin systems that can work together.Identifier for actions, like the default skin, scoping, sprinting, etc.
This class parses an image input (Usually a .png file) and saves each pixel in the image into a
buffer.
For reload
Called whenever an entity is damaged by a weapon.
This class outlines the event of a player holding a weapon.
When a weapon's
FirearmState changes.Called before an attempt to use Full Auto.
Called whenever a weapon is generated via command or API.
For equipping
Class to generally handle weapon functions
Simple class to handle weapon item serialization a bit differently.
Called when a victim is killed from a
WeaponDamageEntityEvent.This class outlines static utility methods to help developers find functions of WeaponMechanics
wrapped in one place.
Called whenever a melee attack hits.
Called whenever a melee swing misses.
Called after all the
WeaponShootEvents are called.Called before a
WeaponReloadEvent.Called before a
WeaponShootEvent.Called if a reload was cancelled early (Usually because the player swapped hands).
Called when a reload is completed successfully.
Called when a weapon begins to reload.
Called when a weapon scopes in, if the weapon stacks scopes, or if the weapon scopes out.
Event that occurs when a
Player switches between semi-automatic, burst,
and automatic using WeaponMechanic's selective fire feature.This class outlines the event of a weapon launching a projectile.
Called whenever a
SkinHandler attempts to change
the skin of a weapon.