protected void FreezeScripts(int flag)
{
if (Game.Version <= 2)
{
for (var i = 0; i < NumScriptSlot; i++)
{
if (CurrentScript != i && _slots[i].Status != ScriptStatus.Dead && !_slots[i].FreezeResistant)
{
_slots[i].Freeze();
}
}
return;
}
for (var i = 0; i < NumScriptSlot; i++)
{
if (CurrentScript != i && _slots[i].Status != ScriptStatus.Dead && (!_slots[i].FreezeResistant || flag >= 0x80))
{
_slots[i].Freeze();
}
}
for (var i = 0; i < _sentence.Length; i++)
_sentence[i].Freeze();
if (cutScene.ScriptIndex != 0xFF)
{
Slots[cutScene.ScriptIndex].UnfreezeAll();
}
}