Class ProjectileSettings
java.lang.Object
me.deecaad.weaponmechanics.weapon.projectile.weaponprojectile.ProjectileSettings
- All Implemented Interfaces:
Cloneable,me.deecaad.core.file.Serializer<ProjectileSettings>
public class ProjectileSettings
extends Object
implements me.deecaad.core.file.Serializer<ProjectileSettings>, Cloneable
-
Constructor Summary
ConstructorsConstructorDescriptionEmpty constructor to be used as serializerProjectileSettings(org.bukkit.entity.EntityType projectileDisguise, Object disguiseData, double gravity, boolean removeAtMinimumSpeed, double minimumSpeed, boolean removeAtMaximumSpeed, double maximumSpeed, double decrease, double decreaseInWater, double decreaseWhenRainingOrSnowing, boolean disableEntityCollisions, int maximumAliveTicks, double maximumTravelDistance, double size) -
Method Summary
Modifier and TypeMethodDescriptionclone()doubledoubledoubleOnly certain entities need this.doubleintdoubledoubledoubleorg.bukkit.entity.EntityTypedoublegetSize()booleanbooleanbooleanserialize(me.deecaad.core.file.SerializeData data) voidsetDecrease(double decrease) voidsetDecreaseInWater(double decreaseInWater) voidsetDecreaseWhenRainingOrSnowing(double decreaseWhenRainingOrSnowing) voidsetDisableEntityCollisions(boolean disableEntityCollisions) voidsetDisguiseData(Object disguiseData) voidsetGravity(double gravity) voidsetMaximumAliveTicks(int maximumAliveTicks) voidsetMaximumSpeed(double maximumSpeed) voidsetMaximumTravelDistance(double maximumTravelDistance) voidsetMinimumSpeed(double minimumSpeed) voidsetProjectileDisguise(org.bukkit.entity.EntityType projectileDisguise) voidsetRemoveAtMaximumSpeed(boolean removeAtMaximumSpeed) voidsetRemoveAtMinimumSpeed(boolean removeAtMinimumSpeed) voidsetSize(double size) Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface me.deecaad.core.file.Serializer
canUsePathTo, getName, getParentKeywords, getWikiLink, letPassThrough, shouldSerialize, tryPathTo, useLater
-
Constructor Details
-
ProjectileSettings
public ProjectileSettings()Empty constructor to be used as serializer -
ProjectileSettings
public ProjectileSettings(org.bukkit.entity.EntityType projectileDisguise, Object disguiseData, double gravity, boolean removeAtMinimumSpeed, double minimumSpeed, boolean removeAtMaximumSpeed, double maximumSpeed, double decrease, double decreaseInWater, double decreaseWhenRainingOrSnowing, boolean disableEntityCollisions, int maximumAliveTicks, double maximumTravelDistance, double size)
-
-
Method Details
-
getProjectileDisguise
@Nullable public org.bukkit.entity.EntityType getProjectileDisguise()- Returns:
- the entity type this projectile should be disguised as
-
setProjectileDisguise
public void setProjectileDisguise(org.bukkit.entity.EntityType projectileDisguise) -
getDisguiseData
Only certain entities need this. For example falling block, entity item and so on. FALLING_BLOCK -> Material ENTITY_ITEM -> ItemStack FIREWORK -> ItemStack with FireworkMeta- Returns:
- the item stack which may be used when spawning projectile disguise
-
setDisguiseData
-
getGravity
public double getGravity()- Returns:
- gravity of projectile
-
setGravity
public void setGravity(double gravity) -
getMinimumSpeed
public double getMinimumSpeed()- Returns:
- minimum speed of projectile
-
setMinimumSpeed
public void setMinimumSpeed(double minimumSpeed) -
isRemoveAtMinimumSpeed
public boolean isRemoveAtMinimumSpeed()- Returns:
- whether to remove projectile when minimum speed is reached
-
setRemoveAtMinimumSpeed
public void setRemoveAtMinimumSpeed(boolean removeAtMinimumSpeed) -
getMaximumSpeed
public double getMaximumSpeed()- Returns:
- maximum speed of projectile
-
setMaximumSpeed
public void setMaximumSpeed(double maximumSpeed) -
isRemoveAtMaximumSpeed
public boolean isRemoveAtMaximumSpeed()- Returns:
- whether to remove projectile when maximum speed is reached
-
setRemoveAtMaximumSpeed
public void setRemoveAtMaximumSpeed(boolean removeAtMaximumSpeed) -
getDecrease
public double getDecrease()- Returns:
- base speed decreasing
-
setDecrease
public void setDecrease(double decrease) -
getDecreaseInWater
public double getDecreaseInWater()- Returns:
- speed decreasing in water
-
setDecreaseInWater
public void setDecreaseInWater(double decreaseInWater) -
getDecreaseWhenRainingOrSnowing
public double getDecreaseWhenRainingOrSnowing()- Returns:
- speed decreasing when raining or snowing
-
setDecreaseWhenRainingOrSnowing
public void setDecreaseWhenRainingOrSnowing(double decreaseWhenRainingOrSnowing) -
isDisableEntityCollisions
public boolean isDisableEntityCollisions()- Returns:
- whether to skip entity collision checks
-
setDisableEntityCollisions
public void setDisableEntityCollisions(boolean disableEntityCollisions) -
getMaximumAliveTicks
public int getMaximumAliveTicks()- Returns:
- the maximum amount of ticks projectile can be alive
-
setMaximumAliveTicks
public void setMaximumAliveTicks(int maximumAliveTicks) -
getMaximumTravelDistance
public double getMaximumTravelDistance()- Returns:
- the maximum travel distance of projectile, -1 if not used
-
setMaximumTravelDistance
public void setMaximumTravelDistance(double maximumTravelDistance) -
getSize
public double getSize()- Returns:
- the projectile size, 0.1 if not used
-
setSize
public void setSize(double size) -
getKeyword
- Specified by:
getKeywordin interfaceme.deecaad.core.file.Serializer<ProjectileSettings>
-
serialize
@NotNull public ProjectileSettings serialize(@NotNull me.deecaad.core.file.SerializeData data) throws me.deecaad.core.file.SerializerException - Specified by:
serializein interfaceme.deecaad.core.file.Serializer<ProjectileSettings>- Throws:
me.deecaad.core.file.SerializerException
-
clone
-