언덕의 여왕 완료

This commit is contained in:
Ino 2025-02-04 09:25:38 +09:00
parent a06e738ef4
commit ddcf1c24e4
7 changed files with 29636 additions and 22 deletions

View File

@ -70,6 +70,6 @@ messageinfo 엄청 느린 버그
- 맵 최적화
- 몬스터 패트롤 거리 조절
- 점수와 골드 (기본 1점, 10골드만 주는 중(밸런스 필요))
- 특정 오브젝트와 상호 작용 시 즉시 몬스터 생성
- 점수 일정 이상 보상 지급
PC 기본 공격
-

File diff suppressed because it is too large Load Diff

View File

@ -202,7 +202,7 @@ MonoBehaviour:
m_MapZoneData:
- go_portal: {fileID: 1121419285893260204}
go_reincarnation: {fileID: 1121419285893260204}
go_mazeNextPortal: {fileID: 0}
go_mazeNextPortal: {fileID: 6820615792186630848}
tf_Farmer: {fileID: 0}
tf_Obj: []
--- !u!1 &5278036658280951977
@ -331,11 +331,6 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 6249302636439080431}
m_Modifications:
- target: {fileID: 375984183340188518, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3933715443776890076, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,
type: 3}
propertyPath: m_LocalPosition.x
@ -386,11 +381,6 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4361977242221661733, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,
type: 3}
propertyPath: m_Layer
value: 4
objectReference: {fileID: 0}
- target: {fileID: 6519324125568224569, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,
type: 3}
propertyPath: m_Name
@ -401,6 +391,12 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 8b4429e019ad2cb4b81c3f413ae9aa98, type: 3}
--- !u!1 &6820615792186630848 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 408718094103777688, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,
type: 3}
m_PrefabInstance: {fileID: 6560547417477919576}
m_PrefabAsset: {fileID: 0}
--- !u!4 &7898436642533971844 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 3933715443776890076, guid: 8b4429e019ad2cb4b81c3f413ae9aa98,

View File

@ -168,10 +168,12 @@ public class PCActor : MyActor
#endif
LoadMapMgr.Ins.Get_PortalPos(MyValue.MyChoiceMapData, Set_Warp);
var dgData = MyValue.MyChoiceMapData.Get_DungeonMapData_orNull();
if (!DSUtil.CheckNull(dgData) && dgData.e_DungeonType == eDungeon.d2_Maze)
if (!DSUtil.CheckNull(dgData))
{
LoadMapMgr.Ins.Set_MazeMap(MyValue.MyChoiceMapData.n_PortalIndex);
LoadMapMgr.Ins.Set_MazeNextPortal(MyValue.MyChoiceMapData.n_PortalIndex, false);
if (dgData.e_DungeonType == eDungeon.d2_Maze)
LoadMapMgr.Ins.Set_MazeMap(MyValue.MyChoiceMapData.n_PortalIndex);
if (dgData.e_DungeonType == eDungeon.d2_Maze || dgData.e_DungeonType == eDungeon.d4_Wave)
LoadMapMgr.Ins.Set_MazeNextPortal(MyValue.MyChoiceMapData.n_PortalIndex, false);
}
}
else

View File

@ -3,7 +3,6 @@ using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SocialPlatforms.Impl;
public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
{
@ -12,7 +11,7 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
public Action<double> act_DamageUI;
public Action<int> act_WaveScoreUI, act_WaveLifeUI, act_WaveGold;
public float m_TotalTime;
public float m_TotalTime, WaveMakeGapTime;
Dictionary<int, ObscuredFloat> dic_time = new Dictionary<int, ObscuredFloat>();
public void Set_Time(int floor, float time)
{
@ -235,12 +234,13 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
yield return new WaitForSeconds(1f);
StartCoroutine(Co_Update_Time());
float min = 0f, max = 15f;
var mapdata = MyValue.MyChoiceMapData.Get_MapData();
var dungeonData = MyValue.MyChoiceMapData.Get_DungeonMapData_orNull();
float min = 0f, max = 15f;
int iteration = 0;
while (true)
{
WaveMakeGapTime = dungeonData.f_MakeGap;
var mobCount = dungeonData.n_MobCount;
while (mobCount > 0)
{
@ -251,7 +251,15 @@ public class DungeonInfo : MonoBehaviourSingletonTemplate<DungeonInfo>
yield return new WaitForSeconds(0.5f);
}
yield return new WaitForSeconds(dungeonData.f_MakeGap);
while (WaveMakeGapTime > 0f)
{
yield return null;
WaveMakeGapTime -= Time.deltaTime;
LoadMapMgr.Ins.Set_MazeNextPortal(MyValue.MyChoiceMapData.n_PortalIndex,
DSUtil.CheckNull(ActorInfo.Ins.Get_Nearest_EnemyActor_orNull(false, Vector3.zero, 1000f)));
}
LoadMapMgr.Ins.Set_MazeNextPortal(MyValue.MyChoiceMapData.n_PortalIndex, false);
++iteration;
}
}

View File

@ -0,0 +1,18 @@
using UnityEngine;
public class Ingame_Wave_Obj : MonoBehaviour
{
private void OnEnable() { MyValue.m_RealCamera.Set_TargetShow(transform); }
private void OnTriggerEnter(Collider other) { ProcessCollider(other); }
private void OnCollisionEnter(Collision collision) { ProcessCollider(collision.collider); }
private void ProcessCollider(Collider other)
{
var actor = other.GetComponent<Actor>();
if (!DSUtil.CheckNull(actor) && actor.IsRole(eRole.PC))
{
// 다음 웨이브 즉시 소환 시작
DungeonInfo.Ins.WaveMakeGapTime = 0f;
gameObject.SetActive(false);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 62b453079cb6c8c489cc71a8326f7232
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: