미션 조건 기존 작업 + 새로 시작

This commit is contained in:
Ino 2025-03-19 10:39:10 +09:00
parent a13c0a75b0
commit e9891b0629
15 changed files with 121 additions and 72 deletions

Binary file not shown.

View File

@ -122,7 +122,7 @@ public class ADInfo : MonoBehaviour
//MobileAds.SetiOSAppPauseOnBackground(false); //MobileAds.SetiOSAppPauseOnBackground(false);
Action_success?.Invoke(); Action_success?.Invoke();
var sdata = ServerInfo.Ins.m_ServerData; var sdata = ServerInfo.Ins.m_ServerData;
sdata.Add_MissionCount(ePurpose.WATCH_AD); sdata.Add_MissionCount(ePurpose.WATCH_AD_ALL);
sdata.Add_MissionCount(ePurpose.WATCH_AD_ACC); sdata.Add_MissionCount(ePurpose.WATCH_AD_ACC);
break; break;
case 2: case 2:

View File

@ -175,7 +175,7 @@ public partial class InGameInfo : MyCoroutine
MyValue.MyChoiceMapData.n_MapID = id; MyValue.MyChoiceMapData.n_MapID = id;
var Tdata = table_battlemapconfig.Ins.Get_Data(MyValue.MyChoiceMapData.n_MapID); var Tdata = table_battlemapconfig.Ins.Get_Data(MyValue.MyChoiceMapData.n_MapID);
m_GameMode = Tdata.e_MapType; m_GameMode = Tdata.e_MapType;
ServerInfo.Ins.m_ServerData.Add_MissionCount(ePurpose.MOVE_MAP, id); ServerInfo.Ins.m_ServerData.Add_MissionCount(ePurpose.ARRIVAL_MAP_LIMIT, id);
m_SceneInfo.Load_AddScene(Tdata, () => m_SceneInfo.Load_AddScene(Tdata, () =>
{ {
StartCam(); StartCam();

View File

@ -1076,13 +1076,22 @@ public partial class ServerData
} }
} }
} }
public void Add_MissionCompletCount(int group)
{
var completeData = table_missionlist.Ins.Get_CompleteData(group);
var key1 = Get_Key(group);
var key2 = Get_Key(completeData.n_MissionIndex);
if (!Mission.ContainsKey(key1)) Mission.Add(key1, new Dictionary<string, List<ObscuredInt>>());
if (!Mission[key1].ContainsKey(key2)) Mission[key1].Add(key2, new List<ObscuredInt> { 0, 0 });
++Mission[key1][key2][1];
Mission[key1][key2][1].RandomizeCryptoKey();
}
public int Get_MissionCount(int group, int _id) public int Get_MissionCount(int group, int _id)
{ {
var data = table_missionlist.Ins.Get_Data_orNull(group, _id); var data = table_missionlist.Ins.Get_Data_orNull(group, _id);
switch (data.e_MissionConditionType) switch (data.e_MissionConditionType)
{ {
case ePurpose.ACCOUNT_LEVEL_UP: case ePurpose.HERO_LEVEL_ACC:
case ePurpose.ACCOUNT_LEVEL_UP_LIMIT:
return PC.Lv; return PC.Lv;
case ePurpose.CHECK_PLAYTIME: case ePurpose.CHECK_PLAYTIME:
@ -1855,10 +1864,13 @@ public partial class ServerData
} }
Add_MissionCount(ePurpose.TAKE_GOODS, id, (int)amount); Add_MissionCount(ePurpose.TAKE_GOODS, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIPEMENT, id, (int)amount); Add_MissionCount(ePurpose.GET_EQUIP_ITEM_ALL, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIPEMENT_ALL, id, (int)amount); Add_MissionCount(ePurpose.GET_EQUIP_ITEM_GRADE_ACC, itemdata.n_ItemGrade, (int)amount);
Add_MissionCount(ePurpose.GET_SKILL, id, (int)amount); if (itemdata.e_ItemType == eItem.Relic)
Add_MissionCount(ePurpose.GET_SKILL_ALL, id, (int)amount); {
Add_MissionCount(ePurpose.TAKE_RELIC_ALL, id, (int)amount);
Add_MissionCount(ePurpose.TAKE_RELIC_GRADE_ACC, itemdata.n_ItemGrade, (int)amount);
}
} }
public void Use_Item(int id, double amount) public void Use_Item(int id, double amount)
{ {

View File

@ -102,7 +102,7 @@ public class table_missionlist : table_missionbase
{ {
case ePurpose.DAILY_MISSION_CLEAR_ALL: case ePurpose.DAILY_MISSION_CLEAR_ALL:
case ePurpose.WEEKLY_MISSION_CLEAR_ALL: case ePurpose.WEEKLY_MISSION_CLEAR_ALL:
case ePurpose.ACHIEVEMENT_CLEAR_ALL: case ePurpose.ACHIEVEMENT_CLEAR_ACC:
dic_Completedata.Add(temp.n_MissionGroupId, temp); dic_Completedata.Add(temp.n_MissionGroupId, temp);
break; break;
default: default:

View File

@ -104,8 +104,8 @@ public class CollectionRelicUI : PCUIMenu
Set(); Set();
MyValue.Get_ActorStatInfoorNull(eRole.PC); MyValue.Get_ActorStatInfoorNull(eRole.PC);
sdata.Add_MissionCount(ePurpose.RELIC_TAKE, m_SelectRelicData.n_RelicID); sdata.Add_MissionCount(ePurpose.AWAKEN_RELIC_ALL, m_SelectRelicData.n_RelicID);
sdata.Add_MissionCount(ePurpose.RELIC_TAKE_ALL); sdata.Add_MissionCount(ePurpose.AWAKEN_RELIC_LIMIT, m_SelectRelicData.n_RelicID);
} }
} }
@ -131,9 +131,8 @@ public class CollectionRelicUI : PCUIMenu
Set(); Set();
MyValue.Get_ActorStatInfoorNull(eRole.PC); MyValue.Get_ActorStatInfoorNull(eRole.PC);
sdata.Add_MissionCount(ePurpose.RELIC_UPGRADE, m_SelectRelicData.n_RelicID); sdata.Add_MissionCount(ePurpose.UPGRADE_RELIC_ALL, m_SelectRelicData.n_RelicID);
sdata.Add_MissionCount(ePurpose.RELIC_UPGRADE_ALL); sdata.Add_MissionCount(ePurpose.UPGRADE_RELIC_LIMIT, m_SelectRelicData.n_RelicID);
sdata.Add_MissionCount(ePurpose.RELIC_UPGRADE_LIMIT_ALL);
} }
} }
} }

