Class AuthManager

All Implemented Interfaces:
Disposable, Manager

  • Field Details

    • lastStateUpdateTimestamp

      public int lastStateUpdateTimestamp
    • localXpPlayedLevels

      public Array<String> localXpPlayedLevels
    • gameUpdateNotificationShown

      public boolean gameUpdateNotificationShown
  • Constructor Details

    • AuthManager

      public AuthManager()
  • Method Details

    • getSessionData

      public SP_Auth.SessionData getSessionData()
    • isPasswordSet

      public boolean isPasswordSet()
    • getEmailHint

      public String getEmailHint()
    • getSteamAccountId

      @Null public String getSteamAccountId()
    • setup

      public void setup()
      Description copied from interface: Manager
      Called when all manager objects are already created and can be accessed
      Specified by:
      setup in interface Manager
      Overrides:
      setup in class Manager.ManagerWithListeners<AuthManager.AuthManagerListener>
    • hasUnsavedProgressForCloud

      public boolean hasUnsavedProgressForCloud()
    • notifyNeedCloudSave

      public void notifyNeedCloudSave(boolean needSave)
    • getProfileLevelTextures

      public Array<TextureRegionConfig> getProfileLevelTextures(int level)
    • anyRequestRunning

      public boolean anyRequestRunning()
    • queueRequest

      public void queueRequest(AuthManager.HttpQueuedRequest request)
    • reloadPlayerId

      public void reloadPlayerId()
    • getInviteCode

      @Null public String getInviteCode()
      Может быть null в оффлайне
    • getInvitedById

      @Null public String getInvitedById()
    • getPlayerIdCached

      public String getPlayerIdCached()
    • getPlayerId

      public String getPlayerId()
    • isSignedIn

      public boolean isSignedIn()
      Returns:
      true, если вошел в учетку (офлайн или онлайн)
    • getSessionId

      @Null public String getSessionId()
    • getCloudSaveSlotId

      public int getCloudSaveSlotId()
      Returns:
      ID облачного сохранения или -1, если не установлено
    • getCloudSaveSlotTimestamp

      public int getCloudSaveSlotTimestamp()
      Returns:
      timestamp последней синхронизации сохранения или -1, если не установлено
    • getProgressOwnerPlayerId

      @Null public String getProgressOwnerPlayerId()
    • getProgressOwnerPlayerNickname

      @Null public String getProgressOwnerPlayerNickname()
    • signInWithSteam

      public void signInWithSteam(ObjectConsumer<AuthManager.SignInResponse> callback)
    • signInWithGoogle

      public void signInWithGoogle(String token, ObjectConsumer<AuthManager.GoogleSignInResult> callback)
    • postRender

      public void postRender(float deltaTime)
      Description copied from interface: Manager
      Called after screens and systems are drawn
      Specified by:
      postRender in interface Manager
      Overrides:
      postRender in class Manager.ManagerWithListeners<AuthManager.AuthManagerListener>
    • loadStateFromServer

      public void loadStateFromServer(@Null String sessionId, @Null Runnable callback)
      Получить и кэшировать данные сессии (nickname, playerid, данные последнего сохранения) Вызывается при запуске игры и при открытии меню аккаунта
      Parameters:
      sessionId - может быть null, в таком случае загрузится из preferences
      callback - может быть null
    • getLastLoadFromCloudTimestamp

      public long getLastLoadFromCloudTimestamp()
    • onSteamAuthFinished

      public void onSteamAuthFinished()
    • signOut

      public void signOut()
    • clearLocalSessionData

      public void clearLocalSessionData()
    • fallBackToOfflineCache

      public void fallBackToOfflineCache()
      Если есть кэшированные данные в references, будут использоваться они. Если нет, статус будет NOT_SIGNED_IN
    • addProfileStatusLocal

      public void addProfileStatusLocal(String reason, String statusId, int expiresIn)
      Store profile status locally and store it into local fallback. Should be normally synchronized with the account before calling this method.
      Parameters:
      reason - reason key like "type|data"
      expiresIn - -1 for permanent
    • checkIncorrectSessionIdApiResponse

      public static boolean checkIncorrectSessionIdApiResponse(JsonValue json)
      Returns:
      true if response passed
    • isProfileStatusActive

      public boolean isProfileStatusActive(String statusId)
    • getMaxCloudSaveSlots

      public int getMaxCloudSaveSlots()
    • linkSteamAccount

      public void linkSteamAccount(ObjectConsumer<Boolean> cb)
    • getSignInStatus

      public AuthManager.SignInStatus getSignInStatus()
    • getNickname

      public String getNickname()
    • getAvatar

      public TextureRegion getAvatar(int size)
    • getAvatarWebUrl

      public String getAvatarWebUrl(String playerid, int size)
    • linkAccountStatus

      public void linkAccountStatus(String dataJson, ObjectConsumer<String> cb)
      Parameters:
      cb - receives error message or null on success
    • backupProgressToServer

      public void backupProgressToServer()
    • saveGameToServer

      public void saveGameToServer(int slotId, ObjectConsumer<AuthManager.SaveGameResult> callback)
      Сохранить прогресс игры на сервере, если онлайн
    • deleteGameFromServer

      public void deleteGameFromServer(int slotId, ObjectConsumer<Boolean> callback)
    • loadSavedGameFromServer

      public void loadSavedGameFromServer(int slotId)
    • handleAutoSave

      public void handleAutoSave()
    • requestNicknameChange

      public void requestNicknameChange(String newNickname, ObjectConsumer<Boolean> cb)
    • createPasteBin

      public void createPasteBin(String description, String contents, ObjectConsumer<AuthManager.PasteBinResponse> cb)
    • resetPassword

      public void resetPassword(String emailOrNickname, ObjectConsumer<AuthManager.PasswordResetResult> callback)
    • setPassword

      public void setPassword(String newPassword, ObjectConsumer<Boolean> callback)
    • confirmEmail

      public void confirmEmail(ObjectConsumer<AuthManager.ConfirmEmailResult> callback)
    • signUpWithSteam

      public void signUpWithSteam(String nickname, String email, String inviteCode, ObjectConsumer<AuthManager.SignUpResult> callback)
    • signInEnterOTP

      public void signInEnterOTP(String otpCode, String otpRequestId, ObjectConsumer<ObjectPair<Boolean,String>> callback)
      Parameters:
      callback - receives a pair of [success, errorMessage], errorMessage can be null
    • signInShowOtpForm

      public void signInShowOtpForm(String otpRequestId, String nickname, ObjectConsumer<AuthManager.SignInResponse> callback)
      Parameters:
      callback - receives success or other_error
    • signIn

      public void signIn(String login, String password, ObjectConsumer<AuthManager.SignInResponse> callback)
      Parameters:
      callback - может быть null
    • getCloudSavedGamesList

      public void getCloudSavedGamesList(ObjectConsumer<JsonValue> callback)
      Parameters:
      callback - получит null, если не получилось
    • setAutoSavesEnabled

      public void setAutoSavesEnabled(boolean enabled)
    • isAutoSavesEnabled

      public boolean isAutoSavesEnabled()
    • signUp

      public void signUp(String nickname, String password, String email, String inviteCode, ObjectConsumer<AuthManager.SignUpResult> callback)
    • signUpWithGoogle

      public void signUpWithGoogle(String nickname, String inviteCode, ObjectConsumer<AuthManager.SignUpResult> callback)
    • getNews

      public void getNews(ObjectConsumer<AuthManager.NewsResponse> retriever)
    • receiveIssuedItemsFromServer

      public void receiveIssuedItemsFromServer(ObjectConsumer<AuthManager.ReceivedIssuedItemsResponse> retriever)