make screen droplets not crash without neo.txd

This commit is contained in:
aap 2020-12-24 09:41:35 +01:00
parent 40b90618ef
commit 70a279febc
1 changed files with 11 additions and 2 deletions

View File

@ -79,8 +79,10 @@ ScreenDroplets::Initialise(void)
void void
ScreenDroplets::InitDraw(void) ScreenDroplets::InitDraw(void)
{ {
if(CustomPipes::neoTxd) if(CustomPipes::neoTxd == nil)
ms_maskTex = CustomPipes::neoTxd->find("dropmask"); return;
ms_maskTex = CustomPipes::neoTxd->find("dropmask");
ms_screenTex = RwTextureCreate(nil); ms_screenTex = RwTextureCreate(nil);
RwTextureSetFilterMode(ms_screenTex, rwFILTERLINEAR); RwTextureSetFilterMode(ms_screenTex, rwFILTERLINEAR);
@ -136,6 +138,10 @@ ScreenDroplets::Shutdown(void)
void void
ScreenDroplets::Process(void) ScreenDroplets::Process(void)
{ {
// no need to do anything if we can't render
if(CustomPipes::neoTxd == nil)
return;
ProcessCameraMovement(); ProcessCameraMovement();
SprayDrops(); SprayDrops();
ProcessMoving(); ProcessMoving();
@ -173,6 +179,9 @@ ScreenDroplets::Render(void)
{ {
ScreenDrop *drop; ScreenDrop *drop;
if(CustomPipes::neoTxd == nil)
return;
DefinedState(); DefinedState();
RwRenderStateSet(rwRENDERSTATETEXTURERASTER, RwTextureGetRaster(ms_maskTex)); RwRenderStateSet(rwRENDERSTATETEXTURERASTER, RwTextureGetRaster(ms_maskTex));
RwRenderStateSet(rwRENDERSTATEFOGENABLE, FALSE); RwRenderStateSet(rwRENDERSTATEFOGENABLE, FALSE);