미션 보상 받기까지

This commit is contained in:
Ino 2025-03-19 09:49:50 +09:00
parent 7e9e58dd5b
commit a13c0a75b0
12 changed files with 290 additions and 13 deletions

View File

@ -71,6 +71,7 @@ messageinfo 엄청 느린 버그
미션
- 가이드
- 업적
- 주간
- 일간
-- 컨텐츠가 없어서 적용안된 미션 있음
수상한 미궁 몹 수 이상하고, 안 움직임

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -456,6 +456,82 @@ MonoBehaviour:
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &2990832289744744533
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4800774497974003473}
- component: {fileID: 4884946182207050463}
- component: {fileID: 7876415364469080733}
m_Layer: 5
m_Name: complete
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4800774497974003473
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2990832289744744533}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 8280629452657205111}
m_Father: {fileID: 1130181902522142026}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4884946182207050463
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2990832289744744533}
m_CullTransparentMesh: 1
--- !u!114 &7876415364469080733
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2990832289744744533}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0, g: 0, b: 0, a: 0.78431374}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 65f581562538e304cbbfe8ee3beab09c, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &3008909111843550523
GameObject:
m_ObjectHideFlags: 0
@ -851,6 +927,7 @@ RectTransform:
- {fileID: 1635529047046532146}
- {fileID: 2162465204171930006}
- {fileID: 8566261541286465253}
- {fileID: 4800774497974003473}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
@ -878,6 +955,8 @@ MonoBehaviour:
- {fileID: 6207384885889463988}
- {fileID: 3604094062231878606}
slider_proc: {fileID: 7566408026735899129}
gos:
- {fileID: 2990832289744744533}
--- !u!1 &6230335576339688738
GameObject:
m_ObjectHideFlags: 0
@ -1118,6 +1197,155 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &7728487492785811760
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8280629452657205111}
- component: {fileID: 3581757122439432087}
- component: {fileID: 2149151613163882603}
- component: {fileID: 8186607734225029895}
m_Layer: 5
m_Name: Local TMP
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &8280629452657205111
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7728487492785811760}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4800774497974003473}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 150, y: 30}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3581757122439432087
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7728487492785811760}
m_CullTransparentMesh: 1
--- !u!114 &2149151613163882603
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7728487492785811760}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: "\uC644\uB8CC"
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: a387e325271126742ad15569dba1ac57, type: 2}
m_sharedMaterial: {fileID: -6459762427321423278, guid: a387e325271126742ad15569dba1ac57,
type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 40
m_fontSizeBase: 40
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 10
m_fontSizeMax: 40
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 4096
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 0
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!114 &8186607734225029895
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7728487492785811760}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c2aa95ff1b7adc044bd9372cf2958828, type: 3}
m_Name:
m_EditorClassIdentifier:
m_localtextKey: 367
--- !u!1 &8815853468376236598
GameObject:
m_ObjectHideFlags: 0

View File

@ -1035,6 +1035,18 @@ public partial class ServerData
}
return 0;
}
public void Add_MissionLv(int group, int _id)
{
var key1 = Get_Key(group);
if (Mission.ContainsKey(key1))
{
var key2 = Get_Key(_id);
if (!Mission[key1].ContainsKey(key2)) // 레벨, 플레이타임과 같이 다른 값 참조하는 미션이 있으므로
Mission[key1].Add(key2, new List<ObscuredInt> { 0, 0 });
++Mission[key1][key2][0];
Mission[key1][key2][0].RandomizeCryptoKey();
}
}
public void Set_MissionCount(int group, int _id, int _v)
{
var key1 = Get_Key(group);
@ -1073,6 +1085,10 @@ public partial class ServerData
case ePurpose.ACCOUNT_LEVEL_UP_LIMIT:
return PC.Lv;
case ePurpose.CHECK_PLAYTIME:
case ePurpose.CHECK_PLAYTIME_ACC:
return Get_Common(eCommon.PlayTime) / 60;
default:
var key1 = Get_Key(group);
if (Mission.ContainsKey(key1))

View File

@ -16,12 +16,15 @@ public class DungeonResult_Maze : DungeonResultBase
if (nextFloor > curFloor)
{
sdata.Set_DungeonLv(eDungeon.d2_Maze, nextFloor);
ServerInfo.Ins.Write(null, false);
var maxTime = MyValue.MyChoiceMapData.Get_DungeonMapData_orNull().f_Time;
var floorTime = DungeonInfo.Ins.Get_Time(nextFloor);
ServerInfo.Ins.Save_Rank("Rank_Maze",
new List<string> { nextFloor.ToString(), ((int)(maxTime - floorTime)).ToString(), "0" });
}
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 2);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
ServerInfo.Ins.Write(null, false);
}
}