View File

@ -83,7 +83,15 @@ public class EquipmentPopup_Obtain : EquipmentPopupBase
MyValue.MyPC.Change_Weapon(); MyValue.MyPC.Change_Weapon();
MyValue.Get_ActorStatInfoorNull(eRole.PC); MyValue.Get_ActorStatInfoorNull(eRole.PC);
sdata.Add_MissionCount(ePurpose.EQUIPEMENT_MOUNT_ALL); switch (m_Data.e_EquipParts)
{
case eItem.Weapon: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 1); break;
case eItem.Armor: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 2); break;
case eItem.Helmet: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 3); break;
case eItem.Extra: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 4); break;
case eItem.Ring: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 5); break;
case eItem.Necklace: sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_MOUNT_PARTS_LIMIT, 6); break;
}
} }
} }
} }
@ -104,8 +112,8 @@ public class EquipmentPopup_Obtain : EquipmentPopupBase
if (success) if (success)
{ {
sdata.Add_MissionCount(ePurpose.EQUIPEMENT_UPGRADE_ALL); sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_ENCHANT_ALL);
sdata.Add_MissionCount(ePurpose.EQUIPEMENT_UPGRADE_LIMIT_ALL); sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_ENCHANT_ACC);
} }
}); });
} }
@ -122,6 +130,8 @@ public class EquipmentPopup_Obtain : EquipmentPopupBase
ToastUI.Ins.Set(174, $"분해해서 {m_Data.n_DecompositionReward} 아이템 {m_Data.n_DecompositionCount * m_DecompAmount} 개 획득"); ToastUI.Ins.Set(174, $"분해해서 {m_Data.n_DecompositionReward} 아이템 {m_Data.n_DecompositionCount * m_DecompAmount} 개 획득");
Set_Decompostion(0); Set_Decompostion(0);
Set_SmeltingUI(); Set_SmeltingUI();
sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_DISTROY_ALL);
sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_DISTROY_ACC);
} }
} }
public void OnClick_Slider(int add) public void OnClick_Slider(int add)

