Class RangedTurret
java.lang.Object
org.kingdoms.constants.metadata.KingdomsObject<SimpleLocation>
org.kingdoms.constants.land.abstraction.KingdomItem<TurretStyle>
org.kingdoms.constants.land.turrets.Turret
org.kingdoms.constants.land.turrets.objects.RangedTurret
- All Implemented Interfaces:
org.kingdoms.abstraction.LandOperator,org.kingdoms.abstraction.PlayerOperator
- Direct Known Subclasses:
SoldierTurret,TargetedRangedTurret
-
Field Summary
FieldsFields inherited from class org.kingdoms.constants.land.abstraction.KingdomItem
level, location, styleFields inherited from class org.kingdoms.constants.metadata.KingdomsObject
metadata -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintaddAmmo(int amount) booleancanPassThrough(Kingdom kingdom) booleancheckup()intgetAmmo()intgetAmmoCost(Kingdom kingdom) TickedCache<Collection<org.bukkit.entity.Entity>>intThe cooldown between each shot (depending on the turret's update ticks which is a configurable option.)intgetCooldown(Kingdom kingdom) intgetCooldown(Kingdom kingdom, int lvl) intgetMaxAmmo(Kingdom kingdom) intgetMaxAmmo(Kingdom kingdom, int lvl) intgetMaxTargets(Kingdom kingdom) intgetMaxTargets(Kingdom kingdom, int lvl) org.bukkit.entity.Player@Nullable KingdomPlayerorg.bukkit.entity.EntityTypedoubledoubledoublegetRangeCached(Kingdom kingdom) doubledoublePair<org.bukkit.inventory.ItemStack,NBTTagCompound> getTags()inthashCode()voidbooleanisManual()booleanintpassThroughLevel(Kingdom kingdom) voidpostActivation(Kingdom kingdom) remove(org.kingdoms.events.items.KingdomItemRemoveContext context) voidrepeatedParticle(Turret turret, org.bukkit.entity.Entity entity) voidserialize(SerializationContext<org.kingdoms.data.database.dataprovider.SectionableDataSetter> context) voidsetAmmo(int ammo) voidsetCooldown(int cooldown) voidvoidsetManual(boolean manual) protected static voidsetMetadata(org.bukkit.entity.Entity entity, RangedTurret turret, Kingdom kingdom) voidsetOperator(org.bukkit.entity.Player operator) org.bukkit.entity.EntityshootEntity(org.bukkit.entity.EntityType type, Kingdom kingdom, org.bukkit.Location from, org.bukkit.util.Vector direction) booleantargetCheckup(org.bukkit.entity.LivingEntity target) inttick()Methods inherited from class org.kingdoms.constants.land.turrets.Turret
activate, applyKnockback, canDetectInvisible, canSetOnFire, canTargetEntityType, chooseDeathMessage, damage, getArmorDamage, getArmorDamage, getDamage, getDamage, getDeathMessages, getEffects, getKnockback, getKnockback, getLastActivation, getParticle, getVerticalKnockback, invisibilityDetectionLevel, place, remove, removeData, setLastActivation, setOnFireLevelMethods inherited from class org.kingdoms.constants.land.abstraction.KingdomItem
displayParticle, displayParticle, dropItem, equals, eval, eval, getBlock, getCompressedData, getContext, getDataKey, getEdits, getHolograms, getItem, getLand, getLevel, getLocation, getMaxLevel, getStyle, getUpgradeCost, ofSection, ofSection, ofSection, playSound, playSound, remove, removeHolograms, removeHolograms, round, setHolograms, setLevel, spawnHolograms, spawnHolograms, updateHolograms, upgradeMethods inherited from class org.kingdoms.constants.metadata.KingdomsObject
compressBoolean, compressCollecton, compressCollecton, compressColor, compressInventory, compressLocation, compressLocation, compressMap, compressMetadata, compressString, compressUUID, getMetadata, getSaveMeta, setMetadata, setSaveMeta, shouldSave
-
Field Details
-
ORIGIN_METADATA
- See Also:
-
ORIGIN_KINGDOM
- See Also:
-
-
Constructor Details
-
RangedTurret
-
-
Method Details
-
invalidateCachedTargets
public void invalidateCachedTargets() -
getCachedTargets
-
getAmmo
public int getAmmo() -
setAmmo
public void setAmmo(int ammo) -
postActivation
-
isOutOfAmmo
public boolean isOutOfAmmo() -
addAmmo
public int addAmmo(int amount) -
hashCode
public int hashCode()- Overrides:
hashCodein classKingdomItem<TurretStyle>
-
getProjectile
public org.bukkit.entity.EntityType getProjectile() -
getSpeed
-
getSpeed
-
checkup
public boolean checkup() -
passThroughLevel
-
canPassThrough
-
targetCheckup
public boolean targetCheckup(org.bukkit.entity.LivingEntity target) - Overrides:
targetCheckupin classTurret
-
getTags
- Overrides:
getTagsin classKingdomItem<TurretStyle>
-
setDataFromNBT
- Overrides:
setDataFromNBTin classKingdomItem<TurretStyle>
-
setOperator
public void setOperator(org.bukkit.entity.Player operator) -
getOperator
public org.bukkit.entity.Player getOperator() -
getEdits
-
remove
- Overrides:
removein classKingdomItem<TurretStyle>
-
getRange
-
getRange
-
getRangeCached
-
getCooldown
-
getCooldown
-
getAmmoCost
-
getMaxAmmo
-
getMaxAmmo
-
getMaxTargets
-
getMaxTargets
-
getCooldown
public int getCooldown()The cooldown between each shot (depending on the turret's update ticks which is a configurable option.)- Returns:
- a positive number if the turret is still in cooldown or a negative number depending on the ticks past the normal cooldown (how long the turret didn't shoot since the cooldown ended.)
-
setCooldown
public void setCooldown(int cooldown) -
tick
public int tick() -
serialize
public void serialize(SerializationContext<org.kingdoms.data.database.dataprovider.SectionableDataSetter> context) - Overrides:
serializein classKingdomItem<TurretStyle>
-
shootEntity
public org.bukkit.entity.Entity shootEntity(org.bukkit.entity.EntityType type, Kingdom kingdom, org.bukkit.Location from, org.bukkit.util.Vector direction) -
setMetadata
protected static void setMetadata(org.bukkit.entity.Entity entity, RangedTurret turret, Kingdom kingdom) -
repeatedParticle
-
isManual
public boolean isManual() -
setManual
public void setManual(boolean manual) -
getPlayer
- Specified by:
getPlayerin interfaceorg.kingdoms.abstraction.PlayerOperator
-