View File

@ -31,6 +31,9 @@ public class DungeonResult_Mimic : DungeonResultBase
// TODO 정인호 : 승리 시 보상 지급
if (sdata.Get_DungeonLv(eDungeon.d1_Mimic) < dungeonData.n_MapLv)
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

@ -18,5 +18,10 @@ public class DungeonResult_Nightmare : DungeonResultBase
if (CurDmg > BeforeDmg)
ServerInfo.Ins.Save_Rank("Rank_Damage", new List<string> { CurDmg.ToString() });
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

@ -17,7 +17,10 @@ public class DungeonResult_Wave : DungeonResultBase
if (afterpoint > beforepoint)
{
sdata.Set_DungeonValue(eDungeon.d4_Wave, 2, afterpoint);
ServerInfo.Ins.Write(null);
}
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR, 4);
sdata.Add_MissionCount(ePurpose.CONTENTS_CLEAR_ALL);
ServerInfo.Ins.Write(null);
}
}

View File

@ -1,4 +1,5 @@
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class MissionCard : CardBase
@ -6,6 +7,7 @@ public class MissionCard : CardBase
public Image[] images; // 0 보상 아이콘, 1 보상 버튼
public TextMeshProUGUI[] texts; // 0 조건, 1 보상수량, 2 진행상황
public Slider slider_proc;
public GameObject[] gos; // 0 완료
MissionListTableData m_Data;
@ -41,6 +43,15 @@ public class MissionCard : CardBase
var skill = table_skilllist.Ins.Get_Data_orNull(m_Data.n_MissionConditionValue);
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, skill.Get_Name());
break;
case ePurpose.CONTENTS_CLEAR:
switch (m_Data.n_MissionConditionValue)
{
case 1: texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, table_localtext.Ins.Get_Text(1001)); break;
case 2: texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, table_localtext.Ins.Get_Text(1011)); break;
case 3: texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, table_localtext.Ins.Get_Text(1021)); break;
case 4: texts[0].text = DSUtil.Format(m_Data.n_MissionDesc, table_localtext.Ins.Get_Text(1031)); break;
}
break;
default:
texts[0].text = DSUtil.Format(m_Data.n_MissionDesc);
break;
@ -48,6 +59,12 @@ public class MissionCard : CardBase
texts[1].text = m_Data.n_RewardCount.ToString();
texts[2].text = $"{amount}/{m_Data.l_MissionConditionCount}";
slider_proc.value = DSUtil.Get_SliderValue(amount / (float)m_Data.l_MissionConditionCount);
Set_Complete();
}
void Set_Complete()
{
gos[0].SetActive(ServerInfo.Ins.m_ServerData.Get_MissionLv(m_Data.n_MissionGroupId, m_Data.n_MissionIndex) > 0);
}
public virtual void OnClick_GetReward()
@ -55,7 +72,9 @@ public class MissionCard : CardBase
var sdata = ServerInfo.Ins.m_ServerData;
if (sdata.CanGet_Mission(m_Data.n_MissionGroupId, m_Data.n_MissionIndex))
{
Popup.Ins.Set(ePopupType.One, 174, null, null, "미션 보상 받을 수 있음");
sdata.Add_Item(m_Data.n_RewardValue, m_Data.n_RewardCount);
sdata.Add_MissionLv(m_Data.n_MissionGroupId, m_Data.n_MissionIndex);
Set_Complete();
}
else
Popup.Ins.Set(ePopupType.One, 174, null, null, "미션 보상 받을 수 없음");

View File

@ -67,14 +67,13 @@ public class DataCheckMgr : MyCoroutine
yield return new WaitForSeconds(1f);
sdata.Sub_AllFarmSlotTime(); // 실제 사용 데이터
sdata.Sub_AllFarmShopTime(); // 실제 사용 데이터
// 실제 사용 데이터
sdata.Sub_AllFarmSlotTime();
sdata.Sub_AllFarmShopTime();
sdata.Add_Common(eCommon.PlayTime);
///////////////////
sdata.Sub_ShopADTime(-1);
sdata.Add_Common(eCommon.PlayTime);
//sdata.Add_MissionCount(MyValue.arr_Mission[0], 13);
//sdata.Add_MissionCount(MyValue.arr_Mission[1], 11);
sdata.Sub_AllPotionTime();
sdata.Sub_Common(eCommon.CloverShopResetTime);