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

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);
Action_success?.Invoke();
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);
break;
case 2:

View File

@ -175,7 +175,7 @@ public partial class InGameInfo : MyCoroutine
MyValue.MyChoiceMapData.n_MapID = id;
var Tdata = table_battlemapconfig.Ins.Get_Data(MyValue.MyChoiceMapData.n_MapID);
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, () =>
{
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)
{
var data = table_missionlist.Ins.Get_Data_orNull(group, _id);
switch (data.e_MissionConditionType)
{
case ePurpose.ACCOUNT_LEVEL_UP:
case ePurpose.ACCOUNT_LEVEL_UP_LIMIT:
case ePurpose.HERO_LEVEL_ACC:
return PC.Lv;
case ePurpose.CHECK_PLAYTIME:
@ -1855,10 +1864,13 @@ public partial class ServerData
}
Add_MissionCount(ePurpose.TAKE_GOODS, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIPEMENT, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIPEMENT_ALL, id, (int)amount);
Add_MissionCount(ePurpose.GET_SKILL, id, (int)amount);
Add_MissionCount(ePurpose.GET_SKILL_ALL, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIP_ITEM_ALL, id, (int)amount);
Add_MissionCount(ePurpose.GET_EQUIP_ITEM_GRADE_ACC, itemdata.n_ItemGrade, (int)amount);
if (itemdata.e_ItemType == eItem.Relic)
{
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)
{

View File

@ -102,7 +102,7 @@ public class table_missionlist : table_missionbase
{
case ePurpose.DAILY_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);
break;
default:

View File

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

View File

@ -83,7 +83,15 @@ public class EquipmentPopup_Obtain : EquipmentPopupBase
MyValue.MyPC.Change_Weapon();
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)
{
sdata.Add_MissionCount(ePurpose.EQUIPEMENT_UPGRADE_ALL);
sdata.Add_MissionCount(ePurpose.EQUIPEMENT_UPGRADE_LIMIT_ALL);
sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_ENCHANT_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} 개 획득");
Set_Decompostion(0);
Set_SmeltingUI();
sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_DISTROY_ALL);
sdata.Add_MissionCount(ePurpose.EQUIP_ITEM_DISTROY_ACC);
}
}
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_ALL);
ServerInfo.Ins.Write(null, false);
}
}

View File

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

View File

@ -21,7 +21,6 @@ public class DungeonResult_Nightmare : DungeonResultBase
var sdata = ServerInfo.Ins.m_ServerData;
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 3);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
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_ALL);
ServerInfo.Ins.Write(null);
}
}

View File

@ -27,18 +27,13 @@ public class MissionCard : CardBase
break;
case ePurpose.TAKE_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);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, item.Get_Name());
break;
case ePurpose.MOVE_MAP:
case ePurpose.ARRIVAL_MAP_LIMIT:
var map = table_battlemapconfig.Ins.Get_Data(m_Data.n_MissionConditionValue);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, map.Get_Name());
break;
case ePurpose.GET_SKILL:
case ePurpose.SKILL_UPGRADE:
case ePurpose.SKILL_UPGRADE_LIMIT:
var skill = table_skilllist.Ins.Get_Data_orNull(m_Data.n_MissionConditionValue);
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_MissionLv(m_Data.n_MissionGroupId, m_Data.n_MissionIndex);
sdata.Add_MissionCompletCount(m_Data.n_MissionGroupId);
Set_Complete();
}
else

View File

@ -87,7 +87,8 @@ public class PetUI_Left : UI3DModel
}
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_ACC, 0, amount);
}
}

View File

