mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-08 13:44:56 +00:00
HUD and CPlayer bug fixes
This commit is contained in:
@@ -63,12 +63,12 @@ bool CCEKeyframeEmitter::GetValue(int frame, zeus::CColor& valOut) const
|
||||
|
||||
bool CCEConstant::GetValue(int frame, zeus::CColor& valOut) const
|
||||
{
|
||||
float a, b, c, d;
|
||||
x4_a->GetValue(frame, a);
|
||||
x8_b->GetValue(frame, b);
|
||||
xc_c->GetValue(frame, c);
|
||||
x10_d->GetValue(frame, d);
|
||||
valOut = zeus::CColor(a, b, c, d);
|
||||
float r, g, b, a;
|
||||
x4_r->GetValue(frame, r);
|
||||
x8_g->GetValue(frame, g);
|
||||
xc_b->GetValue(frame, b);
|
||||
x10_a->GetValue(frame, a);
|
||||
valOut = zeus::CColor(r, g, b, a);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,14 +24,14 @@ public:
|
||||
|
||||
class CCEConstant : public CColorElement
|
||||
{
|
||||
std::unique_ptr<CRealElement> x4_a;
|
||||
std::unique_ptr<CRealElement> x8_b;
|
||||
std::unique_ptr<CRealElement> xc_c;
|
||||
std::unique_ptr<CRealElement> x10_d;
|
||||
std::unique_ptr<CRealElement> x4_r;
|
||||
std::unique_ptr<CRealElement> x8_g;
|
||||
std::unique_ptr<CRealElement> xc_b;
|
||||
std::unique_ptr<CRealElement> x10_a;
|
||||
public:
|
||||
CCEConstant(std::unique_ptr<CRealElement>&& a, std::unique_ptr<CRealElement>&& b,
|
||||
std::unique_ptr<CRealElement>&& c, std::unique_ptr<CRealElement>&& d)
|
||||
: x4_a(std::move(a)), x8_b(std::move(b)), xc_c(std::move(c)), x10_d(std::move(d)) {}
|
||||
: x4_r(std::move(a)), x8_g(std::move(b)), xc_b(std::move(c)), x10_a(std::move(d)) {}
|
||||
bool GetValue(int frame, zeus::CColor& colorOut) const;
|
||||
};
|
||||
|
||||
|
||||
@@ -5,15 +5,16 @@
|
||||
namespace urde
|
||||
{
|
||||
|
||||
CUVEAnimTexture::CUVEAnimTexture(TToken<CTexture>&& tex, std::unique_ptr<CIntElement>&& a,
|
||||
std::unique_ptr<CIntElement>&& b, std::unique_ptr<CIntElement>&& c,
|
||||
std::unique_ptr<CIntElement>&& d, std::unique_ptr<CIntElement>&& e, bool f)
|
||||
: x4_tex(std::move(tex)), x24_loop(f), x28_cycleFrames(std::move(e))
|
||||
CUVEAnimTexture::CUVEAnimTexture(TToken<CTexture>&& tex, std::unique_ptr<CIntElement>&& tileW,
|
||||
std::unique_ptr<CIntElement>&& tileH, std::unique_ptr<CIntElement>&& strideW,
|
||||
std::unique_ptr<CIntElement>&& strideH, std::unique_ptr<CIntElement>&& cycleFrames,
|
||||
bool loop)
|
||||
: x4_tex(std::move(tex)), x24_loop(loop), x28_cycleFrames(std::move(cycleFrames))
|
||||
{
|
||||
a->GetValue(0, x10_tileW);
|
||||
b->GetValue(0, x14_tileH);
|
||||
c->GetValue(0, x18_strideW);
|
||||
d->GetValue(0, x1c_strideH);
|
||||
tileW->GetValue(0, x10_tileW);
|
||||
tileH->GetValue(0, x14_tileH);
|
||||
strideW->GetValue(0, x18_strideW);
|
||||
strideH->GetValue(0, x1c_strideH);
|
||||
|
||||
int width = x4_tex.GetObj()->GetWidth();
|
||||
int height = x4_tex.GetObj()->GetHeight();
|
||||
|
||||
@@ -55,9 +55,9 @@ struct CUVEAnimTexture : public CUVElement
|
||||
std::unique_ptr<CIntElement> x28_cycleFrames;
|
||||
std::vector<SUVElementSet> x2c_uvElems;
|
||||
public:
|
||||
CUVEAnimTexture(TToken<CTexture>&& tex, std::unique_ptr<CIntElement>&& a, std::unique_ptr<CIntElement>&& b,
|
||||
std::unique_ptr<CIntElement>&& c, std::unique_ptr<CIntElement>&& d,
|
||||
std::unique_ptr<CIntElement>&& e, bool f);
|
||||
CUVEAnimTexture(TToken<CTexture>&& tex, std::unique_ptr<CIntElement>&& tileW, std::unique_ptr<CIntElement>&& tileH,
|
||||
std::unique_ptr<CIntElement>&& strideW, std::unique_ptr<CIntElement>&& strideH,
|
||||
std::unique_ptr<CIntElement>&& cycleFrames, bool loop);
|
||||
TLockedToken<CTexture> GetValueTexture(int frame) const
|
||||
{
|
||||
return TLockedToken<CTexture>(x4_tex);
|
||||
|
||||
Reference in New Issue
Block a user