private void Update()
{
if (SystemInit <= 0)
{
Logger.Update();
if (!IsInitialized)
{
Initialize();
}
else
{
if (blockInputTime <= 0f)
{
if ((CanInput || GameState != GameState.Normal) && (inputHandler == null || !inputHandler()))
{
return;
}
}
else
{
blockInputTime -= Time.deltaTime;
}
if (IsRunning && CanAdvance && !WaitOnDelayedAction)
{
UpdateWaits();
if (delayedActions != null)
{
if (!HasExistingWaits())
{
ExecuteDelayedActions();
}
}
else
{
UpdateCarret();
try
{
if (GameState == GameState.Normal)
{
TextController.Update();
if (!IsSkipping)
{
goto IL_013a;
}
skipWait -= Time.deltaTime;
if (!(skipWait <= 0f))
{
goto IL_013a;
}
if (!HasExistingWaits())
{
if (SkipModeDelay)
{
skipWait = 0.1f;
}
goto IL_013a;
}
ClearAllWaits();
}
goto end_IL_00ca;
IL_013a:
float num = Time.time + 0.01f;
while (!HasExistingWaits() && !(Time.time > num) && !HasExistingWaits() && delayedActions == null && CanAdvance && !WaitOnDelayedAction)
{
ScriptSystem.Advance();
}
end_IL_00ca :;
}
catch (Exception)
{
IsRunning = false;
throw;
}
}
}
}
}
}