This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
YimMenu/src/views/view_gta_data.cpp

96 lines
1.9 KiB
C++
Raw Normal View History

#include "gui.hpp"
#include "pointers.hpp"
#include "services/gta_data/gta_data_service.hpp"
#include "view.hpp"
namespace big
{
void view::gta_data()
{
if (!g_gta_data_service)
return;
if (g_gta_data_service->cache_needs_update())
{
g_gui->toggle(true);
ImGui::OpenPopup("GAME_CACHE"_T.data());
}
ImGui::SetNextWindowSize({800, 210}, ImGuiCond_FirstUseEver);
ImGui::SetNextWindowPos({200, 200}, ImGuiCond_FirstUseEver);
if (ImGui::BeginPopupModal("GAME_CACHE"_T.data()))
{
switch (g_gta_data_service->state())
{
case eGtaDataUpdateState::NEEDS_UPDATE:
{
ImGui::Text("GAME_CACHE_UPDATE"_T.data());
2023-04-14 18:54:07 +02:00
if (*g_pointers->m_gta.m_is_session_started)
{
if (ImGui::Button("GAME_CACHE_UPDATE_CACHE"_T.data()))
{
g_gta_data_service->update_now();
}
}
else
{
2023-04-16 18:28:49 +00:00
if (ImGui::Button("GAME_CACHE_UPDATE_CACHE"_T.data()))
{
g_gta_data_service->update_now();
}
2023-04-14 18:54:07 +02:00
if (*g_pointers->m_gta.m_game_state == eGameState::Respawn)
2023-04-02 00:37:26 +08:00
{
if (ImGui::Button("GAME_CACHE_ON_INIT"_T.data()))
{
g_gta_data_service->update_on_init();
}
2023-04-16 18:28:49 +00:00
}
}
break;
}
case eGtaDataUpdateState::WAITING_FOR_SINGLE_PLAYER:
{
ImGui::Text("GAME_CACHE_WAITING_FOR_SINGLE_PLAYER"_T.data());
break;
}
case eGtaDataUpdateState::WAITING_FOR_ONLINE:
{
ImGui::Text("GAME_CACHE_WAITING_FOR_ONLINE"_T.data());
break;
}
case eGtaDataUpdateState::UPDATING:
{
ImGui::Text("GAME_CACHE_UPDATING"_T.data());
break;
}
2023-04-02 00:37:26 +08:00
case eGtaDataUpdateState::ON_INIT_WAITING:
{
ImGui::Text("GAME_CACHE_WAITING_FOR_SINGLE_PLAYER"_T.data());
break;
}
case eGtaDataUpdateState::ON_INIT_UPDATE_START:
{
ImGui::Text("GAME_CACHE_UPDATING"_T.data());
break;
}
case eGtaDataUpdateState::IDLE:
{
ImGui::CloseCurrentPopup();
break;
}
}
ImGui::EndPopup();
}
}
}