Rance Quest: Do not render suspended TapirEngine sprites

This commit is contained in:
kichikuou
2024-09-15 08:04:14 +09:00
parent 34258511b9
commit 71debfbb65
3 changed files with 26 additions and 10 deletions
+2
View File
@@ -195,6 +195,8 @@ struct RE_plugin *RE_plugin_new(enum RE_plugin_version version);
void RE_plugin_free(struct RE_plugin *plugin);
bool RE_plugin_bind(struct RE_plugin *plugin, int sprite);
bool RE_plugin_unbind(struct RE_plugin *plugin);
bool RE_plugin_suspend(struct RE_plugin *plugin);
bool RE_plugin_resume(struct RE_plugin *plugin);
bool RE_build_model(struct RE_plugin *plugin, int elapsed_ms);
bool RE_set_viewport(struct RE_plugin *plugin, int x, int y, int width, int height);
bool RE_set_projection(struct RE_plugin *plugin, float width, float height, float near, float far, float deg);
+22
View File
@@ -277,6 +277,28 @@ bool RE_plugin_unbind(struct RE_plugin *plugin)
return true;
}
bool RE_plugin_suspend(struct RE_plugin *plugin)
{
if (!plugin)
return false;
plugin->suspended = true;
struct sact_sprite *sp = sact_try_get_sprite(plugin->sprite);
if (sp)
sprite_set_show(sp, false);
return true;
}
bool RE_plugin_resume(struct RE_plugin *plugin)
{
if (!plugin)
return false;
plugin->suspended = false;
struct sact_sprite *sp = sact_try_get_sprite(plugin->sprite);
if (sp)
sprite_set_show(sp, true);
return true;
}
bool RE_build_model(struct RE_plugin *plugin, int elapsed_ms)
{
if (!plugin)
+2 -10
View File
@@ -1865,11 +1865,7 @@ HLL_WARN_UNIMPLEMENTED(false, bool, TapirEngine, SetThreadLoadingMode, int plugi
static bool TapirEngine_Suspend(int plugin_number)
{
struct RE_plugin *p = get_plugin(plugin_number);
if (!p)
return false;
p->suspended = true;
return true;
return RE_plugin_suspend(get_plugin(plugin_number));
}
static bool TapirEngine_IsSuspend(int plugin_number)
@@ -1880,11 +1876,7 @@ static bool TapirEngine_IsSuspend(int plugin_number)
static bool TapirEngine_Resume(int plugin_number)
{
struct RE_plugin *p = get_plugin(plugin_number);
if (!p)
return false;
p->suspended = false;
return true;
return RE_plugin_resume(get_plugin(plugin_number));
}
//int TapirEngine_GetNumofPlugin(void);