Implement PartsEngine.SetSpeedupRateByMessageSkip

Speeds up animations while message skipping.
This commit is contained in:
Nunuhara Cabbage
2026-08-25 18:48:58 -07:00
parent 4233c7d294
commit fa09b0059f
2 changed files with 12 additions and 9 deletions
+12 -3
View File
@@ -537,12 +537,21 @@ void PE_SeekEndMotion(void)
PE_SetMotionTime(motion_end_t - 1);
}
void PE_UpdateMotionTime(int time, possibly_unused bool skip)
static int msgskip_speedup_rate = 1;
void PE_UpdateMotionTime(int time, bool skip)
{
// TODO: use skip
if (is_motion_paused)
return;
PE_SetMotionTime(motion_t + time);
if (skip)
PE_SetMotionTime(motion_t + time * msgskip_speedup_rate);
else
PE_SetMotionTime(motion_t + time);
}
void PE_SetSpeedupRateByMessageSkip(int parts_no, int rate)
{
msgskip_speedup_rate = max(1, rate);
}
bool PE_IsMotion(void)
-6
View File
@@ -2101,12 +2101,6 @@ bool PE_IsExist(int parts_no)
return !!ht_get_int(parts_table, parts_no, NULL);
}
void PE_SetSpeedupRateByMessageSkip(int parts_no, int rate)
{
if (rate != 1)
UNIMPLEMENTED("(%d, %d)");
}
static void ctrl_stack_init(void)
{
memset(&ctrl_stack, 0, sizeof(ctrl_stack));