예제 #1
0
        public static void SetPlayerName(PlayerNameRequest data, Action <PlayerNameResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.setPlayerName;
            string        json     = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            string getVariable = endPoint.endPoint;

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, json, (Action <LootLockerResponse>)((serverResponse) =>
            {
                PlayerNameResponse response = new PlayerNameResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <PlayerNameResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text       = serverResponse.text;
                response.success    = serverResponse.success;
                response.Error      = serverResponse.Error;
                response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }), true);
        }
예제 #2
0
        public static void GettingASingleEvent(LootLockerGetRequest data, Action <LootLockerSingleEventResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.gettingASingleEvent;

            string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerSingleEventResponse response = new LootLockerSingleEventResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response      = JsonConvert.DeserializeObject <LootLockerSingleEventResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.text    = serverResponse.text;
                    response.success = serverResponse.success;
                    response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #3
0
        public static void GetSingleKeyPersistentStorage(LootLockerGetRequest data, Action <LootLockerGetPersistentSingle> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.current.getSingleKeyFromPersitenctStorage;

            string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerGetPersistentSingle response = new LootLockerGetPersistentSingle();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response         = JsonConvert.DeserializeObject <LootLockerGetPersistentSingle>(serverResponse.text);
                    response.text    = serverResponse.text;
                    response.success = true;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.text    = serverResponse.text;
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #4
0
        public static void ComputeAndLockDropTable(int tableInstanceId, Action <LootLockerComputeAndLockDropTableResponse> onComplete, bool AddAssetDetails = false, string tag = "")
        {
            EndPointClass requestEndPoint = LootLockerEndPoints.ComputeAndLockDropTable;

            string endPoint = string.Format(requestEndPoint.endPoint, tableInstanceId, AddAssetDetails.ToString().ToLower());

            if (!string.IsNullOrEmpty(tag))
            {
                string tempEndpoint = $"&tag={tag}";
                endPoint += tempEndpoint;
            }

            LootLockerServerRequest.CallAPI(endPoint, requestEndPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerComputeAndLockDropTableResponse response = new LootLockerComputeAndLockDropTableResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerComputeAndLockDropTableResponse>(serverResponse.text);
                }

                // LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, useAuthToken: true, callerRole: LootLocker.LootLockerEnums.LootLockerCallerRole.User);
        }
예제 #5
0
        public static void TriggeringAnEvent(LootLockerTriggerAnEventRequest data, Action <LootLockerTriggerAnEventResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.triggeringAnEvent;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerTriggerAnEventResponse response = new LootLockerTriggerAnEventResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response      = JsonConvert.DeserializeObject <LootLockerTriggerAnEventResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #6
0
        public static void UpdateOrCreateKeyValue(LootLockerGetPersistentStoragRequest data, Action <LootLockerGetPersistentStoragResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.updateOrCreateKeyValue;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, onComplete: (serverResponse) =>
            {
                LootLockerGetPersistentStoragResponse response = new LootLockerGetPersistentStoragResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response      = JsonConvert.DeserializeObject <LootLockerGetPersistentStoragResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.text    = serverResponse.text;
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #7
0
        public static void OpenALootBox(LootLockerGetRequest data, Action <LootLockerOpenLootBoxResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.current.deleteKeyValuePair;

            string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerOpenLootBoxResponse response = new LootLockerOpenLootBoxResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response      = JsonConvert.DeserializeObject <LootLockerOpenLootBoxResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.text    = serverResponse.text;
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #8
0
        public static void FinishingEvent(LootLockerGetRequest lootLockerGetRequest, FinishEventRequest data, Action <LootLockerFinishEventResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.finishingEvent;

            string getVariable = string.Format(endPoint.endPoint, lootLockerGetRequest.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerFinishEventResponse response = new LootLockerFinishEventResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response      = JsonConvert.DeserializeObject <LootLockerFinishEventResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #9
0
        public static void GettingAllEvents(Action <LootLockerEventResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.current.gettingAllEvents;

            string getVariable = endPoint.endPoint;

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerEventResponse response = new LootLockerEventResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response      = JsonConvert.DeserializeObject <LootLockerEventResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    response.text    = serverResponse.text;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
        public static void CreatingAnAssetCandidate(LootLockerCreatingOrUpdatingAnAssetCandidateRequest data, Action <LootLockerUserGenerateContentResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.creatingAnAssetCandidate;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerUserGenerateContentResponse response = new LootLockerUserGenerateContentResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerUserGenerateContentResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true, LootLocker.LootLockerEnums.LootLockerCallerRole.User);
        }
예제 #11
0
        public static void EquipGlobalAssetToCharacter(LootLockerGetRequest lootLockerGetRequest, LootLockerEquipByAssetRequest data, Action <EquipAssetToCharacterLoadoutResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.equipGlobalAssetToCharacter;

            string getVariable = string.Format(endPoint.endPoint, lootLockerGetRequest.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, json, (serverResponse) =>
            {
                EquipAssetToCharacterLoadoutResponse response = new EquipAssetToCharacterLoadoutResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <EquipAssetToCharacterLoadoutResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
예제 #12
0
        public static void EquipGlobalAssetToDefaultCharacter(LootLockerEquipByAssetRequest data, Action <LootLockerCharacterLoadoutResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.equipGlobalAssetToDefaultCharacter;

            string getVariable = endPoint.endPoint;

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerCharacterLoadoutResponse response = new LootLockerCharacterLoadoutResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response      = JsonConvert.DeserializeObject <LootLockerCharacterLoadoutResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #13
0
        public static void UpdateKeyValuePairById(LootLockerGetRequest lootLockerGetRequest, LootLockerCreateKeyValuePairRequest data, Action <LootLockerAssetDefaultResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.updateKeyValuePairById;
            string        json     = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            string getVariable = string.Format(endPoint.endPoint, lootLockerGetRequest.getRequests[0], lootLockerGetRequest.getRequests[1]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, json, onComplete: (serverResponse) =>
            {
                LootLockerAssetDefaultResponse response = new LootLockerAssetDefaultResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerAssetDefaultResponse>(serverResponse.text);
                }

                //  LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
예제 #14
0
        public static void GetScoreList(LootLockerGetScoreListRequest getRequests, Action <LootLockerGetScoreListResponse> onComplete)
        {
            EndPointClass requestEndPoint = LootLockerEndPoints.getScoreList;

            string tempEndpoint = requestEndPoint.endPoint;
            string endPoint     = string.Format(requestEndPoint.endPoint, getRequests.leaderboardId, getRequests.count);

            if (!string.IsNullOrEmpty(getRequests.after))
            {
                tempEndpoint = requestEndPoint.endPoint + "&after={2}";
                endPoint     = string.Format(tempEndpoint, getRequests.leaderboardId, getRequests.count, int.Parse(getRequests.after));
            }

            LootLockerServerRequest.CallAPI(endPoint, requestEndPoint.httpMethod, null, ((serverResponse) =>
            {
                LootLockerGetScoreListResponse response = new LootLockerGetScoreListResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerGetScoreListResponse>(serverResponse.text);
                }

                //   LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text = serverResponse.text;
                response.success = serverResponse.success;
                response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }), true, LootLockerCallerRole.User);
        }
예제 #15
0
        public static void SubmitScore(LootLockerSubmitScoreRequest data, string id, Action <LootLockerSubmitScoreResponse> onComplete)
        {
            EndPointClass requestEndPoint = LootLockerEndPoints.submitScore;
            string        json            = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            string endPoint = string.Format(requestEndPoint.endPoint, id);

            LootLockerServerRequest.CallAPI(endPoint, requestEndPoint.httpMethod, json, onComplete: ((serverResponse) =>
            {
                LootLockerSubmitScoreResponse response = new LootLockerSubmitScoreResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerSubmitScoreResponse>(serverResponse.text);
                }

                // LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text = serverResponse.text;
                response.success = serverResponse.success;
                response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }), useAuthToken: true, callerRole: LootLockerCallerRole.User);
        }
예제 #16
0
        public static void UpdatingAnAssetCandidate(LootLockerCreatingOrUpdatingAnAssetCandidateRequest data, LootLockerGetRequest getRequests, Action <LootLockerUserGenerateContentResponse> onComplete)
        {
            EndPointClass requestEndPoint = LootLockerEndPoints.current.updatingAnAssetCandidate;
            string        json            = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            string endPoint = string.Format(requestEndPoint.endPoint, getRequests.getRequests[0]);

            LootLockerServerRequest.CallAPI(endPoint, requestEndPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerUserGenerateContentResponse response = new LootLockerUserGenerateContentResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response = JsonConvert.DeserializeObject <LootLockerUserGenerateContentResponse>(serverResponse.text);
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true, LootLocker.LootLockerEnums.LootLockerCallerRole.User);
        }
예제 #17
0
        //public static void GetAssetListWithCount(LootLockerGetRequest data, Action<LootLockerAssetResponse> onComplete)
        //{
        //    EndPointClass endPoint = LootLockerEndPoints.gettingAssetListWithCount;

        //    string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

        //    LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
        //       {
        //           LootLockerAssetResponse response = new LootLockerAssetResponse();
        //           if (string.IsNullOrEmpty(serverResponse.Error))
        //           {
        //               response = JsonConvert.DeserializeObject<LootLockerAssetResponse>(serverResponse.text);
        //               if (response != null && response.assets.Length > 0)
        //                   LootLockerAssetRequest.lastId = response.assets.Last()?.id != null ? response.assets.Last().id : 0;
        //           }

        //           //     LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
        //           response.text = serverResponse.text;
        //           response.status = serverResponse.status;
        //           response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
        //           onComplete?.Invoke(response);
        //       }, true);
        //}

        //public static void GetAssetListWithAfterCount(LootLockerAssetRequest data, Action<LootLockerAssetResponse> onComplete)
        //{
        //    EndPointClass endPoint = LootLockerEndPoints.gettingAssetListWithAfterAndCount;

        //    string getVariable = string.Format(endPoint.endPoint, LootLockerAssetRequest.lastId, data.count);

        //    LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
        //    {
        //        LootLockerAssetResponse response = new LootLockerAssetResponse();
        //        if (string.IsNullOrEmpty(serverResponse.Error))
        //        {
        //            response = JsonConvert.DeserializeObject<LootLockerAssetResponse>(serverResponse.text);

        //            if (response != null && response.assets.Length > 0)
        //                LootLockerAssetRequest.lastId = response.assets.Last()?.id != null ? response.assets.Last().id : 0;
        //        }
        //        //     LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
        //        response.text = serverResponse.text;
        //        response.status = serverResponse.status;
        //        response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
        //        onComplete?.Invoke(response);
        //    }, true);
        //}

        public static void GetAssetsById(LootLockerGetRequest data, Action <LootLockerAssetResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.getAssetsById;

            string builtAssets = data.getRequests.First();

            if (data.getRequests.Count > 0)
            {
                for (int i = 1; i < data.getRequests.Count; i++)
                {
                    builtAssets += "," + data.getRequests[i];
                }
            }


            string getVariable = string.Format(endPoint.endPoint, builtAssets);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerAssetResponse response = new LootLockerAssetResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerAssetResponse>(serverResponse.text);
                }

                //     LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
예제 #18
0
        public static void Session(LootLockerGetRequest data, Action <LootLockerSessionResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.authenticationRequest;

            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }
            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerSessionResponse response = new LootLockerSessionResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerSessionResponse>(serverResponse.text);
                    LootLockerConfig.current.UpdateToken(response.session_token, (data as LootLockerSessionRequest)?.player_identifier);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, false);
        }
예제 #19
0
        public static void NintendoSwitchSession(LootLockerNintendoSwitchSessionRequest data, Action <LootLockerSessionResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.nintendoSwitchSessionRequest;

            string json = "";

            if (data == null)
            {
                return;
            }

            json = JsonConvert.SerializeObject(data);
            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerSessionResponse response = new LootLockerSessionResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerSessionResponse>(serverResponse.text);
                    LootLockerConfig.current.UpdateToken(response.session_token, "");
                }

                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, false);
        }
예제 #20
0
        public static void FinishingAMission(LootLockerFinishingAMissionRequest data, Action <LootLockerFinishingAMissionResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass requestEndPoint = LootLockerEndPoints.finishingMission;

            string endPoint = string.Format(requestEndPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(endPoint, requestEndPoint.httpMethod, json, onComplete: (serverResponse) =>
            {
                LootLockerFinishingAMissionResponse response = new LootLockerFinishingAMissionResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerFinishingAMissionResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, useAuthToken: false);
        }
예제 #21
0
        public static void Verify(LootLockerVerifyRequest data, Action <LootLockerVerifyResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.playerVerification;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerVerifyResponse response = new LootLockerVerifyResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response = JsonConvert.DeserializeObject <LootLockerVerifyResponse>(serverResponse.text);
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, false);
        }
예제 #22
0
        public static void GetAssetListWithCount(LootLockerGetRequest data, Action <LootLockerAssetResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.current.gettingAssetListWithCount;

            string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerAssetResponse response = new LootLockerAssetResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    LootLockerSDKManager.DebugMessage(serverResponse.text);
                    response      = JsonConvert.DeserializeObject <LootLockerAssetResponse>(serverResponse.text);
                    response.text = serverResponse.text;
                    if (response != null)
                    {
                        LootLockerAssetRequest.lastId = response.assets.Last()?.id != null ? response.assets.Last().id : 0;
                    }
                    onComplete?.Invoke(response);
                }
                else
                {
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #23
0
        public static void Ping(Action <LootLockerPingResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.ping;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, null, ((serverResponse) =>
            {
                LootLockerPingResponse response = new LootLockerPingResponse();
                if (string.IsNullOrEmpty(serverResponse.Error) && serverResponse.text != null)
                {
                    DefaultContractResolver contractResolver = new DefaultContractResolver
                    {
                        NamingStrategy = new SnakeCaseNamingStrategy()
                    };

                    response = JsonConvert.DeserializeObject <LootLockerPingResponse>(serverResponse.text, new JsonSerializerSettings
                    {
                        ContractResolver = contractResolver,
                        Formatting = Formatting.Indented
                    });

                    if (response == null)
                    {
                        response = LootLockerResponseFactory.Error <LootLockerPingResponse>("error deserializing server response");
                        onComplete?.Invoke(response);
                        return;
                    }
                }

                response.text = serverResponse.text;
                response.success = serverResponse.success;
                response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }));
        }
예제 #24
0
        public static void EndSession(LootLockerGetRequest data, Action <LootLockerSessionResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.endingSession;

            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }
            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerSessionResponse response = new LootLockerSessionResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerSessionResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
예제 #25
0
        public static void CollectingAnItem(LootLockerCollectingAnItemRequest data, Action <LootLockerCollectingAnItemResponse> onComplete)
        {
            string json = "";

            if (data == null)
            {
                return;
            }
            else
            {
                json = JsonConvert.SerializeObject(data);
            }

            EndPointClass endPoint = LootLockerEndPoints.current.collectingAnItem;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, json, (serverResponse) =>
            {
                LootLockerCollectingAnItemResponse response = new LootLockerCollectingAnItemResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerCollectingAnItemResponse>(serverResponse.text);

                    string[] collectableStrings = data.slug.Split('.');

                    string collectable = collectableStrings[0];
                    string group       = collectableStrings[1];
                    string item        = collectableStrings[2];

                    response.mainCollectable = response.collectables?.FirstOrDefault(x => x.name == collectable);

                    response.mainGroup = response.mainCollectable?.groups?.FirstOrDefault(x => x.name == group);

                    response.mainItem = response.mainGroup?.items?.FirstOrDefault(x => x.name == item);

                    response.text = serverResponse.text;

                    onComplete?.Invoke(response);
                }
                else
                {
                    response.text    = serverResponse.text;
                    response.message = serverResponse.message;
                    response.Error   = serverResponse.Error;
                    onComplete?.Invoke(response);
                }
            }, true);
        }
예제 #26
0
        public static void GetContext(Action <LootLockerContextResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.gettingContexts;

            LootLockerServerRequest.CallAPI(endPoint.endPoint, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerContextResponse response = new LootLockerContextResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerContextResponse>(serverResponse.text);
                }

                //     LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
        public static void ListingAssetCandidates(Action <LootLockerListingAssetCandidatesResponse> onComplete)
        {
            EndPointClass requestEndPoint = LootLockerEndPoints.listingAssetCandidates;

            LootLockerServerRequest.CallAPI(requestEndPoint.endPoint, requestEndPoint.httpMethod, onComplete: (serverResponse) =>
            {
                LootLockerListingAssetCandidatesResponse response = new LootLockerListingAssetCandidatesResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerListingAssetCandidatesResponse>(serverResponse.text);
                }

                //LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, useAuthToken: true, callerRole: LootLocker.LootLockerEnums.LootLockerCallerRole.User);
        }
예제 #28
0
        public static void GetMemberRank(LootLockerGetMemberRankRequest data, Action <LootLockerGetMemberRankResponse> onComplete)
        {
            EndPointClass endPoint     = LootLockerEndPoints.getMemberRank;
            string        tempEndpoint = string.Format(endPoint.endPoint, data.leaderboardId, data.member_id);

            LootLockerServerRequest.CallAPI(tempEndpoint, endPoint.httpMethod, null, ((serverResponse) =>
            {
                LootLockerGetMemberRankResponse response = new LootLockerGetMemberRankResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerGetMemberRankResponse>(serverResponse.text);
                }

                //   LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text = serverResponse.text;
                response.success = serverResponse.success;
                response.Error = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }), true, LootLockerCallerRole.User);
        }
예제 #29
0
        public static void RemoveFavouriteAsset(LootLockerGetRequest data, Action <LootLockerAssetResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.removingFavouriteAssets;

            string getVariable = string.Format(endPoint.endPoint, data.getRequests[0]);

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, "", onComplete: (serverResponse) =>
            {
                LootLockerAssetResponse response = new LootLockerAssetResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerAssetResponse>(serverResponse.text);
                }

                // LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }
예제 #30
0
        public static void ListFavouriteAssets(Action <LootLockerFavouritesListResponse> onComplete)
        {
            EndPointClass endPoint = LootLockerEndPoints.listingFavouriteAssets;

            string getVariable = endPoint.endPoint;

            LootLockerServerRequest.CallAPI(getVariable, endPoint.httpMethod, null, onComplete: (serverResponse) =>
            {
                LootLockerFavouritesListResponse response = new LootLockerFavouritesListResponse();
                if (string.IsNullOrEmpty(serverResponse.Error))
                {
                    response = JsonConvert.DeserializeObject <LootLockerFavouritesListResponse>(serverResponse.text);
                }

                //     LootLockerSDKManager.DebugMessage(serverResponse.text, !string.IsNullOrEmpty(serverResponse.Error));
                response.text    = serverResponse.text;
                response.success = serverResponse.success;
                response.Error   = serverResponse.Error; response.statusCode = serverResponse.statusCode;
                onComplete?.Invoke(response);
            }, true);
        }