View File

@ -24,7 +24,6 @@ public class DungeonResult_Maze : DungeonResultBase
} }
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 2); sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 2);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
ServerInfo.Ins.Write(null, false); ServerInfo.Ins.Write(null, false);
} }
} }

View File

@ -33,7 +33,6 @@ public class DungeonResult_Mimic : DungeonResultBase
sdata.Add_DungeonLv(eDungeon.d1_Mimic); sdata.Add_DungeonLv(eDungeon.d1_Mimic);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 1); sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 1);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
} }
ServerInfo.Ins.Write(null); ServerInfo.Ins.Write(null);

View File

@ -21,7 +21,6 @@ public class DungeonResult_Nightmare : DungeonResultBase
var sdata = ServerInfo.Ins.m_ServerData; var sdata = ServerInfo.Ins.m_ServerData;
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 3); sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 3);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
ServerInfo.Ins.Write(null, false); ServerInfo.Ins.Write(null, false);
} }
} }

View File

@ -20,7 +20,6 @@ public class DungeonResult_Wave : DungeonResultBase
} }
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 4); sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 4);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
ServerInfo.Ins.Write(null); ServerInfo.Ins.Write(null);
} }
} }

View File

@ -27,18 +27,13 @@ public class MissionCard : CardBase
break; break;
case ePurpose.TAKE_GOODS: case ePurpose.TAKE_GOODS:
case ePurpose.CONSUME_GOODS: case ePurpose.CONSUME_GOODS:
case ePurpose.GET_EQUIPEMENT:
case ePurpose.RELIC_TAKE:
case ePurpose.RELIC_UPGRADE:
var item = table_itemlist.Ins.Get_Data(m_Data.n_MissionConditionValue); var item = table_itemlist.Ins.Get_Data(m_Data.n_MissionConditionValue);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, item.Get_Name()); texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, item.Get_Name());
break; break;
case ePurpose.MOVE_MAP: case ePurpose.ARRIVAL_MAP_LIMIT:
var map = table_battlemapconfig.Ins.Get_Data(m_Data.n_MissionConditionValue); var map = table_battlemapconfig.Ins.Get_Data(m_Data.n_MissionConditionValue);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, map.Get_Name()); texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, map.Get_Name());
break; break;
case ePurpose.GET_SKILL:
case ePurpose.SKILL_UPGRADE:
case ePurpose.SKILL_UPGRADE_LIMIT: case ePurpose.SKILL_UPGRADE_LIMIT:
var skill = table_skilllist.Ins.Get_Data_orNull(m_Data.n_MissionConditionValue); var skill = table_skilllist.Ins.Get_Data_orNull(m_Data.n_MissionConditionValue);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, skill.Get_Name()); texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, skill.Get_Name());
@ -74,6 +69,7 @@ public class MissionCard : CardBase
{ {
sdata.Add_Item(m_Data.n_RewardValue, m_Data.n_RewardCount); sdata.Add_Item(m_Data.n_RewardValue, m_Data.n_RewardCount);
sdata.Add_MissionLv(m_Data.n_MissionGroupId, m_Data.n_MissionIndex); sdata.Add_MissionLv(m_Data.n_MissionGroupId, m_Data.n_MissionIndex);
sdata.Add_MissionCompletCount(m_Data.n_MissionGroupId);
Set_Complete(); Set_Complete();
} }
else else

View File

@ -87,7 +87,8 @@ public class PetUI_Left : UI3DModel
} }
ObtainItemUI.Ins.Set(itemlst); ObtainItemUI.Ins.Set(itemlst);
sdata.Add_MissionCount(ePurpose.GACHA_PET, 0, amount);
sdata.Add_MissionCount(ePurpose.GACHA_PET_ACC, 0, amount);
sdata.Add_MissionCount(ePurpose.GACHA_ALL, 0, amount); sdata.Add_MissionCount(ePurpose.GACHA_ALL, 0, amount);
sdata.Add_MissionCount(ePurpose.GACHA_ACC, 0, amount);
} }
} }

