Path: blob/main/RSDKv4/NativeObjects/CWSplash.cpp
817 views
#include "RetroEngine.hpp"12void CWSplash_Create(void *objPtr)3{4RSDK_THIS(CWSplash);5self->state = CWSPLASH_STATE_ENTER;6self->rectAlpha = 320.0;7self->textureID = LoadTexture("Data/Game/Menu/CWLogo.png", TEXFMT_RGBA8888);8}9void CWSplash_Main(void *objPtr)10{11RSDK_THIS(CWSplash);1213switch (self->state) {14case CWSPLASH_STATE_ENTER:15self->rectAlpha -= 300.0 * Engine.deltaTime;16if (self->rectAlpha < -320.0)17self->state = CWSPLASH_STATE_EXIT;18SetRenderBlendMode(RENDER_BLEND_ALPHA);19RenderRect(-SCREEN_CENTERX_F, SCREEN_CENTERY_F, 160.0, SCREEN_XSIZE_F, SCREEN_YSIZE_F, 0xFF, 0x90, 0x00, 0xFF);20SetRenderBlendMode(RENDER_BLEND_ALPHA);21RenderImage(0.0, 0.0, 160.0, 0.25, 0.25, 512.0, 256.0, 1024.0, 512.0, 0.0, 0.0, 255, self->textureID);22RenderRect(-SCREEN_CENTERX_F, SCREEN_CENTERY_F, 160.0, SCREEN_XSIZE_F, SCREEN_YSIZE_F, 0, 0, 0, self->rectAlpha);23break;24case CWSPLASH_STATE_EXIT:25self->rectAlpha += 300.0 * Engine.deltaTime;26if (self->rectAlpha > 512.0)27self->state = CWSPLASH_STATE_SPAWNTITLE;28SetRenderBlendMode(RENDER_BLEND_ALPHA);29RenderRect(-SCREEN_CENTERX_F, SCREEN_CENTERY_F, 160.0, SCREEN_XSIZE_F, SCREEN_YSIZE_F, 0xFF, 0x90, 0x00, 0xFF);30SetRenderBlendMode(RENDER_BLEND_ALPHA);31RenderImage(0.0, 0.0, 160.0, 0.25, 0.25, 512.0, 256.0, 1024.0, 512.0, 0.0, 0.0, 255, self->textureID);32RenderRect(-SCREEN_CENTERX_F, SCREEN_CENTERY_F, 160.0, SCREEN_XSIZE_F, SCREEN_YSIZE_F, 0, 0, 0, self->rectAlpha);33break;34case CWSPLASH_STATE_SPAWNTITLE: ResetNativeObject(self, TitleScreen_Create, TitleScreen_Main); break;35}36}373839