diff options
Diffstat (limited to 'src/extras')
-rw-r--r-- | src/extras/debugmenu.h | 2 | ||||
-rw-r--r-- | src/extras/screendroplets.cpp | 13 |
2 files changed, 12 insertions, 3 deletions
diff --git a/src/extras/debugmenu.h b/src/extras/debugmenu.h index eb56c8f9..c2198aca 100644 --- a/src/extras/debugmenu.h +++ b/src/extras/debugmenu.h @@ -15,7 +15,7 @@ struct MenuEntry Menu *menu; MenuEntry(const char *name); - virtual ~MenuEntry(void) {} + virtual ~MenuEntry(void) { free((void*)name); } }; typedef MenuEntry DebugMenuEntry; diff --git a/src/extras/screendroplets.cpp b/src/extras/screendroplets.cpp index 3f91a754..54866bea 100644 --- a/src/extras/screendroplets.cpp +++ b/src/extras/screendroplets.cpp @@ -79,8 +79,10 @@ ScreenDroplets::Initialise(void) void ScreenDroplets::InitDraw(void) { - if(CustomPipes::neoTxd) - ms_maskTex = CustomPipes::neoTxd->find("dropmask"); + if(CustomPipes::neoTxd == nil) + return; + + ms_maskTex = CustomPipes::neoTxd->find("dropmask"); ms_screenTex = RwTextureCreate(nil); RwTextureSetFilterMode(ms_screenTex, rwFILTERLINEAR); @@ -136,6 +138,10 @@ ScreenDroplets::Shutdown(void) void ScreenDroplets::Process(void) { + // no need to do anything if we can't render + if(CustomPipes::neoTxd == nil) + return; + ProcessCameraMovement(); SprayDrops(); ProcessMoving(); @@ -173,6 +179,9 @@ ScreenDroplets::Render(void) { ScreenDrop *drop; + if(CustomPipes::neoTxd == nil) + return; + DefinedState(); RwRenderStateSet(rwRENDERSTATETEXTURERASTER, RwTextureGetRaster(ms_maskTex)); RwRenderStateSet(rwRENDERSTATEFOGENABLE, FALSE); |