Package com.prineside.tdi2.managers
Class ResearchManager
java.lang.Object
com.prineside.tdi2.Manager.ManagerAdapter
com.prineside.tdi2.managers.ResearchManager
- All Implemented Interfaces:
Disposable
,Manager
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
static interface
static class
static enum
static final class
Nested classes/interfaces inherited from interface com.prineside.tdi2.Manager
Manager.ManagerAdapter, Manager.ManagerWithListeners<T>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
canResearchForToken
(Research research, boolean ignoreRequirements) boolean
canStartResearching
(Research research, boolean ignorePrice) void
checkResearchesStatus
(boolean showNotifications) Проверить статус всех исследований.void
dispose()
Releases all resources of this object.void
Досрочно завершить текущее исследование.int
getCategory
(ResearchCategoryType categoryType) int
getInstalledLevel
(ResearchType researchType) getInstance
(ResearchType researchType) getInstancePreSetup
(ResearchType researchType) Only used during reload(), not safegetLinks()
int
Used to compare old vs new reload() methodsint
int
int
int
int
int
long
long
getResearchingDuration
(Research research) getResearchInstance
(ResearchType researchType) int
int
boolean
hasInstalledParents
(Research research) void
void
void
installRecursiveFree
(int maxResourceIdx) static boolean
isLinkedToRoot
(Research research, IntIntMap installedResearch, ObjectSet<ResearchType> travelled) boolean
isLinkedToRoot
(Research research, ObjectSet<ResearchType> travelled) boolean
isSetUp()
boolean
void
preRender
(float deltaTime) Вызывается перед любыми обновлениями и отрисовками экранов и системvoid
reload()
void
void
boolean
researchForToken
(Research research) void
resetResearchForAccelerators
(Research research) void
void
setInstalledLevel
(ResearchType researchType, int level, boolean notifyListeners) Установить исследование определенного уровня.void
setup()
Вызывается, когда объекты всех менеджеров созданы и можно к ним обращатьсяboolean
startResearching
(Research research, boolean takeItems) Начать новое исследование Возвращает true в случае успеха и false, если начать исследование не удалось.void
test()
Запустить тестирование, чтобы проверить, все ли ресурсы есть (текстуры / i18n) Запускается после загрузки всех менеджеровvoid
tryStartResearching
(Research research, boolean ignorePrice, ResearchManager.StartResearchingException outException) Попытаться начать исследование.void
void
Revert all of the star research that: - are not linked to ROOT - do not fit into the amount of available stars (will be reverted from leaves)Methods inherited from class com.prineside.tdi2.Manager.ManagerAdapter
postRender
-
Field Details
-
TAG
- See Also:
-
MAP_SIZE
public static final int MAP_SIZE- See Also:
-
-
Constructor Details
-
ResearchManager
public ResearchManager()
-
-
Method Details
-
getInstalledLevel
-
isVisible
-
getInstance
-
getInstancePreSetup
Only used during reload(), not safe -
getInstances
-
getLinks
-
getPolygonSprites
-
resetResearchForAccelerators
-
isSetUp
public boolean isSetUp() -
setup
public void setup()Description copied from interface:Manager
Вызывается, когда объекты всех менеджеров созданы и можно к ним обращаться- Specified by:
setup
in interfaceManager
- Overrides:
setup
in classManager.ManagerAdapter
-
installAllResearches
public void installAllResearches() -
installAllEndlessResearches
public void installAllEndlessResearches() -
updateAfforableResearchesCount
public void updateAfforableResearchesCount() -
getAfforableResearchesCount
public int getAfforableResearchesCount() -
isLinkedToRoot
-
isLinkedToRoot
public static boolean isLinkedToRoot(Research research, IntIntMap installedResearch, ObjectSet<ResearchType> travelled) -
updateAndValidateStarBranch
public void updateAndValidateStarBranch()Revert all of the star research that: - are not linked to ROOT - do not fit into the amount of available stars (will be reverted from leaves) -
installRecursiveFree
public void installRecursiveFree(int maxResourceIdx) -
getLoadedConfigHash
public int getLoadedConfigHash()Used to compare old vs new reload() methods -
reloadNew
public void reloadNew() -
getCategory
-
reload
public void reload() -
create3dGraphModel
-
hasInstalledParents
-
checkResearchesStatus
public void checkResearchesStatus(boolean showNotifications) Проверить статус всех исследований. Стоит вызывать, когда любой тип Requirement теоретически может стать выполненным. Используется для автоматической установки исследований без цены но с выполненными условиями. -
preRender
public void preRender(float deltaTime) Description copied from interface:Manager
Вызывается перед любыми обновлениями и отрисовками экранов и систем- Specified by:
preRender
in interfaceManager
- Overrides:
preRender
in classManager.ManagerAdapter
-
getCurrentResearching
- Returns:
- текущее устанавливаемое улучшение или null
-
finishCurrentResearch
public void finishCurrentResearch()Досрочно завершить текущее исследование. -
getMillisToResearchingEnd
public long getMillisToResearchingEnd()- Returns:
- количество миллисекунд до конца текущего исследования
-
canResearchForToken
-
researchForToken
-
startResearching
Начать новое исследование Возвращает true в случае успеха и false, если начать исследование не удалось. Исследование может закончиться сразу, если время равно 0- Parameters:
takeItems
- если true, будут отняты ресурсы / деньги, необходимые для исследования throws StartResearchingException
-
tryStartResearching
public void tryStartResearching(Research research, boolean ignorePrice, ResearchManager.StartResearchingException outException) Попытаться начать исследование. Исследование не начнется, но если какое-то условие не выполнено, бросится исключение. throws StartResearchingException -
resetStarResearches
public void resetStarResearches() -
canStartResearching
-
getResearchingDuration
- Returns:
- время в мс, которое понадобится для установки улучшения
-
addListener
-
removeListener
-
getMapMinX
public int getMapMinX() -
getMapMaxX
public int getMapMaxX() -
getMapMinY
public int getMapMinY() -
getMapMaxY
public int getMapMaxY() -
getMapWidth
public int getMapWidth() -
getMapHeight
public int getMapHeight() -
setInstalledLevel
Установить исследование определенного уровня. Основной метод. -
getResearchInstance
-
getUnusedStarsCount
public int getUnusedStarsCount()- Returns:
- < 0, если установлено больше, чем разрешено
-
getResetStarResearchesAcceleratorPrice
public int getResetStarResearchesAcceleratorPrice() -
test
public void test()Description copied from interface:Manager
Запустить тестирование, чтобы проверить, все ли ресурсы есть (текстуры / i18n) Запускается после загрузки всех менеджеров- Specified by:
test
in interfaceManager
- Overrides:
test
in classManager.ManagerAdapter
-
dispose
public void dispose()Description copied from interface:com.badlogic.gdx.utils.Disposable
Releases all resources of this object.- Specified by:
dispose
in interfaceDisposable
- Overrides:
dispose
in classManager.ManagerAdapter
-