@ -73,10 +73,10 @@ public class SkillUI_SkillInfo : uScrollViewMgr
Set_UI();
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_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();
NewGameUI.Ins.m_SkillUI.Refresh_Money();
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_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
{
KILL_MONSTER,
KILL_MONSTER_GRADE,
KILL_MONSTER_GRADE_ACC,
KILL_MONSTER_ALL,
KILL_MONSTER_ACC,
TAKE_GOODS,
TAKE_GOODS_LIMIT,
TAKE_GOODS_ACC,
CONSUME_GOODS,
MOVE_MAP,
MENU_OPEN,
ACCOUNT_LEVEL_UP,
ACCOUNT_LEVEL_UP_LIMIT,
MERGE_HERO,
MERGE_HERO_ACC,
GET_HERO,
UPGRADE_ABILITY,
UPGRADE_ABILITY_LIMIT,
UPGRADE_ABILITY_ALL,
UPGRADE_ABILITY_LIMIT_ALL,
GET_SKILL,
GET_SKILL_ALL,
SKILL_UPGRADE,
SKILL_UPGRADE_ALL,
SKILL_UPGRADE_LIMIT,
SKILL_UPGRADE_LIMIT_ALL,
SKILL_AWAKEN_ALL,
SKILL_AWAKEN_LIMIT_ALL,
GET_COMMANDER,
GET_EQUIPEMENT,
GET_EQUIPEMENT_ALL,
EQUIPEMENT_MOUNT_ALL,
EQUIPEMENT_UPGRADE_ALL,
EQUIPEMENT_UPGRADE_LIMIT_ALL,
EQUIPEMENT_AWAKEN_ALL,
EQUIPEMENT_AWAKEN_LIMIT_ALL,
ACHIEVEMENT_CLEAR_ALL,
CONSUME_GOODS_ACC,
ARRIVAL_MAP_LIMIT,
HERO_LEVEL_ACC,
HERO_STAT_UPGRADE_ACC,
HERO_ABILITY_UPGRADE_CLASS_LIMIT,
HERO_ABILITY_UPGRADE_ALL,
HERO_ABILITY_UPGRADE_ACC,
HERO_ABILITY_RESET_ACC,
CLASS_OPEN_LIMIT,
HERO_AWAKEN_ACC,
HERO_TRANSCENDENCE_ACC,
HERO_OPTION_CHANGE,
HERO_OPTION_CHANGE_ACC,
HERO_OPTION_CHANGE_SLOT_LIMIT,
GET_EQUIP_ITEM_ALL,
GET_EQUIP_ITEM_GRADE_ACC,
EQUIP_ITEM_UPGRADE_ALL,
EQUIP_ITEM_UPGRADE_ACC,
EQUIP_ITEM_UPGRADE_LIMIT,
EQUIP_ITEM_CRAFTING,
EQUIP_ITEM_CRAFTING_ACC,
EQUIP_ITEM_DISTROY_ALL,
EQUIP_ITEM_DISTROY_ACC,
EQUIP_ITEM_ENCHANT_ALL,
EQUIP_ITEM_ENCHANT_ACC,
EQUIP_SLOT_UPGRADE_ALL,
EQUIP_SLOT_UPGRADE_ACC,
USE_SKILL_ALL,
EQUIP_ITEM_MOUNT_PARTS_LIMIT,
ACHIEVEMENT_CLEAR_ACC,
DAILY_MISSION_CLEAR_ALL,
WEEKLY_MISSION_CLEAR_ALL,
RELIC_TAKE,
RELIC_TAKE_ALL,
RELIC_UPGRADE,
RELIC_UPGRADE_ALL,
RELIC_UPGRADE_LIMIT_ALL,
WATCH_AD,
TAKE_RELIC_ALL,
TAKE_RELIC_GRADE_ACC,
UPGRADE_RELIC_ALL,
UPGRADE_RELIC_LIMIT,
AWAKEN_RELIC_ALL,
AWAKEN_RELIC_LIMIT,
WATCH_AD_ALL,
WATCH_AD_ACC,
ATTENDANCE,
ATTENDANCE_ACC,
GACHA_EQUIPEMENT,
GACHA_SKILL,
GACHA_RELIC,
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_ALL,
COMBATPOWER_LIMIT,
BUY_PAID_COUNT_ACC,
HERO_BASE_STAT_LIMIT,
CHECK_PLAYTIME,
CHECK_PLAYTIME_ACC,
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
}