diff --git a/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js b/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js index 8a113198c..b40680750 100644 --- a/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js +++ b/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js @@ -76,16 +76,12 @@ handlers.aaTest = function(args) log.info('no cash buy'); */ - /* // 타이틀 Id 찾는 법 // currentPlayerId == master Id // playerprofile.TitlePlayerAccounts[currentPlayerId].Id == title Id (★) - var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); - var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; - - // 순위표 v2 지우는 법 - progression.DeleteLeaderboardEntries({ Name: "Rank_Maze", EntityIds: [titleId]}); - */ + //var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); + //var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; + //log.info("titleId : " + titleId); } // 에러 정리 : 0 정상, 1 채팅 금지 유저, 2 서버 점검, 3 잘못된 우편을 @@ -119,13 +115,9 @@ handlers.Send_Mail = function(args) function Add_Mail(args) { var makemail = {}; - //makemail.Seq = dt.getFullYear() + '-' + dt.getMonth().toString().padStart(2,'0') + '-' + dt.getDate().toString().padStart(2,'0') + '_' + - // dt.getHours().toString().padStart(2,'0') + ':' + dt.getMinutes().toString().padStart(2,'0') + ':' + dt.getSeconds().toString().padStart(2,'0'); - makemail.Reward = args.Reward; - makemail.RewardAmount = args.RewardAmount; - makemail.ID = CheckNullOrEmpty(args.ID) ? 0 : args.ID; + makemail.ItemID = args.ItemID; + makemail.Amount = args.Amount; makemail.Msg = args.Msg; - makemail.IsShopItem = CheckNullOrEmpty(args.IsShopItem) ? 0 : args.IsShopItem; var day = CheckNullOrEmpty(args.Day) ? 3 : args.Day; var dt = Get_CurKoreaTime(); @@ -480,14 +472,33 @@ handlers.Del_TitlePlayer = function(args) -handlers.Set_BestStageRank = function(args) +handlers.Rank_Reward = function(args) { - server.UpdatePlayerStatistics({PlayFabId: currentPlayerId, Statistics : [ + // 현재 버전 확인 + var cur = progression.GetLeaderboardDefinition({ Name: args.LeaderboardName }); + //log.info("현재 버전 : " + cur.Version); + + var playerprofile = entity.GetTitlePlayersFromMasterPlayerAccountIds({ MasterPlayerAccountIds: [currentPlayerId]}); + var titleId = playerprofile.TitlePlayerAccounts[currentPlayerId].Id; + + // 이전 버전에서 내 순위 확인 + var a = progression.GetLeaderboardAroundEntity({ LeaderboardName: args.LeaderboardName, MaxSurroundingEntries: 1, + Version: cur.Version - 1, Entity: { Id : titleId, Type: "title_player_account" } }); + for ( var i in a.Rankings ) + { + //log.info("ranker id : " + a.Rankings[i].Entity.Id); + if(a.Rankings[i].Entity.Id == titleId) { - "StatisticName": "Best Stage", - "Value": args.Stage + //log.info("나의 랭킹 : " + a.Rankings[i].Rank); + var maildata = {}; + maildata.Day = 7; + maildata.ItemID = 1; + maildata.Amount = 10; // TOOD 정인호 : 순위에 따라 지급 + maildata.Msg = args.Msg.replace("{0}", a.Rankings[i].Rank); + Add_Mail(maildata); + break; } - ]}); + } } handlers.Send_Cheat = function()