Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-1-2-2013-Decompilation
Path: blob/main/RSDKv4/NativeObjects/CreditText.cpp
817 views
1
#include "RetroEngine.hpp"
2
3
void CreditText_Create(void *objPtr)
4
{
5
RSDK_THIS(CreditText);
6
self->alpha = 255;
7
self->state = CREDITTEXT_STATE_SETUP;
8
self->textureID = LoadTexture("Data/Game/Menu/DevLogos.png", TEXFMT_RGBA8888);
9
}
10
void CreditText_Main(void *objPtr)
11
{
12
RSDK_THIS(CreditText);
13
14
if (self->useRenderMatrix) {
15
NewRenderState();
16
SetRenderMatrix(&self->renderMatrix);
17
}
18
19
switch (self->state) {
20
case CREDITTEXT_STATE_SETUP:
21
self->state = CREDITTEXT_STATE_DISPLAY;
22
self->alignOffset = GetTextWidth(self->text, self->fontID, self->scale) * 0.5;
23
// Fallthrough
24
default:
25
SetRenderBlendMode(RENDER_BLEND_ALPHA);
26
SetRenderVertexColor((self->color >> 16) & 0xFF, (self->color >> 8) & 0xFF, self->color & 0xFF);
27
RenderTextClipped(self->text, self->fontID, self->textX - self->alignOffset, self->textY, self->textZ, self->scale, self->alpha);
28
SetRenderVertexColor(0xFF, 0xFF, 0xFF);
29
break;
30
31
case CREDITTEXT_STATE_IMAGE:
32
SetRenderBlendMode(RENDER_BLEND_ALPHA);
33
RenderImageClipped(-64.0, self->textY, self->textZ, 0.35, 0.35, 157.0, 77.0, 314.0, 154.0, 2.0, 2.0, 255, self->textureID);
34
RenderImageClipped(64.0, self->textY, self->textZ, 0.35, 0.35, 92.0, 92.0, 184.0, 184.0, 320.0, 2.0, 255, self->textureID);
35
break;
36
}
37
38
if (self->useRenderMatrix) {
39
NewRenderState();
40
SetRenderMatrix(NULL);
41
}
42
}
43
44