Package com.prineside.tdi2.towers
Class MinigunTower
java.lang.Object
com.prineside.tdi2.Registrable
com.prineside.tdi2.Building
com.prineside.tdi2.Tower
com.prineside.tdi2.towers.MinigunTower
- All Implemented Interfaces:
KryoSerializable
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class com.prineside.tdi2.Tower
Tower.AbilityConfig, Tower.AimStrategy, Tower.Factory<T extends Tower>, Tower.FindEnemyFilter
-
Field Summary
FieldsFields inherited from class com.prineside.tdi2.Tower
ABILITIES_COUNT, ABILITY_INDEX_POWERFUL, ABILITY_INDEX_SPECIAL, ABILITY_INDEX_ULTIMATE, ABILITY_NAMES, abilityAvailableParticleEffect, affectedByLoopAbility, aimStrategy, angle, attackDisabled, bonusCoinsBrought, bountyModifiersNearby, currentLevelExperience, damageGiven, DPS_STAT_INTERVAL, DPS_STAT_SLOTS, dpsDamage, dpsTime, enemiesKilled, experience, experienceGeneration, experienceMultiplier, id, installedAbilities, level, LEVEL_EXPERIENCE, LEVEL_EXPERIENCE_MILESTONES, loopAbilityDamageBuffer, MAX_LEVEL, MAX_UPGRADE_LEVEL, mdps, minRangeInPixels, moneySpentOn, nextLevelExperience, outOfOrder, powerBonuses, rangeInPixels, SHADOW_COLOR, type
Fields inherited from class com.prineside.tdi2.Building
buildingType
Fields inherited from class com.prineside.tdi2.Registrable
S
-
Method Summary
Modifier and TypeMethodDescriptionvoid
attack
(int shotsCount) float
calculateStat
(TowerStatType towerStatType) boolean
canAim()
boolean
void
void
drawSelectedRange
(Batch batch, RangeCircle rangeCircle) void
fillTowerMenu
(Group container, ObjectMap<String, Object> elements) Добавить / обновить элементы в меню башни Вызывается каждый кадр, когда видно меню башни elements сохраняется между вызовами метода, чтобы не создавать актеров заново.float
int
int
float
float
float
void
void
setBulletsInMagazine
(int v) boolean
void
update
(float deltaTime) void
Обновляет кэш текущих характеристик башни Так как характеристики обновляются, одновременно обновляется массив тайлов в радиусе пораженияvoid
Methods inherited from class com.prineside.tdi2.Tower
addExperience, applyDrawInterpolation, calculateXpLevel, canAbilityBeInstalled, canAttackEnemy, canNewAbilityBeInstalled, cloneBuilding, customButtonAction, dispose, drawAbilitiesToCache, drawBase, drawBatchAdditive, drawGlitch, drawHoveredRange, drawWeapon, findTarget, findTargetFiltered, getEnemyPriority, getExpLevelStatBonusPercentage, getLevel, getLevelExperienceMilestone, getLevelForExperience, getLevelForExperienceFast, getMaxTowerLevel, getMaxUpgradeLevel, getMinRange, getPowerCombinedMultiplier, getRange, getSellPrice, getStartingLevel, getStartingPwr, getStat, getTarget, getUniqueStatDescription, getUpgradeLevel, getWalkCost, hasCustomButton, isAbilityInstalled, isCustomButtonNeedMapPoint, isOutOfOrder, isSellFullRefundStillActive, isStatAffectedByPower, loadFromJson, onAbilitySet, onPreSell, placedOnMap, removedFromMap, rotateAtPoint, rotateToAngle, sameAs, setAimStrategy, setExperience, setLevel, setRegistered, setTarget, setUnregistered, setUpgradeLevel, toJson, updateCustomButton, upgrade, upgradeToLevel
Methods inherited from class com.prineside.tdi2.Registrable
isRegistered
-
Field Details
-
ABILITY_ALIASES
-
muzzleFlashColor
-
-
Method Details
-
write
- Specified by:
write
in interfaceKryoSerializable
- Overrides:
write
in classTower
-
read
- Specified by:
read
in interfaceKryoSerializable
- Overrides:
read
in classTower
-
getWeaponTextures
- Specified by:
getWeaponTextures
in classTower
-
canAim
public boolean canAim() -
shouldSearchForTarget
public boolean shouldSearchForTarget()- Overrides:
shouldSearchForTarget
in classTower
-
getAttackDelay
public float getAttackDelay()- Overrides:
getAttackDelay
in classTower
-
getBulletsInMagazine
public int getBulletsInMagazine()- Returns:
- current amount of bullets in the magazine. If this value is 0, the tower will be forced to reload
-
setBulletsInMagazine
public void setBulletsInMagazine(int v) -
getMagazineSize
public int getMagazineSize()- Returns:
- total size of the magazine. Controlled by the U_MAGAZINE_SIZE tower stat
-
getReloadDuration
public float getReloadDuration()- Returns:
- time it takes to reload the minigun. Set by TOWER_MINIGUN_RELOAD_DURATION GV
-
getTimeSinceLastAttack
public float getTimeSinceLastAttack()- Returns:
- seconds since last attack. If this value is >= getReloadDuration(), the tower will be reloaded immediately and automatically
-
getTimeSinceReloadStart
public float getTimeSinceReloadStart()- Returns:
- seconds till the start of the reload forced by the empty magazine
-
canAttack
public boolean canAttack() -
attack
public void attack(int shotsCount) -
calculateStat
-
updateCache
public void updateCache()Description copied from class:Tower
Обновляет кэш текущих характеристик башни Так как характеристики обновляются, одновременно обновляется массив тайлов в радиусе поражения- Overrides:
updateCache
in classTower
-
update
public void update(float deltaTime) -
drawBatch
-
drawSelectedRange
- Overrides:
drawSelectedRange
in classTower
-
fillTowerMenu
Description copied from class:Tower
Добавить / обновить элементы в меню башни Вызывается каждый кадр, когда видно меню башни elements сохраняется между вызовами метода, чтобы не создавать актеров заново. Если он пустой - значит, вызвали первый раз и надо создать Можно не обновлять ничего, если состояние устраивает (можно хранить любые данные в elements, например хэш состояния или предыдущие значения)- Overrides:
fillTowerMenu
in classTower
-