Save_PC_Awaken
This commit is contained in:
parent
540ed7eb55
commit
c62e88327d
|
|
@ -788,6 +788,7 @@ handlers.Save_PC_EquipJob = function(args)
|
|||
Set_JsonUserData(urod);
|
||||
return Get_Return(0);
|
||||
}
|
||||
|
||||
handlers.Save_PC_AwakenLvUp = function(args)
|
||||
{
|
||||
var readonlydata = Get_UserReadOnlyData();
|
||||
|
|
@ -822,6 +823,55 @@ handlers.Save_PC_AwakenLvUp = function(args)
|
|||
else
|
||||
return Get_Return(3);
|
||||
}
|
||||
handlers.Save_PC_Awaken = function(args)
|
||||
{
|
||||
var readonlydata = Get_UserReadOnlyData();
|
||||
var error = Get_Error(readonlydata, args.Token);
|
||||
if (error < 0) return Get_Return(error);
|
||||
|
||||
var urod = Get_JsonUserData(readonlydata);
|
||||
|
||||
var awakenupgradetable = Get_AwakenUpgradeTable();
|
||||
var audata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv);
|
||||
|
||||
// 각성 경험치가 n_MaxUpgradeLevel 보다 같으면 가능
|
||||
if (urod.Awaken[args.AwakenStat].Exp >= audata.n_MaxUpgradeLevel)
|
||||
{
|
||||
// 다음 각성 단계가 있어야 각성 가능
|
||||
var nextaudata = awakenupgradetable.find(f=>f.n_AwakenStep == urod.Awaken[args.AwakenStat].Lv + 1);
|
||||
if (nextaudata)
|
||||
{
|
||||
var matkey = "";
|
||||
switch (args.AwakenStat)
|
||||
{
|
||||
case "STR": matkey = "AWAKEN_GOODS_STR"; break;
|
||||
case "DEX": matkey = "AWAKEN_GOODS_DEX"; break;
|
||||
case "INT": matkey = "AWAKEN_GOODS_INT"; break;
|
||||
case "LUK": matkey = "AWAKEN_GOODS_LUK"; break;
|
||||
}
|
||||
var global = Get_GlobalValueTable();
|
||||
var matdata = global.find(f => f.s_ID == matkey);
|
||||
if (!matdata) return Get_Return(1); // 설정 누락
|
||||
var materialId = matdata.n_Value;
|
||||
|
||||
//log.info("필요한 재화 " + materialId + ", 필요한 갯수 " + audata.n_AwakenGoodsCost);
|
||||
if (Use_Item(Get_MissionTable(), urod, materialId, audata.n_AwakenGoodsCost))
|
||||
{
|
||||
++urod.Awaken[args.AwakenStat].Lv;
|
||||
urod.Awaken[args.AwakenStat].Exp = 0;
|
||||
|
||||
Set_JsonUserData(urod);
|
||||
return Get_Return(0);
|
||||
}
|
||||
else
|
||||
return Get_Return(2);
|
||||
}
|
||||
else
|
||||
return Get_Return(4);
|
||||
}
|
||||
else
|
||||
return Get_Return(3);
|
||||
}
|
||||
/////////////////////////////////// 서버 처리
|
||||
|
||||
handlers.Write_UnityInApp = function(args)
|
||||
|
|
|
|||
|
|
@ -1127,6 +1127,16 @@ public partial class ServerData
|
|||
}
|
||||
break;
|
||||
|
||||
case ePurpose.HERO_AWAKEN_ACC:
|
||||
switch (data.n_MissionConditionValue)
|
||||
{
|
||||
case 1: return Get_AwakenLv(eStat.STR);
|
||||
case 2: return Get_AwakenLv(eStat.DEX);
|
||||
case 3: return Get_AwakenLv(eStat.INT);
|
||||
case 4: return Get_AwakenLv(eStat.LUK);
|
||||
}
|
||||
break;
|
||||
|
||||
case ePurpose.EAT_FRUIT_TYPE_ACC:
|
||||
return Get_EatFruitCount(data.n_MissionConditionValue);
|
||||
case ePurpose.EAT_FRUIT_TYPE_ALL:
|
||||
|
|
|
|||
|
|
@ -1071,6 +1071,7 @@ public class ServerInfo : MyCoroutine
|
|||
Set_Coroutine(() => { Save_PC_EquipJob(jobid, _act); }, 2f);
|
||||
});
|
||||
}
|
||||
|
||||
public void Save_PC_AwakenLvUp(eStat stat, Action _act)
|
||||
{
|
||||
NetWait.Ins.Set(true);
|
||||
|
|
@ -1107,6 +1108,43 @@ public class ServerInfo : MyCoroutine
|
|||
Set_Coroutine(() => { Save_PC_AwakenLvUp(stat, _act); }, 2f);
|
||||
});
|
||||
}
|
||||
public void Save_PC_Awaken(eStat stat, Action _act)
|
||||
{
|
||||
NetWait.Ins.Set(true);
|
||||
PlayFabClientAPI.ExecuteCloudScript(new ExecuteCloudScriptRequest
|
||||
{
|
||||
FunctionName = "Save_PC_Awaken",
|
||||
GeneratePlayStreamEvent = true,
|
||||
FunctionParameter = new
|
||||
{
|
||||
Token = m_LoginInfo.EntityToken.EntityToken,
|
||||
AwakenStat = stat,
|
||||
}
|
||||
},
|
||||
result =>
|
||||
{
|
||||
if (result.Error == null)
|
||||
{
|
||||
NetWait.Ins.Set(false);
|
||||
var error = MyErrorCheck(result.FunctionResult.ToString());
|
||||
// (0 성공, 1 실패(재화 id 없음), 2 실패 (재화 부족), 3, 실패 (각성 레벨 부족), 4 실패 (더 이상 각성 불가))
|
||||
switch (error)
|
||||
{
|
||||
case 0: _act?.Invoke(); break;
|
||||
case 1: ToastUI.Ins.Set(999900005); break;
|
||||
case 2: ToastUI.Ins.Set(388); break;
|
||||
case 3: ToastUI.Ins.Set(263); break;
|
||||
case 4: ToastUI.Ins.Set(999900010); break;
|
||||
}
|
||||
}
|
||||
else
|
||||
Set_Coroutine(() => { Save_PC_Awaken(stat, _act); }, 2f);
|
||||
},
|
||||
fail =>
|
||||
{
|
||||
Set_Coroutine(() => { Save_PC_Awaken(stat, _act); }, 2f);
|
||||
});
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 우편
|
||||
|
|
|
|||
|
|
@ -99,10 +99,12 @@ public class PCAwakenCard : CardBase
|
|||
var moneyid = Get_AwakenMoneyID();
|
||||
if (sdata.Check_ItemAmount(moneyid, m_AwakenUpgradeTableData.n_AwakenGoodsCost))
|
||||
{
|
||||
sdata.Use_Item(moneyid, m_AwakenUpgradeTableData.n_AwakenGoodsCost);
|
||||
sdata.Add_AwakenLv(m_Stat);
|
||||
Set_UI();
|
||||
sdata.Add_MissionCount(ePurpose.HERO_AWAKEN_ACC, Get_AwakenMissionID());
|
||||
ServerInfo.Ins.Save_PC_Awaken(m_Stat, () =>
|
||||
{
|
||||
sdata.Use_Item(moneyid, m_AwakenUpgradeTableData.n_AwakenGoodsCost);
|
||||
sdata.Add_AwakenLv(m_Stat);
|
||||
Set_UI();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue