Save_Mission
This commit is contained in:
parent
f230c541f2
commit
8dd5068428
|
|
@ -24,6 +24,8 @@ public class GetServerTables
|
|||
Get_ServerTable("BattleMapConfig", new List<string> { "s_Scene", "s_BGM", "n_MapName", "n_MapDesc", "s_MapIcon", "n_Portals" });
|
||||
Get_ServerTable("CostumeList", new List<string> { "n_CostumeDesc", "s_Image", "s_Prefab", "exception" });
|
||||
Get_ServerTable("WorkerList", new List<string> { "s_Prefab", "f_Scale", "f_UIScale", "f_MoveSpeed", "f_SeekTimeDelay" });
|
||||
Get_ServerTable("ClassConfig", new List<string> { "s_AnimationController", "s_JobIcon", "s_WeaponLHPrefab", "n_WeaponLHIndex", "s_WeaponRHPrefab", "n_WeaponRHIndex", "e_BattleType", "f_Scale", "f_AttackRange", "f_AttackSPD", "f_MoveSPD", "e_MainStatType", "n_DefaultHP", "n_DefaultMP", "n_ExtraSkill", "n_AcquiredSkill1", "n_AcquiredSkill2", "n_AcquiredSkill3" });
|
||||
Get_ServerTable("BreakingLimit", new List<string> { "f_Monster_DMG_Multiplier", "f_Boss_DMG_Multiplier", "f_ALL_STAT_Multiplier" });
|
||||
}
|
||||
|
||||
static void Get_ServerTable(string path, List<string> except)
|
||||
|
|
|
|||
|
|
@ -347,12 +347,39 @@ function Add_MobCollection(urod, id, count)
|
|||
if (!urod.MobKill[id]) urod.MobKill[id] = 0;
|
||||
urod.MobKill[id] = Add_Amount(urod.MobKill[id], count);
|
||||
}
|
||||
|
||||
function Get_Exp(lv) {
|
||||
var base = (lv * 10) + 21 + (lv * 50);
|
||||
var exp = Math.pow(base, 1.05 + Math.sqrt(lv * 0.0000000001));
|
||||
return Math.max(Math.floor(exp), 0);
|
||||
}
|
||||
function Get_PureStat(urod, stat)
|
||||
{
|
||||
var rtnVale = 0;
|
||||
for (var i = 0; i < urod.PC.Obtain.length; i++)
|
||||
{
|
||||
var classData = Get_ClassConfigTable().find(f=>f.n_ClassID == urod.PC.Obtain[i]);
|
||||
switch (stat)
|
||||
{
|
||||
case 1:
|
||||
rtnVale = Add_Amount(rtnVale, classData.n_DefaultStr);
|
||||
rtnVale = Add_Amount(rtnVale, urod.PC.Stat("STR"));
|
||||
break;
|
||||
case 2:
|
||||
rtnVale = Add_Amount(rtnVale, classData.n_DefaultDex);
|
||||
rtnVale = Add_Amount(rtnVale, urod.PC.Stat("DEX"));
|
||||
break;
|
||||
case 3:
|
||||
rtnVale = Add_Amount(rtnVale, classData.n_DefaultInt);
|
||||
rtnVale = Add_Amount(rtnVale, urod.PC.Stat("INT"));
|
||||
break;
|
||||
case 4:
|
||||
rtnVale = Add_Amount(rtnVale, classData.n_DefaultLuk);
|
||||
rtnVale = Add_Amount(rtnVale, urod.PC.Stat("LUK"));
|
||||
break;
|
||||
}
|
||||
}
|
||||
return rtnVale;
|
||||
}
|
||||
|
||||
handlers.Save_CheatItem = function(args)
|
||||
{
|
||||
|
|
@ -1992,6 +2019,155 @@ handlers.Save_Worker_Buy = function(args)
|
|||
}
|
||||
return Get_Return(1);
|
||||
}
|
||||
|
||||
function Get_MissionCount(urod, data, group, id)
|
||||
{
|
||||
switch (data.e_MissionConditionType)
|
||||
{
|
||||
case "HERO_LEVEL_ACC":
|
||||
return urod.PC.Lv;
|
||||
|
||||
case "CLASS_OPEN_LIMIT":
|
||||
return PC.Obtain[data.n_MissionConditionValue] ? 1 : 0;
|
||||
|
||||
case "CHECK_PLAYTIME":
|
||||
case "CHECK_PLAYTIME_ACC":
|
||||
return urod.Common[6] / 60;
|
||||
|
||||
case "HERO_TRANSCENDENCE_ACC":
|
||||
return urod.PC.LLv;
|
||||
|
||||
case "HERO_BASE_STAT_LIMIT":
|
||||
return Get_PureStat(urod, data.n_MissionConditionValue);
|
||||
|
||||
case "HERO_AWAKEN_ACC":
|
||||
switch (data.n_MissionConditionValue)
|
||||
{
|
||||
case 1: return urod.Awaken["STR"].Lv;
|
||||
case 2: return urod.Awaken["DEX"].Lv;
|
||||
case 3: return urod.Awaken["INT"].Lv;
|
||||
case 4: return urod.Awaken["LUK"].Lv;
|
||||
}
|
||||
break;
|
||||
|
||||
case "HERO_OPTION_CHANGE_SLOT_LIMIT":
|
||||
{
|
||||
var count = 0;
|
||||
var dic = Get_BreakingLimitSlotAndLv();
|
||||
for (var i = 1; i <= 6; i++)
|
||||
if (urod.PC.Lv >= dic[i])
|
||||
++count;
|
||||
return count;
|
||||
}
|
||||
|
||||
case "EAT_FRUIT_TYPE_ACC":
|
||||
{
|
||||
var fruitid = data.n_MissionConditionValue;
|
||||
return urod.Farm?.Eat?.[fruitid] ?? 0;
|
||||
}
|
||||
case "EAT_FRUIT_TYPE_ALL":
|
||||
return Object.values(urod.Farm.Eat).reduce((sum, val) => sum + val, 0);
|
||||
|
||||
default:
|
||||
if (urod.Mission[group])
|
||||
{
|
||||
if (urod.Mission[group][id])
|
||||
return urod.Mission[group][id][1];
|
||||
}
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
function Add_MissionLv(urod, group, id)
|
||||
{
|
||||
if (!urod.Mission[group])
|
||||
return;
|
||||
|
||||
if (!urod.Mission[group][id]) {
|
||||
// [level, count 등], 기본값 초기화
|
||||
urod.Mission[group][id] = [0, 0];
|
||||
}
|
||||
|
||||
// 레벨 증가
|
||||
++urod.Mission[group][id][0];
|
||||
|
||||
var table = Get_MissionTable();
|
||||
|
||||
// 미션 데이터 가져오기
|
||||
const missionData = table.find(f => f.n_MissionGroupId == group && f.n_MissionIndex == id);
|
||||
if (!missionData) return;
|
||||
|
||||
if (missionData.e_LinkedQuestType == "First" || missionData.e_LinkedQuestType == "Ing")
|
||||
{
|
||||
const isACC = missionData.e_MissionConditionType.includes("_ACC");
|
||||
if (!isACC) {
|
||||
let addIndex = 1;
|
||||
while (true) {
|
||||
const nextId = Add_Amount(id, addIndex++);
|
||||
if (Set_MissionCount(urod, group, nextId))
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
function Set_MissionCount(urod, group, id)
|
||||
{
|
||||
const nextData = Get_MissionTable().find(f => f.n_MissionGroupId == group && f.n_MissionIndex == id);
|
||||
if (!nextData) return false;
|
||||
|
||||
const type = nextData.e_LinkedQuestType;
|
||||
if (type == "Ing" || type == "Last") {
|
||||
const missionGroup = urod.Mission[group];
|
||||
if (missionGroup && missionGroup[id]) {
|
||||
for (let i = 0; i < missionGroup[id].length; i++) {
|
||||
missionGroup[id][i] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return type == "Last";
|
||||
}
|
||||
function Add_MissionCompletCount(urod, group)
|
||||
{
|
||||
var completecondition = group == 1 ? "DAILY_MISSION_CLEAR_ALL" : group == 2 ? "WEEKLY_MISSION_CLEAR_ALL" : "ACHIEVEMENT_CLEAR_ACC";
|
||||
const completeData = Get_MissionTable().find(f => f.e_MissionConditionType == completecondition);
|
||||
if (!completeData) return;
|
||||
|
||||
const missionGroup = urod.Mission;
|
||||
const key1 = group;
|
||||
const key2 = completeData.n_MissionIndex;
|
||||
|
||||
if (!missionGroup[key1])
|
||||
missionGroup[key1] = {};
|
||||
|
||||
if (!missionGroup[key1][key2])
|
||||
missionGroup[key1][key2] = [0, 0];
|
||||
|
||||
++missionGroup[key1][key2][1];
|
||||
}
|
||||
handlers.Save_Mission = 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 table = Get_MissionTable();
|
||||
var data = table.find(f=>f.n_MissionGroupId == args.Group && f.n_MissionIndex == args.ID);
|
||||
var lv = urod.Mission?.[args.Group]?.[args.ID]?.[0] ?? 0;
|
||||
var count = Get_MissionCount(urod, data, args.Group, args.ID);
|
||||
|
||||
if (lv == 0 && count >= data.l_MissionConditionCount)
|
||||
{
|
||||
Add_Item(table, Get_ItemTable(), urod, data.n_RewardValue, data.n_MissionIndex);
|
||||
Add_MissionLv(urod, data.n_MissionGroupId, data.n_MissionIndex);
|
||||
Add_MissionCompletCount(urod, data.n_MissionGroupId);
|
||||
|
||||
Set_JsonUserData(urod);
|
||||
return Get_Return(0);
|
||||
}
|
||||
return Get_Return(1);
|
||||
}
|
||||
/////////////////////////////////// 서버 처리
|
||||
|
||||
handlers.Write_UnityInApp = function(args)
|
||||
|
|
@ -10432,6 +10608,107 @@ function Get_ClassOpenTable()
|
|||
}
|
||||
]
|
||||
}
|
||||
function Get_ClassConfigTable()
|
||||
{
|
||||
return [
|
||||
{
|
||||
"n_ClassID": "10101",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "3",
|
||||
"n_DefaultDex": "3",
|
||||
"n_DefaultInt": "3",
|
||||
"n_DefaultLuk": "10"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10102",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10201",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10202",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10301",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10302",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10303",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10401",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10402",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10501",
|
||||
"n_Tier": "1",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10502",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10601",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
}
|
||||
]
|
||||
}
|
||||
function Get_GlobalValueTable()
|
||||
{
|
||||
return [
|
||||
|
|
@ -10773,107 +11050,97 @@ function Get_AwakenUpgradeTable()
|
|||
function Get_BreakingLimitTable()
|
||||
{
|
||||
return [
|
||||
{
|
||||
{
|
||||
"n_LimitLv": "1",
|
||||
"n_RequireTotalStat": "5",
|
||||
"n_RequireLevel": "3",
|
||||
"n_MaxAbilityPoint": "1",
|
||||
"n_Equip_Upgrade_Limit": "10",
|
||||
"f_Monster_DMG_Multiplier": "0.05",
|
||||
"f_Boss_DMG_Multiplier": "0",
|
||||
"f_ALL_STAT_Multiplier": "0",
|
||||
"n_limitSlotMagic": "0"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "2",
|
||||
"n_RequireTotalStat": "10",
|
||||
"n_RequireLevel": "10",
|
||||
"n_MaxAbilityPoint": "2",
|
||||
"n_Equip_Upgrade_Limit": "15",
|
||||
"f_Monster_DMG_Multiplier": "0.1",
|
||||
"f_Boss_DMG_Multiplier": "0.1",
|
||||
"f_ALL_STAT_Multiplier": "0.05",
|
||||
"n_limitSlotMagic": "1"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "3",
|
||||
"n_RequireTotalStat": "15",
|
||||
"n_RequireLevel": "20",
|
||||
"n_MaxAbilityPoint": "3",
|
||||
"n_Equip_Upgrade_Limit": "20",
|
||||
"f_Monster_DMG_Multiplier": "0.25",
|
||||
"f_Boss_DMG_Multiplier": "0.1",
|
||||
"f_ALL_STAT_Multiplier": "0.065",
|
||||
"n_limitSlotMagic": "2"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "4",
|
||||
"n_RequireTotalStat": "20",
|
||||
"n_RequireLevel": "50",
|
||||
"n_MaxAbilityPoint": "4",
|
||||
"n_Equip_Upgrade_Limit": "25",
|
||||
"f_Monster_DMG_Multiplier": "0.3",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.08",
|
||||
"n_limitSlotMagic": "2"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "5",
|
||||
"n_RequireTotalStat": "25",
|
||||
"n_RequireLevel": "100",
|
||||
"n_MaxAbilityPoint": "5",
|
||||
"n_Equip_Upgrade_Limit": "30",
|
||||
"f_Monster_DMG_Multiplier": "0.35",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.1",
|
||||
"n_limitSlotMagic": "3"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "6",
|
||||
"n_RequireTotalStat": "30",
|
||||
"n_RequireLevel": "150",
|
||||
"n_MaxAbilityPoint": "6",
|
||||
"n_Equip_Upgrade_Limit": "35",
|
||||
"f_Monster_DMG_Multiplier": "0.4",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.12",
|
||||
"n_limitSlotMagic": "3"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "7",
|
||||
"n_RequireTotalStat": "35",
|
||||
"n_RequireLevel": "200",
|
||||
"n_MaxAbilityPoint": "7",
|
||||
"n_Equip_Upgrade_Limit": "40",
|
||||
"f_Monster_DMG_Multiplier": "0.45",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.14",
|
||||
"n_limitSlotMagic": "4"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "8",
|
||||
"n_RequireTotalStat": "40",
|
||||
"n_RequireLevel": "250",
|
||||
"n_MaxAbilityPoint": "8",
|
||||
"n_Equip_Upgrade_Limit": "45",
|
||||
"f_Monster_DMG_Multiplier": "0.5",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.16",
|
||||
"n_limitSlotMagic": "5"
|
||||
},
|
||||
{
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "9",
|
||||
"n_RequireTotalStat": "45",
|
||||
"n_RequireLevel": "300",
|
||||
"n_MaxAbilityPoint": "9",
|
||||
"n_Equip_Upgrade_Limit": "50",
|
||||
"f_Monster_DMG_Multiplier": "0.55",
|
||||
"f_Boss_DMG_Multiplier": "0.2",
|
||||
"f_ALL_STAT_Multiplier": "0.18",
|
||||
"n_limitSlotMagic": "6"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
function Get_BreakingLimitSlotAndLv()
|
||||
{
|
||||
const dataList = Get_BreakingLimitTable();
|
||||
const dic_SlotOpenData = {}; // key: 슬롯 번호, value: 열리는 n_LimitLv
|
||||
|
||||
for (let i = 0; i < dataList.length; i++) {
|
||||
const temp = dataList[i];
|
||||
const slot = parseInt(temp.n_limitSlotMagic);
|
||||
const level = parseInt(temp.n_LimitLv);
|
||||
|
||||
if (slot > 0 && !(slot in dic_SlotOpenData)) {
|
||||
dic_SlotOpenData[slot] = level;
|
||||
}
|
||||
}
|
||||
|
||||
return dic_SlotOpenData;
|
||||
}
|
||||
function Get_EnchantListTable()
|
||||
{
|
||||
return [
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,74 @@
|
|||
[
|
||||
{
|
||||
"n_LimitLv": "1",
|
||||
"n_RequireTotalStat": "5",
|
||||
"n_RequireLevel": "3",
|
||||
"n_MaxAbilityPoint": "1",
|
||||
"n_Equip_Upgrade_Limit": "10",
|
||||
"n_limitSlotMagic": "0"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "2",
|
||||
"n_RequireTotalStat": "10",
|
||||
"n_RequireLevel": "10",
|
||||
"n_MaxAbilityPoint": "2",
|
||||
"n_Equip_Upgrade_Limit": "15",
|
||||
"n_limitSlotMagic": "1"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "3",
|
||||
"n_RequireTotalStat": "15",
|
||||
"n_RequireLevel": "20",
|
||||
"n_MaxAbilityPoint": "3",
|
||||
"n_Equip_Upgrade_Limit": "20",
|
||||
"n_limitSlotMagic": "2"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "4",
|
||||
"n_RequireTotalStat": "20",
|
||||
"n_RequireLevel": "50",
|
||||
"n_MaxAbilityPoint": "4",
|
||||
"n_Equip_Upgrade_Limit": "25",
|
||||
"n_limitSlotMagic": "2"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "5",
|
||||
"n_RequireTotalStat": "25",
|
||||
"n_RequireLevel": "100",
|
||||
"n_MaxAbilityPoint": "5",
|
||||
"n_Equip_Upgrade_Limit": "30",
|
||||
"n_limitSlotMagic": "3"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "6",
|
||||
"n_RequireTotalStat": "30",
|
||||
"n_RequireLevel": "150",
|
||||
"n_MaxAbilityPoint": "6",
|
||||
"n_Equip_Upgrade_Limit": "35",
|
||||
"n_limitSlotMagic": "3"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "7",
|
||||
"n_RequireTotalStat": "35",
|
||||
"n_RequireLevel": "200",
|
||||
"n_MaxAbilityPoint": "7",
|
||||
"n_Equip_Upgrade_Limit": "40",
|
||||
"n_limitSlotMagic": "4"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "8",
|
||||
"n_RequireTotalStat": "40",
|
||||
"n_RequireLevel": "250",
|
||||
"n_MaxAbilityPoint": "8",
|
||||
"n_Equip_Upgrade_Limit": "45",
|
||||
"n_limitSlotMagic": "5"
|
||||
},
|
||||
{
|
||||
"n_LimitLv": "9",
|
||||
"n_RequireTotalStat": "45",
|
||||
"n_RequireLevel": "300",
|
||||
"n_MaxAbilityPoint": "9",
|
||||
"n_Equip_Upgrade_Limit": "50",
|
||||
"n_limitSlotMagic": "6"
|
||||
}
|
||||
]
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 69eec313ebdca5a4ea823aa31842aafd
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
[
|
||||
{
|
||||
"n_ClassID": "10101",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "3",
|
||||
"n_DefaultDex": "3",
|
||||
"n_DefaultInt": "3",
|
||||
"n_DefaultLuk": "10"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10102",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10201",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10202",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10301",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10302",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10303",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "10",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10401",
|
||||
"n_Tier": "2",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10402",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10501",
|
||||
"n_Tier": "1",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "10",
|
||||
"n_DefaultInt": "5",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10502",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
},
|
||||
{
|
||||
"n_ClassID": "10601",
|
||||
"n_Tier": "3",
|
||||
"n_DefaultStr": "5",
|
||||
"n_DefaultDex": "5",
|
||||
"n_DefaultInt": "10",
|
||||
"n_DefaultLuk": "0"
|
||||
}
|
||||
]
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 517f05211e32cf547981e2ce8a774ce1
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
|
@ -1469,7 +1469,7 @@ public partial class ServerData
|
|||
Set_Common(eCommon.Roullette_Count, 0);
|
||||
Set_Common(eCommon.Roullette_LuckyCount, 0);
|
||||
Set_Common(eCommon.Roullette_ADCount, 0);
|
||||
Init_Mission(1);
|
||||
//Init_Mission(1); // TODO 정인호 : 일일 미션 초기화
|
||||
Init_Pass();
|
||||
Init_Shop();
|
||||
|
||||
|
|
@ -1492,7 +1492,7 @@ public partial class ServerData
|
|||
Set_Common(eCommon.DOY_Week, numweek);
|
||||
LastTime = ServerInfo.ServerTime;
|
||||
Init_ShopWeek();
|
||||
Init_Mission(2);
|
||||
//Init_Mission(2); // TODO 정인호 : 주간 미션 초기화
|
||||
}
|
||||
public void Init_Month()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2229,6 +2229,43 @@ public class ServerInfo : MyCoroutine
|
|||
Set_Coroutine(() => { Save_Worker_Buy(id, _act); }, 2f);
|
||||
});
|
||||
}
|
||||
|
||||
public void Save_Mission(int group, int id, Action _act)
|
||||
{
|
||||
NetWait.Ins.Set(true);
|
||||
PlayFabClientAPI.ExecuteCloudScript(new ExecuteCloudScriptRequest
|
||||
{
|
||||
FunctionName = MethodBase.GetCurrentMethod().Name,
|
||||
GeneratePlayStreamEvent = true,
|
||||
FunctionParameter = new
|
||||
{
|
||||
Token = m_LoginInfo.EntityToken.EntityToken,
|
||||
Group = group,
|
||||
ID = id,
|
||||
}
|
||||
},
|
||||
result =>
|
||||
{
|
||||
if (result.Error == null)
|
||||
{
|
||||
NetWait.Ins.Set(false);
|
||||
var str_result = result.FunctionResult.ToString();
|
||||
var error = MyErrorCheck(str_result);
|
||||
// (0 성공, 1 실패 (받을 수 없음))
|
||||
switch (error)
|
||||
{
|
||||
case 0: _act?.Invoke(); break;
|
||||
case 1: ToastUI.Ins.Set(999900037); break;
|
||||
}
|
||||
}
|
||||
else
|
||||
Set_Coroutine(() => { Save_Mission(group, id, _act); }, 2f);
|
||||
},
|
||||
fail =>
|
||||
{
|
||||
Set_Coroutine(() => { Save_Mission(group, id, _act); }, 2f);
|
||||
});
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 우편
|
||||
|
|
|
|||
|
|
@ -57,6 +57,6 @@ public class FarmFarmerUI : BotMenuBase
|
|||
public override void OnClick_Back()
|
||||
{
|
||||
base.OnClick_Back();
|
||||
MainToFarm.Ins.Set_MyFarmer();
|
||||
if (MainToFarm.isIns) MainToFarm.Ins.Set_MyFarmer();
|
||||
}
|
||||
}
|
||||
|
|
@ -63,12 +63,14 @@ public class MissionCard : CardBase
|
|||
public virtual void OnClick_GetReward()
|
||||
{
|
||||
var sdata = ServerInfo.Ins.m_ServerData;
|
||||
if (sdata.Get_MissionReward(m_Data))
|
||||
if (sdata.CanGet_Mission(m_Data.n_MissionGroupId, m_Data.n_MissionIndex))
|
||||
{
|
||||
NewGameUI.Ins.m_MissionUI.Set_UI();
|
||||
Set_Complete();
|
||||
ServerInfo.Ins.Save_Mission(m_Data.n_MissionGroupId, m_Data.n_MissionIndex, () =>
|
||||
{
|
||||
sdata.Get_MissionReward(m_Data);
|
||||
NewGameUI.Ins.m_MissionUI.Set_UI();
|
||||
Set_Complete();
|
||||
});
|
||||
}
|
||||
else
|
||||
Popup.Ins.Set(ePopupType.One, 174, null, null, "미션 보상 받을 수 없음");
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue