diff --git a/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js b/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js index 1847cf655..f03273a26 100644 --- a/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js +++ b/Assets/PlayFabEditorExtensions/Editor/Resources/.CloudScript.js @@ -484,7 +484,8 @@ handlers.Get_AllMail = function(args) return Get_Return(3); } -handlers.Save_StageResult = function(args) { +handlers.Save_StageResult = function(args) +{ var readonlydata = Get_UserReadOnlyData(); var error = Get_Error(readonlydata, args.Token); if (error < 0) return Get_Return(error); @@ -800,35 +801,26 @@ handlers.Save_PC_AwakenLvUp = function(args) if (!matdata) return Get_Return(1); // 설정 누락 var materialId = matdata.n_Value; - var awakenupgradetable = [ - { - "n_AwakenStep": "1", - "n_MaxUpgradeLevel": "10", - "n_AwakenGoodsCost": "1", - "n_DefaultUpgradeCostValue": "3", - "f_CountPerUpgradeCostValue": "1.5", - "f_BalanceConstant": "0.032" - }, - { - "n_AwakenStep": "2", - "n_MaxUpgradeLevel": "25", - "n_AwakenGoodsCost": "2", - "n_DefaultUpgradeCostValue": "4", - "f_CountPerUpgradeCostValue": "1.5", - "f_BalanceConstant": "0.032" - }, - { - "n_AwakenStep": "3", - "n_MaxUpgradeLevel": "30", - "n_AwakenGoodsCost": "3", - "n_DefaultUpgradeCostValue": "5", - "f_CountPerUpgradeCostValue": "1.5", - "f_BalanceConstant": "0.032" - } - ]; + var awakenupgradetable = Get_AwakenUpgradeTable(); + var audata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv); - Set_JsonUserData(urod); - return Get_Return(0); + // 각성 경험치가 n_MaxUpgradeLevel 보다 작으면 가능 + if (urod.Awaken[args.AwakenStat].Exp < audata.n_MaxUpgradeLevel) + { + var price = Get_K_Value(audata.n_AwakenStep, audata.f_BalanceConstant, audata.n_DefaultUpgradeCostValue, audata.f_CountPerUpgradeCostValue); + log.info("강화 가격 : " + price) + if (Use_Item(Get_MissionTable(), urod, materialId, price)) + { + ++urod.Awaken[args.AwakenStat].Exp; + + Set_JsonUserData(urod); + return Get_Return(0); + } + else + return Get_Return(2); + } + else + return Get_Return(3); } /////////////////////////////////// 서버 처리 @@ -2026,6 +2018,47 @@ function Get_PlayOCoupons() var poc = JSON.parse(server.GetTitleInternalData("PlayO").Data.PlayO); return poc.Coupons; } + + + + + + + + + +function Get_K_Value(lv, balance, defaultval, perlv, abandon = true) { + if (lv <= 0) return 0; + + let val; + if (Math.abs(balance) < 0.000001) { + val = defaultval + lv * perlv; + } else { + val = defaultval + Math.pow(lv * perlv, balance * Math.sqrt(lv)); + } + + val *= 0.0001; + + if (abandon) { + val = Math.floor(val); // 소수점 이하 버림 + } + + return val; +} + + + + + + + + + + + + + + function Get_CurKoreaTime() { var curServerTime = new Date();