From f2b5722ed7bc1f3affc6e530ce2493854769b7fe Mon Sep 17 00:00:00 2001 From: Ino Date: Wed, 2 Jul 2025 10:20:28 +0900 Subject: [PATCH] =?UTF-8?q?=EC=84=9C=EB=B2=84=20=EA=B0=81=EC=84=B1=20?= =?UTF-8?q?=EB=A0=88=EB=B2=A8=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Editor/Resources/.CloudScript.js | 91 +++++++++++++------ 1 file changed, 62 insertions(+), 29 deletions(-) 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();