Implemented controller LED timings for cutscenes (#83)

This commit is contained in:
Hyper
2025-01-16 15:08:57 +00:00
committed by GitHub
parent 666f93843d
commit 63d474ce91
18 changed files with 262 additions and 23 deletions

View File

@@ -8,10 +8,10 @@ namespace SWA::Inspire
{
public:
Hedgehog::Base::CSharedString m_MovieName;
be<float> m_StartTime;
be<float> m_FadeInStartTime;
be<float> m_FadeInEndTime;
be<float> m_FadeOutStartTime;
be<float> m_FadeOutEndTime;
be<float> m_Prepare;
be<float> m_InStart;
be<float> m_InEnd;
be<float> m_OutStart;
be<float> m_OutEnd;
};
}

View File

@@ -0,0 +1,13 @@
#pragma once
#include <SWA.inl>
namespace SWA::Inspire
{
class COpacityAnimationInfo
{
public:
be<float> m_Opacity;
be<float> m_Frame;
};
}

View File

@@ -0,0 +1,21 @@
#pragma once
#include <SWA.inl>
namespace SWA::Inspire
{
struct SSceneData
{
be<float> Frame;
be<uint32_t> Cut;
bool IsPlaying;
SWA_INSERT_PADDING(0x177);
};
class CScene
{
public:
SWA_INSERT_PADDING(0xC0);
xpointer<SSceneData> m_pData;
};
}

View File

@@ -0,0 +1,13 @@
#pragma once
#include <SWA.inl>
namespace SWA::Inspire
{
class CSceneData // : public Hedgehog::Database::CDatabaseData
{
public:
SWA_INSERT_PADDING(0x80);
Hedgehog::Base::CSharedString m_ResourceName;
};
}

View File

@@ -0,0 +1,8 @@
#pragma once
#include <SWA.inl>
namespace SWA::Inspire
{
class CSceneInfo {};
}

View File

@@ -0,0 +1,20 @@
#pragma once
#include <SWA.inl>
namespace SWA::Inspire
{
class CTextureAnimationInfo
{
public:
SWA_INSERT_PADDING(0x10);
Hedgehog::Base::CSharedString m_MovieTex;
Hedgehog::Base::CSharedString m_MovieSfd;
SWA_INSERT_PADDING(0x08);
be<float> m_Prepare;
be<float> m_Start;
be<float> m_End;
be<float> m_Width;
be<float> m_Height;
};
}

View File

@@ -11,7 +11,7 @@ namespace SWA::Inspire
{
public:
xpointer<void> m_pVftable;
boost::shared_ptr<CInspireTextureOverlayInfo> m_spInfo;
boost::shared_ptr<CTextureOverlayInfo> m_spInfo;
xpointer<CScene> m_pScene;
boost::shared_ptr<Hedgehog::Mirage::CTextureData> m_spTextureData;
};

View File

@@ -4,12 +4,11 @@
namespace SWA::Inspire
{
class CInspireTextureOverlayInfo
class CTextureOverlayInfo
{
public:
Hedgehog::Base::CSharedString m_CameraName;
be<uint32_t> m_Unk1;
be<uint32_t> m_Unk2;
be<uint32_t> m_Unk3;
Hedgehog::Base::CSharedString m_Picture;
be<uint32_t> m_Start;
be<uint32_t> m_End;
};
}

View File

@@ -4,5 +4,9 @@
namespace SWA::Sequence::Unit
{
class CPlayMovieUnit : public CUnitBase {};
class CPlayMovieUnit : public CUnitBase
{
public:
Hedgehog::Base::CSharedString m_SceneName;
};
}

View File

@@ -29,12 +29,16 @@ namespace SWA::Sequence::Utility
SVertexData m_TopRight;
SVertexData m_BottomRight;
SVertexData m_BottomLeft;
bool m_MaintainAspectRatio;
bool m_Field1A4;
SWA_INSERT_PADDING(0x18);
be<float> m_TimeElapsed;
};
SWA_INSERT_PADDING(0x18);
xpointer<void> m_pVftable;
Hedgehog::Base::CSharedString m_SceneName;
SWA_INSERT_PADDING(0x10);
xpointer<CRender> m_pRender;
SWA_INSERT_PADDING(0x04);
xpointer<Hedgehog::Base::CSharedString> m_pResourceName;
};
}