Project_WL/Assets/Script/UI/NewGameUI.cs

110 lines
4.1 KiB
C#
Raw Normal View History

2024-12-15 01:39:39 +00:00
using TMPro;
using UnityEngine;
using UnityEngine.Rendering.Universal;
public class NewGameUI : MonoBehaviourSingletonTemplate<NewGameUI>
{
public GameObject[] gos; // 0 공용 ui, 1 로비 ui들, 2 인게임 ui들, 3 농장 ui들
public GameObject[] gos_ingame; // 0 스테이지, 1 미믹, 2 미궁, 3 시련, 4 웨이브
public Ingame_DungeonBase[] ingame_Dungeons; // 0 미믹, 1 미궁, 2 시련, 3 웨이브
public GameObject[] gos_etc; // 0 힘민지 레벨업
2024-12-15 01:39:39 +00:00
public Transform tf_HUD;
public GuideQuestUI m_GuideQuestUI;
public MapChoiceUI m_MapChoiceUI;
public BangchiUI m_BangchiUI;
public PCUI m_PCUI;
public EquipmentUI m_EquipmentUI;
public SkillUI m_SkillUI;
public PetUI m_PetUI;
public CollectionUI m_CollectionUI;
public BattleUI m_BattleUI;
public IngamePetCard[] arr_PetCard;
public BotMenuBase[] FarmMenu;
2025-01-10 00:55:09 +00:00
bool ShowQuick = true;
2024-12-15 01:39:39 +00:00
private void Start()
{
//ServerInfo.Ins.Check_OfflineReward();
m_GuideQuestUI.Set();
2025-01-22 07:20:20 +00:00
InGameInfo.Ins.Load_Map(-1);
2024-12-15 01:39:39 +00:00
var cameraData = Camera.main.GetUniversalAdditionalCameraData();
cameraData.cameraStack.Add(go_Camera.GetComponent<Camera>());
}
#if UNITY_EDITOR
private void Update()
{
if (Input.GetKey(KeyCode.P))
UnityEditor.EditorApplication.isPaused = !UnityEditor.EditorApplication.isPaused;
}
#endif
public void SetUI_byGameMode(eGameMode gameMode, bool farm = false)
{
if (farm) gameMode = eGameMode.Stage;
switch (gameMode)
{
case eGameMode.Lobby:
DSUtil.InActivateGameObjects(gos, 0);
gos[1].SetActive(true);
break;
case eGameMode.Stage:
DSUtil.InActivateGameObjects(gos, 0);
gos[2].SetActive(true);
DSUtil.InActivateGameObjects(gos_ingame, 0);
gos_etc[0].SetActive(true);
2024-12-15 01:39:39 +00:00
break;
case eGameMode.MyFarm:
DSUtil.InActivateGameObjects(gos, 3);
break;
case eGameMode.Dungeon:
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);
break;
2024-12-15 01:39:39 +00:00
}
m_BattleUI.Set(eUICardType.Use, ServerInfo.Ins.m_ServerData.Equip.Preset);
go_Camera.SetActive(false);
2024-12-15 01:39:39 +00:00
}
public TextMeshProUGUI text_joysticktype;
public void OnClick_Button(GameObject go)
{
switch (go.name)
{
2025-01-10 00:55:09 +00:00
case "btn_quick":
ShowQuick = !ShowQuick;
go.GetComponent<Animation>().Play(ShowQuick ? "UIRot_Z_0to180" : "UIRot_Z_180to0");
break;
2024-12-15 01:39:39 +00:00
case "btn_map": m_MapChoiceUI.Set(); break;
case "btn_setting": OptionInfo.Ins.Set(); break;
case "btn_pcinfo": m_PCUI.Set(); break;
case "btn_equipment": m_EquipmentUI.Set(); break;
case "btn_skill": m_SkillUI.Set(); break;
case "btn_pet": m_PetUI.Set(); break;
case "btn_collection": m_CollectionUI.Set(); break;
2025-01-22 07:20:20 +00:00
case "btn_farm": InGameInfo.Ins.Load_Map(0); break;
2024-12-15 01:39:39 +00:00
case "btn_btn_plantingseed": break;
case "btn_warehouse": break;
case "btn_farmer": break;
case "btn_shop": break;
case "btn_gofarm": break; // 농장 돌아다니기
case "btn_exit":
if (!DSUtil.CheckNull(FarmFarmUI.Ins) && FarmFarmUI.Ins.isActiveAndEnabled)
FarmFarmUI.Ins.ReturnToFarm();
else
InGameInfo.Ins.Return_To_Lobby();
break;
}
}
public void OnClick_FarmButton(int index) { FarmMenu[index].Set(); }
}