View File

@ -73,10 +73,10 @@ public class SkillUI_SkillInfo : uScrollViewMgr
Set_UI(); Set_UI();
NewGameUI.Ins.m_SkillUI.Refresh_Money(); NewGameUI.Ins.m_SkillUI.Refresh_Money();
sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE, m_Data.n_SkillID); //sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE, m_Data.n_SkillID);
sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_ALL, m_Data.n_SkillID); sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_ALL, m_Data.n_SkillID);
sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_LIMIT, m_Data.n_SkillID); sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_LIMIT, m_Data.n_SkillID);
sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_LIMIT_ALL, m_Data.n_SkillID); //sdata.Add_MissionCount(ePurpose.SKILL_UPGRADE_LIMIT_ALL, m_Data.n_SkillID);
} }
} }
@ -119,8 +119,8 @@ public class SkillUI_SkillInfo : uScrollViewMgr
Set_UI(); Set_UI();
NewGameUI.Ins.m_SkillUI.Refresh_Money(); NewGameUI.Ins.m_SkillUI.Refresh_Money();
sdata.Add_MissionCount(ePurpose.SKILL_AWAKEN_ALL, m_Data.n_SkillID); //sdata.Add_MissionCount(ePurpose.SKILL_AWAKEN_ALL, m_Data.n_SkillID);
sdata.Add_MissionCount(ePurpose.SKILL_AWAKEN_LIMIT_ALL, m_Data.n_SkillID); //sdata.Add_MissionCount(ePurpose.SKILL_AWAKEN_LIMIT_ALL, m_Data.n_SkillID);
} }
} }

View File

