Basic IGGY renderer implementation, do not PR.

This commit is contained in:
JuiceyDev
2026-03-05 16:54:56 +01:00
parent 299564be0a
commit cb4e0e82b7
6 changed files with 157 additions and 24 deletions

View File

@@ -2,6 +2,10 @@
#include "UI.h"
#include "UIScene_Intro.h"
#ifdef __linux__
static int s_introTickCount = 0;
#endif
#include <Linux_UIController.h>
UIScene_Intro::UIScene_Intro(int iPad, void *initData, UILayer *parentLayer) : UIScene(iPad, parentLayer)
{
@@ -9,6 +13,9 @@ UIScene_Intro::UIScene_Intro(int iPad, void *initData, UILayer *parentLayer) : U
initialiseMovie();
m_bIgnoreNavigate = false;
m_bAnimationEnded = false;
#ifdef __linux__
s_introTickCount = 0;
#endif
bool bSkipESRB = false;
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
@@ -166,3 +173,22 @@ void UIScene_Intro::handleGainFocus(bool navBack)
ui.NavigateToScene(0,eUIScene_MainMenu);
}
}
#ifdef __linux__
void UIScene_Intro::tick()
{
// Call base tick first (processes Iggy ticking)
UIScene::tick();
// Auto-skip the intro after 60 ticks (~2 seconds at 30fps)
// since we have no SWF renderer to play the intro animation
s_introTickCount++;
if(s_introTickCount == 60 && !m_bIgnoreNavigate)
{
fprintf(stderr, "[Linux] Auto-skipping intro -> MainMenu after %d ticks\n", s_introTickCount);
m_bIgnoreNavigate = true;
// Skip straight to MainMenu, bypassing SaveMessage (no SWF interaction possible)
ui.NavigateToScene(0, eUIScene_MainMenu);
}
}
#endif