몹 및 포탈 배치 (챕터 클리어 관련 작업 필요)

This commit is contained in:
Ino 2025-03-10 11:12:15 +09:00
parent 659213337f
commit a8c41d9e07
7 changed files with 1550 additions and 8090 deletions

View File

@ -65,7 +65,8 @@ messageinfo 엄청 느린 버그
- 몬스터 패트롤 거리 조절
- 점수와 골드 (기본 1점, 10골드만 주는 중(밸런스 필요))
챕터 보스 처치 후 다음 챕터 포탈 활성화 : 다음 챕터로
- 이동 불가능 -> 포탈로 카메라 회전 -> 포탈 활성화 -> 이동 가능
1챕터 맵 배치
- 포탈, 필드보스, 부활의 성소 등
- 포탈, 필드보스, 부활의 성소, 챕터보스

File diff suppressed because it is too large Load Diff

View File

@ -551,6 +551,7 @@ MonoBehaviour:
m_animation: {fileID: 0}
_target: {fileID: 0}
isTarget: 0
m_HUDUI: {fileID: 0}
tf_MeeleAttackPos: {fileID: 0}
MagicID: 0
HealCount: 0
@ -607,7 +608,7 @@ BoxCollider:
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.27334672, y: 0.79515254, z: 0.2006943}
m_Size: {x: 0.27334672, y: 2, z: 0.2006943}
m_Center: {x: -0.00000030795735, y: 0.6431725, z: -0.003517603}
--- !u!195 &-6641780185587953727
NavMeshAgent:

View File

@ -443,6 +443,7 @@ MonoBehaviour:
m_animation: {fileID: 0}
_target: {fileID: 0}
isTarget: 0
m_HUDUI: {fileID: 0}
tf_MeeleAttackPos: {fileID: 0}
MagicID: 0
HealCount: 0
@ -497,7 +498,7 @@ BoxCollider:
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.27334672, y: 0.79515254, z: 0.2006943}
m_Size: {x: 0.27334672, y: 2, z: 0.2006943}
m_Center: {x: -0.00000030795735, y: 0.6431725, z: -0.003517603}
--- !u!195 &-7105394180378673800
NavMeshAgent:

View File

@ -11,12 +11,21 @@ public class IndicatorInfo : MonoBehaviourSingletonTemplate<IndicatorInfo>
DontDestroyOnLoad(go.gameObject);
}
Dictionary<string, GameObject> dic_indicator = new Dictionary<string, GameObject>();
Dictionary<string, List<GameObject>> dic_indicator = new Dictionary<string, List<GameObject>>();
public void Make_Indicator(string indicatorName, Action<GameObject> action)
{
if (dic_indicator.ContainsKey(indicatorName))
action(dic_indicator[indicatorName]);
{
for (int i = 0; i < dic_indicator[indicatorName].Count; i++)
{
if (!dic_indicator[indicatorName][i].activeInHierarchy)
{
action(dic_indicator[indicatorName][i]);
break;
}
}
}
else
AddrResourceMgr.Ins.LoadObject<GameObject>($"Assets/Res_Addr/Obj/{indicatorName}.prefab", handle =>
{
@ -24,7 +33,9 @@ public class IndicatorInfo : MonoBehaviourSingletonTemplate<IndicatorInfo>
go.transform.parent = transform;
AddrResourceMgr.Ins.Set_AddressableReleaseSelf(go);
action(go);
dic_indicator.Add(indicatorName, go);
if (!dic_indicator.ContainsKey(indicatorName))
dic_indicator.Add(indicatorName, new List<GameObject>());
dic_indicator[indicatorName].Add(go);
});
}
}

View File

@ -2,7 +2,9 @@ using UnityEngine;
public class FieldBossData : MyCoroutine
{
public bool isChapterBoss;
public int n_MonsterID, n_SpawnerId;
public float RegenTime = 10f;
MobActor m_FieldBoss;
@ -24,6 +26,10 @@ public class FieldBossData : MyCoroutine
private void AfterDie(int obj)
{
Set_Coroutine(() => { m_FieldBoss.On_Regen(); }, 10f);
Set_Coroutine(() => { m_FieldBoss.On_Regen(); }, RegenTime);
if (isChapterBoss)
{
// TODO 정인호 : 챕터 보스 처치 후 다음 챕터로 가는 포탈 열기
}
}
}

View File

@ -8,6 +8,7 @@ public class MapData : MonoBehaviour
{
public Material material_skybox;
public GameObject[] gos_map;
public GameObject go_nextchapter; // 다음 챕터 포탈 활성화
[SerializeField] public List<MapZoneData> m_MapZoneData;
void Start()
@ -19,6 +20,8 @@ public class MapData : MonoBehaviour
RenderSettings.ambientGroundColor = new Color32(79, 79, 115, 255);
RenderSettings.fog = false;
RenderSettings.reflectionIntensity = 0f;
if (go_nextchapter) go_nextchapter.SetActive(false);
}
public MapZoneData Get_MapZoneData(int index) { return m_MapZoneData[index]; }