@ -280,61 +280,96 @@ public enum eAttendance { CanGetDay, DoY, Max }
public enum ePurpose public enum ePurpose
{ {
KILL_MONSTER, KILL_MONSTER,
KILL_MONSTER_GRADE,
KILL_MONSTER_GRADE_ACC,
KILL_MONSTER_ALL, KILL_MONSTER_ALL,
KILL_MONSTER_ACC, KILL_MONSTER_ACC,
TAKE_GOODS, TAKE_GOODS,
TAKE_GOODS_LIMIT,
TAKE_GOODS_ACC,
CONSUME_GOODS, CONSUME_GOODS,
MOVE_MAP, CONSUME_GOODS_ACC,
MENU_OPEN, ARRIVAL_MAP_LIMIT,
ACCOUNT_LEVEL_UP, HERO_LEVEL_ACC,
ACCOUNT_LEVEL_UP_LIMIT, HERO_STAT_UPGRADE_ACC,
MERGE_HERO, HERO_ABILITY_UPGRADE_CLASS_LIMIT,
MERGE_HERO_ACC, HERO_ABILITY_UPGRADE_ALL,
GET_HERO, HERO_ABILITY_UPGRADE_ACC,
UPGRADE_ABILITY, HERO_ABILITY_RESET_ACC,
UPGRADE_ABILITY_LIMIT, CLASS_OPEN_LIMIT,
UPGRADE_ABILITY_ALL, HERO_AWAKEN_ACC,
UPGRADE_ABILITY_LIMIT_ALL, HERO_TRANSCENDENCE_ACC,
GET_SKILL, HERO_OPTION_CHANGE,
GET_SKILL_ALL, HERO_OPTION_CHANGE_ACC,
SKILL_UPGRADE, HERO_OPTION_CHANGE_SLOT_LIMIT,
SKILL_UPGRADE_ALL, GET_EQUIP_ITEM_ALL,
SKILL_UPGRADE_LIMIT, GET_EQUIP_ITEM_GRADE_ACC,
SKILL_UPGRADE_LIMIT_ALL, EQUIP_ITEM_UPGRADE_ALL,
SKILL_AWAKEN_ALL, EQUIP_ITEM_UPGRADE_ACC,
SKILL_AWAKEN_LIMIT_ALL, EQUIP_ITEM_UPGRADE_LIMIT,
GET_COMMANDER, EQUIP_ITEM_CRAFTING,
GET_EQUIPEMENT, EQUIP_ITEM_CRAFTING_ACC,
GET_EQUIPEMENT_ALL, EQUIP_ITEM_DISTROY_ALL,
EQUIPEMENT_MOUNT_ALL, EQUIP_ITEM_DISTROY_ACC,
EQUIPEMENT_UPGRADE_ALL, EQUIP_ITEM_ENCHANT_ALL,
EQUIPEMENT_UPGRADE_LIMIT_ALL, EQUIP_ITEM_ENCHANT_ACC,
EQUIPEMENT_AWAKEN_ALL, EQUIP_SLOT_UPGRADE_ALL,
EQUIPEMENT_AWAKEN_LIMIT_ALL, EQUIP_SLOT_UPGRADE_ACC,
ACHIEVEMENT_CLEAR_ALL, USE_SKILL_ALL,
EQUIP_ITEM_MOUNT_PARTS_LIMIT,
ACHIEVEMENT_CLEAR_ACC,
DAILY_MISSION_CLEAR_ALL, DAILY_MISSION_CLEAR_ALL,
WEEKLY_MISSION_CLEAR_ALL, WEEKLY_MISSION_CLEAR_ALL,
RELIC_TAKE, TAKE_RELIC_ALL,
RELIC_TAKE_ALL, TAKE_RELIC_GRADE_ACC,
RELIC_UPGRADE, UPGRADE_RELIC_ALL,
RELIC_UPGRADE_ALL, UPGRADE_RELIC_LIMIT,
RELIC_UPGRADE_LIMIT_ALL, AWAKEN_RELIC_ALL,
WATCH_AD, AWAKEN_RELIC_LIMIT,
WATCH_AD_ALL,
WATCH_AD_ACC, WATCH_AD_ACC,
ATTENDANCE, ATTENDANCE,
ATTENDANCE_ACC, ATTENDANCE_ACC,
GACHA_EQUIPEMENT,
GACHA_SKILL,
GACHA_RELIC,
GACHA_ALL, GACHA_ALL,
GACHA_ACC, GACHA_EQUIP,
GACHA_EQUIP_ACC,
GACHA_PET,
GACHA_PET_ACC,
GACHA_SKILL,
GACHA_SKILL_ACC,
SKILL_UPGRADE_ALL,
SKILL_UPGRADE_LIMIT,
BUY_PRODUCT, BUY_PRODUCT,
BUY_PRODUCT_ALL, BUY_PRODUCT_ALL,
COMBATPOWER_LIMIT, BUY_PAID_COUNT_ACC,
HERO_BASE_STAT_LIMIT,
CHECK_PLAYTIME, CHECK_PLAYTIME,
CHECK_PLAYTIME_ACC, CHECK_PLAYTIME_ACC,
CONTENTS_CLEAR, CONTENTS_CLEAR,
CONTENTS_CLEAR_ALL, BATTLE_POWER_RANKING_LIMIT,
ACCOUNT_LEVEL_RANKING_LIMIT,
GET_ESSENCE_GRADE_ACC,
GET_ESSENCE_GRADE_ALL,
ESSENCE_EXCHANGE,
ESSENCE_EXCHANGE_ACC,
EQUIP_ENCYCLOPEDIA_REWARDS,
EQUIP_ENCYCLOPEDIA_REWARDS_ACC,
MONSTER_ENCYCLOPEDIA_REWARDS,
MONSTER_ENCYCLOPEDIA_REWARDS_ACC,
PET_UPGRADE_ALL,
PET_UPGRADE_ACC,
PET_MOUNT_LIMIT,
PLANTING_CROPS_GRADE_ALL,
PLANTING_CROPS_GRADE_ACC,
HARVESTING_CROPS_ALL,
HARVESTING_CROPS_ACC,
SHORTENING_CROP_HARVEST,
EAT_FRUIT_TYPE_ALL,
EAT_FRUIT_TYPE_ACC,
FARMER_EQUIPMENT_LIMIT,
FARMER_UPGRADE_ALL,
FARMER_UPGRADE_LIMIT,
FARM_EXPANSION_LIMIT,
None None
} }