Package com.prineside.tdi2.systems
Class TowerSystem
java.lang.Object
com.prineside.tdi2.Registrable
com.prineside.tdi2.GameSystem
com.prineside.tdi2.systems.TowerSystem
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable,com.esotericsoftware.kryo.KryoSerializable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classstatic classstatic interface -
Field Summary
FieldsModifier and TypeFieldDescriptionboolean[][]float[][]com.badlogic.gdx.utils.DelayedRemovalArray<Tower>Fields inherited from class com.prineside.tdi2.Registrable
S -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfloataddExperienceBuffed(Tower tower, float exp) Добавить опыт + бонусыvoidaddExperienceRaw(Tower tower, float exp) Дать опыт без учета бонусовfloataddExperienceToMatchLevel(Tower tower, int level) Добавить столько опыта, чтобы у башни был уровень минимум levelbooleanvoidapplyDrawInterpolation(float interpolatedTime) buildTower(TowerType towerType, Tower.AimStrategy aimStrategy, int x, int y) buildTower(TowerType towerType, Tower.AimStrategy aimStrategy, int x, int y, boolean ignorePrice) Строит башню сразу.voidbuildTowerAction(TowerType towerType) voidbuildTowerAction(TowerType towerType, Tower.AimStrategy aimStrategy) voidbuildTowerAction(TowerType towerType, Tower.AimStrategy aimStrategy, int x, int y) voidcustomTowerButtonAction(int x, int y, int mapX, int mapY) voidcustomTowerButtonAction(Tower tower, int mapX, int mapY) voiddispose()Releases all resources of this object.voiddrawBatch(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) voiddrawBatchAdditive(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) voiddrawWeapons(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) intgetBaseUpgradePrice(Tower tower, int toLevel) intgetGlobalUpgradePrice(TowerType towerType) floatgetMaxPossibleStat(TowerStatType statType) intgetUpgradePrice(Tower tower) voidbooleanisRegistered(Tower tower) voidnotifyTowerExperienceChanged(Tower tower, float delta) voidnotifyTowerLeveledUp(Tower tower) voidПроизвести окончательную настройку системы.voidvoidread(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) floatremoveExperienceRaw(Tower tower, float exp) voidselectGlobalTowerAbilityAction(int x, int y, int abilityIdx) voidselectGlobalTowerAbilityAction(Tower tower, int abilityIdx) voidselectTowerAbilityAction(int x, int y, int abilityIdx) voidselectTowerAbilityAction(Tower tower, int abilityIdx) booleanvoidsellTowerAction(Tower tower) voidsetAbilityInstalled(Tower tower, int abilityIdx, boolean installed) voidsetDefaultAimStrategy(Tower.AimStrategy strategy) voidsetTowerAimStrategy(Tower tower, Tower.AimStrategy toStrategy) voidsetTowerAimStrategyAction(Tower tower, Tower.AimStrategy toStrategy) voidsetup()Произвести начальную настройку системы.voidupdate(float deltaTime) booleanupgradeTower(Tower tower) Мгновенно улучшить башню, если это возможно.voidupgradeTowerAction(int x, int y) voidupgradeTowerAction(Tower tower) voidwrite(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) Methods inherited from class com.prineside.tdi2.GameSystem
getFastStateHash, profileUpdateMethods inherited from class com.prineside.tdi2.Registrable
isRegistered, setRegistered, setUnregistered
-
Field Details
-
canTowerAttackEnemy
public boolean[][] canTowerAttackEnemy -
towerEnemyDamageMultiplier
public float[][] towerEnemyDamageMultiplier -
towers
-
listeners
-
-
Constructor Details
-
TowerSystem
public TowerSystem()
-
-
Method Details
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
writein interfacecom.esotericsoftware.kryo.KryoSerializable- Overrides:
writein classRegistrable
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
readin interfacecom.esotericsoftware.kryo.KryoSerializable- Overrides:
readin classRegistrable
-
affectsGameState
public boolean affectsGameState()- Specified by:
affectsGameStatein classGameSystem
-
setup
public void setup()Description copied from class:GameSystemПроизвести начальную настройку системы. На момент вызова этого метода, systemProvider содержит объекты всех систем.- Overrides:
setupin classGameSystem
-
postSetup
public void postSetup()Description copied from class:GameSystemПроизвести окончательную настройку системы. Во время вызова, все системы загружены и установлены (setup()), все слушатели добавлены- Overrides:
postSetupin classGameSystem
-
postStateRestore
public void postStateRestore()- Overrides:
postStateRestorein classGameSystem
-
isRegistered
-
getMaxPossibleStat
-
getDefaultAimStrategy
-
setDefaultAimStrategy
-
selectTowerAbilityAction
-
selectGlobalTowerAbilityAction
-
customTowerButtonAction
-
customTowerButtonAction
public void customTowerButtonAction(int x, int y, int mapX, int mapY) -
selectTowerAbilityAction
public void selectTowerAbilityAction(int x, int y, int abilityIdx) -
selectGlobalTowerAbilityAction
public void selectGlobalTowerAbilityAction(int x, int y, int abilityIdx) -
setAbilityInstalled
-
buildTowerAction
-
buildTowerAction
-
buildTowerAction
-
buildTower
-
buildTower
public Tower buildTower(TowerType towerType, Tower.AimStrategy aimStrategy, int x, int y, boolean ignorePrice) Строит башню сразу. Чтобы не угробить синхронизацию, этот метод не должен вызываться от времени / действий игрока. -
upgradeTowerAction
-
upgradeTowerAction
public void upgradeTowerAction(int x, int y) -
globalUpgradeTowerAction
-
upgradeTower
Мгновенно улучшить башню, если это возможно. Будут отняты монеты. -
sellTowerAction
-
sellTower
-
setTowerAimStrategyAction
-
setTowerAimStrategy
-
getUpgradePrice
-
getBaseUpgradePrice
-
getGlobalUpgradePrice
-
update
public void update(float deltaTime) - Overrides:
updatein classGameSystem
-
getSystemName
- Specified by:
getSystemNamein classGameSystem
-
drawBatch
public void drawBatch(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) -
drawBatchAdditive
public void drawBatchAdditive(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) -
applyDrawInterpolation
public void applyDrawInterpolation(float interpolatedTime) -
drawWeapons
public void drawWeapons(com.badlogic.gdx.graphics.g2d.Batch batch, float deltaTime) -
addExperienceRaw
Дать опыт без учета бонусов -
addExperienceBuffed
Добавить опыт + бонусы- Parameters:
exp- опыт без бонусов
-
removeExperienceRaw
- Returns:
- количество опыта, которое было отнято (будет меньше exp, если уменьшение опыта приведет к уменьшению уровня)
-
addExperienceToMatchLevel
Добавить столько опыта, чтобы у башни был уровень минимум level- Parameters:
tower- башня, которой нужно добавить опытlevel- уровень- Returns:
- кол-во добавленного опыта
-
notifyTowerExperienceChanged
-
notifyTowerLeveledUp
-
dispose
public void dispose()Description copied from interface:com.badlogic.gdx.utils.DisposableReleases all resources of this object.- Specified by:
disposein interfacecom.badlogic.gdx.utils.Disposable- Overrides:
disposein classGameSystem
-