악몽 작업 중.... 2
This commit is contained in:
parent
bdc87796f5
commit
1e253839e5
|
|
@ -54,6 +54,14 @@ messageinfo 엄청 느린 버그
|
|||
수상한 미궁
|
||||
- 맵 벽과 플레이 사이 더 멀게 만들자 (카메라가 벽 밖에 안 나가게)
|
||||
- 매월 초기화 후 보상 우편으로 지급
|
||||
- 추가 구매 구현 필요
|
||||
- 입장권 추가 구매 구현 필요
|
||||
- 결과 화면 (보상 지급)
|
||||
- 랭킹 15분마다 갱신
|
||||
|
||||
악몽의 시련
|
||||
- 결과 화면 (보상 지급)
|
||||
- 입장권 추가 구매 구현 필요
|
||||
- 랭킹 UI 통합(랭킹 및 랭킹 보상이 기본)
|
||||
- 데미지 합계 저장
|
||||
- 랜덤 보스 몬스터 생성 및 무적
|
||||
- 인게임 UI
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -422,7 +422,7 @@ public class Actor : MyCoroutine
|
|||
Check_CC_byAttack(_dinfo);
|
||||
|
||||
#if UNITY_EDITOR
|
||||
if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "StatTest")
|
||||
if (SceneManager.GetActiveScene().name == "StatTest")
|
||||
{
|
||||
MainToStatTest.Ins.Set_Dmglabel(HUDBase.Get_TextColor(_dinfo.Beater.m_AttackType) + (_dinfo.Critical == eStat.CRI || _dinfo.Critical == eStat.M_CRI ? "" + _dinfo.Critical + " " : " ") + _dinfo.Damage);
|
||||
return;
|
||||
|
|
@ -433,7 +433,11 @@ public class Actor : MyCoroutine
|
|||
{
|
||||
if (IsDead()) return;
|
||||
|
||||
m_Stat.Set_Stat(false, eStat.HP, _dinfo.Damage);
|
||||
if (MyValue.MyChoiceMapData.Get_MapData().e_Dungeon == eDungeon.d3_Nightmare)
|
||||
DungeonInfo.Ins.act_Damage_byMob(_dinfo.Damage);
|
||||
else
|
||||
m_Stat.Set_Stat(false, eStat.HP, _dinfo.Damage);
|
||||
|
||||
_dinfo.act_returnLastDmg?.Invoke(_dinfo.Damage);
|
||||
_dinfo.act_CriAfterHit?.Invoke(_dinfo.Critical);
|
||||
Add_ReceiveDmg(_dinfo.Damage);
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
{
|
||||
public Action<float> act_Time;
|
||||
public Action<int> act_MobDieCount;
|
||||
public Action<double> act_Damage_byMob;
|
||||
public Action<double> act_DamageUI;
|
||||
|
||||
public float m_TotalTime;
|
||||
Dictionary<int, ObscuredFloat> dic_time = new Dictionary<int, ObscuredFloat>();
|
||||
|
|
@ -41,6 +43,13 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
set { _MazeClear = value; _MazeClear.RandomizeCryptoKey(); }
|
||||
}
|
||||
|
||||
protected ObscuredDouble _TotalDamage;
|
||||
public double m_TotalDamage
|
||||
{
|
||||
get { return _TotalDamage; }
|
||||
set { _TotalDamage = value; _TotalDamage.RandomizeCryptoKey(); }
|
||||
}
|
||||
|
||||
eDungeon m_Dungeon;
|
||||
bool bTotalTimeUpdate = false;
|
||||
|
||||
|
|
@ -111,6 +120,7 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
{
|
||||
m_TotalTime = 0f;
|
||||
m_MazeClear = 0;
|
||||
m_TotalDamage = 0f;
|
||||
}
|
||||
bTotalTimeUpdate = true;
|
||||
|
||||
|
|
@ -165,4 +175,16 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
|
|||
NewGameUI.Ins.Refresh_DungeonUI(m_MazeClear >= 5 ? 1 : 0);
|
||||
Start_Dungeon(false);
|
||||
}
|
||||
|
||||
public void Set_Nightmare(Action<double> actui)
|
||||
{
|
||||
act_DamageUI = actui;
|
||||
act_Damage_byMob = Add_TotalDmg;
|
||||
Add_TotalDmg(-m_TotalDamage);
|
||||
}
|
||||
public void Add_TotalDmg(double dmg)
|
||||
{
|
||||
m_TotalDamage += dmg;
|
||||
act_DamageUI?.Invoke(m_TotalDamage);
|
||||
}
|
||||
}
|
||||
|
|
@ -7,7 +7,11 @@ public class DungeonResult_Mimic : DungeonResultBase
|
|||
|
||||
public override void Set(bool? win)
|
||||
{
|
||||
if (DSUtil.CheckNull(win)) return; // 포기
|
||||
if (DSUtil.CheckNull(win))
|
||||
{
|
||||
InGameInfo.Ins.Return_To_Lobby();
|
||||
return; // 포기
|
||||
}
|
||||
|
||||
base.Set(win);
|
||||
var sdata = ServerInfo.Ins.m_ServerData;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,26 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using TMPro;
|
||||
|
||||
public class DungeonResult_Nightmare : DungeonResultBase
|
||||
{
|
||||
public TextMeshProUGUI[] texts;
|
||||
|
||||
public override void Set(bool? win)
|
||||
{
|
||||
base.Set(win);
|
||||
|
||||
var sdata = ServerInfo.Ins.m_ServerData;
|
||||
var BeforeDmg = 0d;
|
||||
var CurDmg = 0d;
|
||||
texts[0].text = DSUtil.Format("기존 데미지 : {0}\n\n현재 데미지 : {1}", BeforeDmg, CurDmg);
|
||||
|
||||
if (CurDmg > BeforeDmg)
|
||||
{
|
||||
//sdata.Set_DungeonLv(eDungeon.d2_Maze, nextFloor);
|
||||
ServerInfo.Ins.Write(null, false);
|
||||
|
||||
ServerInfo.Ins.Save_Rank("Rank_Damage", new List<string> { Math.Truncate(CurDmg).ToString() });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9f51e67d3db34e240bb8a4d1ba544942
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -3,7 +3,7 @@ using UnityEngine;
|
|||
|
||||
public class Ingame_Dungeon : MonoBehaviour
|
||||
{
|
||||
public Ingame_DungeonBase[] ingame_Dungeons; // 0 미믹, 1 미궁, 2 시련, 3 웨이브
|
||||
public Ingame_DungeonBase[] ingame_Dungeons; // 0 미믹, 1 미궁, 2 악몽, 3 웨이브
|
||||
public TextMeshProUGUI[] texts_base; // 0 던전 정보, 1 남은 시간
|
||||
|
||||
public void Set(float time, int maxMobCount)
|
||||
|
|
@ -30,6 +30,8 @@ public class Ingame_Dungeon : MonoBehaviour
|
|||
texts_base[0].text = $"{mapData.Get_Name()} F{MyValue.MyChoiceMapData.n_DungeonLv}";
|
||||
break;
|
||||
case eDungeon.d3_Nightmare:
|
||||
texts_base[0].text = $"{mapData.Get_Name()} {MyValue.MyChoiceMapData.n_Difficult}";
|
||||
DungeonInfo.Ins.Set_Nightmare(ingame_Dungeons[MyValue.MyChoiceMapData.Get_DungeonIndex()].Set_TotalDmg);
|
||||
break;
|
||||
case eDungeon.d4_Wave:
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -29,4 +29,5 @@ public class Ingame_DungeonBase : MonoBehaviour
|
|||
DungeonInfo.Ins.act_MobDieCount = Add_MobCount;
|
||||
}
|
||||
public virtual void Add_MobCount(int mobid) { }
|
||||
public virtual void Set_TotalDmg(double dmg) { }
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
using TMPro;
|
||||
|
||||
public class Ingame_Nightmare : Ingame_DungeonBase
|
||||
{
|
||||
public TextMeshProUGUI[] texts; // 0 데미지
|
||||
|
||||
public override void Set_TotalDmg(double dmg)
|
||||
{
|
||||
texts[0].text = NumberFormatter.FormatNumber(dmg);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 40cc608dcd324954ab5af90763be2a46
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -104,11 +104,7 @@ public class NewGameUI : MonoBehaviourSingletonTemplate<NewGameUI>
|
|||
if (!DSUtil.CheckNull(FarmFarmUI.Ins) && FarmFarmUI.Ins.isActiveAndEnabled)
|
||||
FarmFarmUI.Ins.ReturnToFarm();
|
||||
else if (InGameInfo.Ins.IsGameMode(eGameMode.Dungeon))
|
||||
{
|
||||
DungeonInfo.Ins.Stop_Dungeon(null);
|
||||
if (MyValue.MyChoiceMapData.Get_MapData().e_Dungeon != eDungeon.d2_Maze)
|
||||
InGameInfo.Ins.Return_To_Lobby();
|
||||
}
|
||||
else
|
||||
InGameInfo.Ins.Return_To_Lobby();
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in New Issue