미믹 던전 결과, hudui 버그 수정, 기타 등등
This commit is contained in:
parent
27a6b995be
commit
52c0b022e7
|
|
@ -53,4 +53,6 @@ messageinfo 엄청 느린 버그
|
|||
- 입장권 매일 충전 : 2장까지 충전, 단 2장이상 가지고 있으면 충전 안됨
|
||||
- 기본 공격 시 주변에 몹이 있다면 몹을 바라보게
|
||||
- 펫 왜 공격 안하냐
|
||||
- 몬스터 젠 이펙트가 zero 위치에 나옴
|
||||
- 미믹 던전 클리어 후 다음 레벨로
|
||||
- 결과 화면 (입장권 차감, 승리 시 lv 올리기)
|
||||
|
|
@ -1 +1 @@
|
|||
[{"n_MapID": "맵 ID", "n_Chapter": "챕터 정보", "e_MapType": "맵 타입", "e_Dungeon": "던전 타입", "s_Scene": "씬 정보", "s_BGM": "BGM 정보", "n_MapName": "맵 이름", "n_MapDesc": "맵 설명", "s_MapIcon": "맵 아이콘", "n_Portals": "연계 포탈 정보"}, {"n_MapID": "-1", "n_Chapter": "-1", "e_MapType": "Lobby", "e_Dungeon": "None", "s_Scene": "Lobby", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map1", "n_Portals": "0"}, {"n_MapID": "0", "n_Chapter": "0", "e_MapType": "MyFarm", "e_Dungeon": "None", "s_Scene": "MyFarm", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map2", "n_Portals": "0"}, {"n_MapID": "1", "n_Chapter": "1", "e_MapType": "Stage", "e_Dungeon": "None", "s_Scene": "Map_C01", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map3", "n_Portals": "1"}, {"n_MapID": "2", "n_Chapter": "2", "e_MapType": "Stage", "e_Dungeon": "None", "s_Scene": "Map_C02", "s_BGM": "Chapter2", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map4", "n_Portals": "1"}, {"n_MapID": "1001", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d1_Mimic", "s_Scene": "Map_Mimic", "s_BGM": "Chapter2", "n_MapName": "1001", "n_MapDesc": "1101", "s_MapIcon": "Map", "n_Portals": "1"}, {"n_MapID": "1002", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d2_Maze", "s_Scene": "Map_Maze", "s_BGM": "Chapter2", "n_MapName": "1002", "n_MapDesc": "1102", "s_MapIcon": "Map", "n_Portals": "1"}, {"n_MapID": "1003", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d3_Nightmare", "s_Scene": "Map_Nightmare", "s_BGM": "Chapter2", "n_MapName": "1003", "n_MapDesc": "1103", "s_MapIcon": "Map", "n_Portals": "1"}, {"n_MapID": "1004", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d4_Wave", "s_Scene": "Map_Wave", "s_BGM": "Chapter2", "n_MapName": "1004", "n_MapDesc": "1104", "s_MapIcon": "Map", "n_Portals": "1"}]
|
||||
[{"n_MapID": "맵 ID", "n_Chapter": "챕터 정보", "e_MapType": "맵 타입", "e_Dungeon": "던전 타입", "s_Scene": "씬 정보", "s_BGM": "BGM 정보", "n_MapName": "맵 이름", "n_MapDesc": "맵 설명", "s_MapIcon": "맵 아이콘", "n_Portals": "연계 포탈 정보", "n_TicketID": "입장권 ID"}, {"n_MapID": "-1", "n_Chapter": "-1", "e_MapType": "Lobby", "e_Dungeon": "None", "s_Scene": "Lobby", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map1", "n_Portals": "0", "n_TicketID": "0"}, {"n_MapID": "0", "n_Chapter": "0", "e_MapType": "MyFarm", "e_Dungeon": "None", "s_Scene": "MyFarm", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map2", "n_Portals": "0", "n_TicketID": "0"}, {"n_MapID": "1", "n_Chapter": "1", "e_MapType": "Stage", "e_Dungeon": "None", "s_Scene": "Map_C01", "s_BGM": "Chapter1", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map3", "n_Portals": "1", "n_TicketID": "0"}, {"n_MapID": "2", "n_Chapter": "2", "e_MapType": "Stage", "e_Dungeon": "None", "s_Scene": "Map_C02", "s_BGM": "Chapter2", "n_MapName": "1", "n_MapDesc": "0", "s_MapIcon": "Map4", "n_Portals": "1", "n_TicketID": "0"}, {"n_MapID": "1001", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d1_Mimic", "s_Scene": "Map_Mimic", "s_BGM": "Chapter2", "n_MapName": "1001", "n_MapDesc": "1002", "s_MapIcon": "Map", "n_Portals": "1", "n_TicketID": "501"}, {"n_MapID": "1002", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d2_Maze", "s_Scene": "Map_Maze", "s_BGM": "Chapter2", "n_MapName": "1011", "n_MapDesc": "1012", "s_MapIcon": "Map", "n_Portals": "1", "n_TicketID": "502"}, {"n_MapID": "1003", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d3_Nightmare", "s_Scene": "Map_Nightmare", "s_BGM": "Chapter2", "n_MapName": "1021", "n_MapDesc": "1022", "s_MapIcon": "Map", "n_Portals": "1", "n_TicketID": "503"}, {"n_MapID": "1004", "n_Chapter": "0", "e_MapType": "Dungeon", "e_Dungeon": "d4_Wave", "s_Scene": "Map_Wave", "s_BGM": "Chapter2", "n_MapName": "1031", "n_MapDesc": "1032", "s_MapIcon": "Map", "n_Portals": "1", "n_TicketID": "0"}]
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
|
@ -140,7 +140,7 @@ public class Actor : MyCoroutine
|
|||
|
||||
protected virtual void OnDestroy()
|
||||
{
|
||||
if (m_HUDUI) Destroy(m_HUDUI.gameObject);
|
||||
if (m_HUDUI) m_HUDUI.Off();
|
||||
}
|
||||
|
||||
protected override void Update()
|
||||
|
|
@ -228,7 +228,8 @@ public class Actor : MyCoroutine
|
|||
Init_CC();
|
||||
DeadStatus = false;
|
||||
m_Enemy = isEnemy;
|
||||
Make_HUDUI();
|
||||
m_HUDUI = InGameInfo.Ins.Get_HUDUI();
|
||||
m_HUDUI.Init(this, transform);
|
||||
m_ServerData = sdata;
|
||||
CurAnim = eAnim.Idle;
|
||||
Play_Idle();
|
||||
|
|
@ -274,20 +275,6 @@ public class Actor : MyCoroutine
|
|||
m_attackCoolTime = cooltime;
|
||||
}
|
||||
|
||||
protected void Make_HUDUI(Action act = null)
|
||||
{
|
||||
#if UNITY_EDITOR
|
||||
if (SceneManager.GetActiveScene().name == "StatTest" ||
|
||||
SceneManager.GetActiveScene().name == "Settings") return;
|
||||
#endif
|
||||
InGameInfo.Ins.Get_HUDUI(hudui =>
|
||||
{
|
||||
m_HUDUI = hudui;
|
||||
m_HUDUI.name = name;
|
||||
m_HUDUI.Init(this, tf_HUD_HP);
|
||||
act?.Invoke();
|
||||
});
|
||||
}
|
||||
public virtual DamageInfo Get_DamageInfo(ProjectileData _pd, double _attackrate = 1d, bool forceCri = false)
|
||||
{
|
||||
var atkData = Get_CCData(eCC.ATK_Up);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public class StoneActor : Actor
|
|||
|
||||
m_Enemy = true;
|
||||
Init_CC();
|
||||
Make_HUDUI();
|
||||
//Make_HUDUI();
|
||||
|
||||
m_Stat = new ActorStatInfo(m_Role);
|
||||
if (dic_hp.ContainsKey(step))
|
||||
|
|
|
|||
|
|
@ -15,11 +15,9 @@ public class SummonActor : MyActor
|
|||
public void Set(bool isEnemy, Actor owner, float _time, float _attackrate, float _hprate, int projctileamount)
|
||||
{
|
||||
gameObject.SetActive(true);
|
||||
Make_HUDUI(() =>
|
||||
{
|
||||
m_HUDUI.gameObject.SetActive(true);
|
||||
m_HUDUI.Set_HPSlider(1d, 1d);
|
||||
});
|
||||
m_HUDUI = InGameInfo.Ins.Get_HUDUI();
|
||||
m_HUDUI.gameObject.SetActive(true);
|
||||
m_HUDUI.Set_HPSlider(1d, 1d);
|
||||
OwnerActor = owner;
|
||||
|
||||
projctile_amount = projctileamount; projctile_amount.RandomizeCryptoKey();
|
||||
|
|
|
|||
|
|
@ -13,7 +13,13 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
|
||||
ObscuredInt m_DieCount;
|
||||
|
||||
public void Stop_Dungeon() { act_Time = null; StopAllCoroutines(); }
|
||||
public void Stop_Dungeon(bool win)
|
||||
{
|
||||
act_Time = null;
|
||||
StopAllCoroutines();
|
||||
Time.timeScale = 0f;
|
||||
Ingame_DungeonResult.Ins.Show_Result(win);
|
||||
}
|
||||
IEnumerator Co_Update_Time()
|
||||
{
|
||||
while (m_Time > 0f)
|
||||
|
|
@ -25,7 +31,7 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
}
|
||||
|
||||
// 시간 오버
|
||||
Stop_Dungeon();
|
||||
Stop_Dungeon(false);
|
||||
}
|
||||
void Set_MobDie(int mobid)
|
||||
{
|
||||
|
|
@ -33,7 +39,7 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
m_DieCount.RandomizeCryptoKey();
|
||||
act_MobDieCount?.Invoke(m_DieCount);
|
||||
if (m_DieCount == m_MaxDieMobCount)
|
||||
Stop_Dungeon();
|
||||
Stop_Dungeon(true);
|
||||
}
|
||||
|
||||
public void Start_Mimic() { StartCoroutine(Co_Update_Mimic()); }
|
||||
|
|
@ -44,9 +50,8 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
yield return new WaitForSeconds(1f);
|
||||
StartCoroutine(Co_Update_Time());
|
||||
|
||||
var data = MyValue.MyChoiceMapData;
|
||||
var mapdata = table_battlemapconfig.Ins.Get_Data(data.n_MapID);
|
||||
var dungeonData = table_dungeonmapconfig.Ins.Get_Data_orNull(mapdata.e_Dungeon, data.n_DungeonLv);
|
||||
var mapdata = MyValue.MyChoiceMapData.Get_MapData();
|
||||
var dungeonData = MyValue.MyChoiceMapData.Get_DungeonMapData_orNull();
|
||||
var mimicData = table_monsterlist.Ins.Get_Data_orNull(dungeonData.n_MobID);
|
||||
var mobCount = dungeonData.n_MobCount;
|
||||
while (mobCount > 0)
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ public partial class InGameInfo : MyCoroutine
|
|||
public Transform tf_Effects, tf_Objs;
|
||||
|
||||
List<HUDDMGUI> list_HUDDMGUI = new List<HUDDMGUI>();
|
||||
List<HUDUI> list_HUDUI = new List<HUDUI>();
|
||||
HUDLvUp m_HUDLvUp;
|
||||
|
||||
Dictionary<string, List<GameObject>> dic_str_Effect = new Dictionary<string, List<GameObject>>();
|
||||
|
|
@ -112,6 +113,13 @@ public partial class InGameInfo : MyCoroutine
|
|||
}
|
||||
});
|
||||
|
||||
AddrResourceMgr.Ins.LoadObject<GameObject>("Assets/Res_Addr/Ingame/HUDUI.prefab", handle =>
|
||||
{
|
||||
for (int i = 0; i < 100; i++)
|
||||
list_HUDUI.Add(DSUtil.Get_Clone<HUDUI>(handle.Result, NewGameUI.Ins.tf_HUD));
|
||||
list_HUDUI.ForEach(f => f.Off());
|
||||
});
|
||||
|
||||
//var sinfo = ServerInfo.Ins;
|
||||
|
||||
//Init_StageInfo(eGameMode.Stage, sinfo.m_ServerData.Get_Common(eCommon.TotalStage));
|
||||
|
|
@ -167,14 +175,25 @@ public partial class InGameInfo : MyCoroutine
|
|||
}
|
||||
|
||||
#region HUD
|
||||
public void Get_HUDUI(Action<HUDUI> act)
|
||||
public HUDUI Get_HUDUI()
|
||||
{
|
||||
AddrResourceMgr.Ins.LoadObject<GameObject>("Assets/Res_Addr/Ingame/HUDUI.prefab", handle =>
|
||||
HUDUI temp = null;
|
||||
for (int i = 0; i < list_HUDUI.Count; i++)
|
||||
{
|
||||
var hud = DSUtil.Get_Clone<HUDUI>(handle.Result, NewGameUI.Ins.tf_HUD);
|
||||
AddrResourceMgr.Ins.Set_AddressableReleaseSelf(hud.gameObject);
|
||||
act(hud);
|
||||
});
|
||||
if (!list_HUDUI[i].gameObject.activeInHierarchy)
|
||||
{
|
||||
temp = list_HUDUI[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (DSUtil.CheckNull(temp) && list_HUDUI.Count > 0)
|
||||
{
|
||||
temp = DSUtil.Get_Clone<HUDUI>(list_HUDUI[0].gameObject, NewGameUI.Ins.tf_HUD);
|
||||
list_HUDUI.Add(temp);
|
||||
}
|
||||
|
||||
return temp;
|
||||
}
|
||||
|
||||
public HUDDMGUI Get_HUDDMGUI()
|
||||
|
|
@ -189,9 +208,9 @@ public partial class InGameInfo : MyCoroutine
|
|||
}
|
||||
}
|
||||
|
||||
if (DSUtil.CheckNull(temp))
|
||||
if (DSUtil.CheckNull(temp) && list_HUDDMGUI.Count > 0)
|
||||
{
|
||||
temp = DSUtil.Get_Clone<HUDDMGUI>("InGame/HUDDMGUI", NewGameUI.Ins.tf_HUD);
|
||||
temp = DSUtil.Get_Clone<HUDDMGUI>(list_HUDDMGUI[0].gameObject, NewGameUI.Ins.tf_HUD);
|
||||
list_HUDDMGUI.Add(temp);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -58,4 +58,16 @@ public class ChoiceMapData
|
|||
get { return _DungeonLv; }
|
||||
set { _DungeonLv = value; _DungeonLv.RandomizeCryptoKey(); }
|
||||
}
|
||||
|
||||
public BattleMapConfigTableData Get_MapData() { return table_battlemapconfig.Ins.Get_Data(n_MapID); }
|
||||
public DungeonMapConfigTableData Get_DungeonMapData_orNull()
|
||||
{
|
||||
var mapData = Get_MapData();
|
||||
return table_dungeonmapconfig.Ins.Get_Data_orNull(mapData.e_Dungeon, _DungeonLv);
|
||||
}
|
||||
public int Get_DungeonIndex()
|
||||
{
|
||||
var dgData = Get_DungeonMapData_orNull();
|
||||
return DSUtil.CheckNull(dgData) ? 0 : MyEnumToInt.Ins.Get_Int(dgData.e_DungeonType) - 1;
|
||||
}
|
||||
}
|
||||
|
|
@ -79,6 +79,11 @@ public class table_dungeonmapconfig : table_missionbase
|
|||
public List<DungeonMapConfigTableData> Get_DataList(eDungeon dungeon) { return dic_Data[dungeon]; }
|
||||
public DungeonMapConfigTableData Get_Data_orNull(eDungeon dungeon, int lv)
|
||||
{
|
||||
return dic_Data[dungeon].Count <= lv ? dic_Data[dungeon][lv - 1] : null;
|
||||
for (int i = 0; i < dic_Data[dungeon].Count; i++)
|
||||
{
|
||||
if (dic_Data[dungeon][i].n_MapLv == lv)
|
||||
return dic_Data[dungeon][i];
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -40,6 +40,13 @@ public class BattleMapConfigTableData : TableDataBase
|
|||
set { _Portals = value; _Portals.RandomizeCryptoKey(); }
|
||||
} // 포탈 개수
|
||||
|
||||
ObscuredInt _TicketID;
|
||||
public int n_TicketID
|
||||
{
|
||||
get { return _TicketID; }
|
||||
set { _TicketID = value; _TicketID.RandomizeCryptoKey(); }
|
||||
} // 포탈 개수
|
||||
|
||||
|
||||
public override string Get_Name() { return table_localtext.Ins.Get_Text(n_MapName); }
|
||||
public string Get_Desc() { return table_localtext.Ins.Get_Text(n_MapDesc); }
|
||||
|
|
|
|||
|
|
@ -0,0 +1,17 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class DungeonResultBase : BackKeyAdd
|
||||
{
|
||||
public virtual void Set(bool win)
|
||||
{
|
||||
base.Set();
|
||||
}
|
||||
|
||||
public override void OnClick_Back()
|
||||
{
|
||||
base.OnClick_Back();
|
||||
InGameInfo.Ins.Return_To_Lobby();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: dbfb4c867b83d254d99ff5cc32c4fd8b
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
using TMPro;
|
||||
|
||||
public class DungeonResult_Mimic : DungeonResultBase
|
||||
{
|
||||
public TextMeshProUGUI[] texts; // 0 성공 or 실패
|
||||
public MoneyForm[] moneys;
|
||||
|
||||
public override void Set(bool win)
|
||||
{
|
||||
base.Set(win);
|
||||
var sdata = ServerInfo.Ins.m_ServerData;
|
||||
texts[0].text = table_localtext.Ins.Get_Text(win ? 321 : 322);
|
||||
moneys[0].Set(1, 0);
|
||||
moneys[1].Set(2, 0);
|
||||
|
||||
// TODO 정인호 : 승리 시 보상 지급
|
||||
if (win)
|
||||
{
|
||||
}
|
||||
|
||||
// 입장권 차감
|
||||
var mapData = MyValue.MyChoiceMapData.Get_MapData();
|
||||
sdata.Use_Item(mapData.n_TicketID, 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 31ea3ab9c8b8ef8488c9259fe3298745
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
public class Ingame_DungeonResult : MonoBehaviourSingletonTemplate<Ingame_DungeonResult>
|
||||
{
|
||||
public DungeonResultBase[] dungeonResults;
|
||||
|
||||
public void Show_Result(bool win)
|
||||
{
|
||||
dungeonResults[MyValue.MyChoiceMapData.Get_DungeonIndex()].Set(win);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5a7e49710ad54b743bead07336d94e8e
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -52,9 +52,8 @@ public class MapChoiceUI_Dungeon : uScrollViewMgr
|
|||
public void OnClick_GoDungeon()
|
||||
{
|
||||
var mapData = table_battlemapconfig.Ins.Get_Data(SelectMapID);
|
||||
var ticketid = MyEnumToInt.Ins.Get_Int(mapData.e_Dungeon) + 500;
|
||||
// 웨이브는 무한 입장 가능
|
||||
if (ticketid == 504 || ServerInfo.Ins.m_ServerData.Check_ItemAmount(ticketid, 1))
|
||||
if (mapData.n_TicketID == 0 || ServerInfo.Ins.m_ServerData.Check_ItemAmount(mapData.n_TicketID, 1))
|
||||
{
|
||||
NewGameUI.Ins.m_MapChoiceUI.OnClick_Back();
|
||||
|
||||
|
|
|
|||
|
|
@ -63,10 +63,12 @@ public class NewGameUI : MonoBehaviourSingletonTemplate<NewGameUI>
|
|||
DSUtil.InActivateGameObjects(gos, 2);
|
||||
gos_etc[0].SetActive(false);
|
||||
DSUtil.InActivateGameObjects(gos_ingame, 1);
|
||||
var mapData = table_battlemapconfig.Ins.Get_Data(MyValue.MyChoiceMapData.n_MapID);
|
||||
var dungeonData = table_dungeonmapconfig.Ins.Get_Data_orNull(mapData.e_Dungeon, MyValue.MyChoiceMapData.n_DungeonLv);
|
||||
ingame_Dungeons[0].Set(dungeonData.f_Time);
|
||||
ingame_Dungeons[0].Set_MaxMobCount(dungeonData.n_MobCount);
|
||||
var dungeonData = MyValue.MyChoiceMapData.Get_DungeonMapData_orNull();
|
||||
if (!DSUtil.CheckNull(dungeonData))
|
||||
{
|
||||
ingame_Dungeons[0].Set(dungeonData.f_Time);
|
||||
ingame_Dungeons[0].Set_MaxMobCount(dungeonData.n_MobCount);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue