diff --git a/src/intermission/intermission.cpp b/src/intermission/intermission.cpp index acb9fb62c..74a98a6a2 100644 --- a/src/intermission/intermission.cpp +++ b/src/intermission/intermission.cpp @@ -478,7 +478,8 @@ int DIntermissionScreenCast::Ticker () if (--casttics > 0 && caststate != NULL) return 0; // not time to change state yet - if (caststate == NULL || caststate->GetTics() == -1 || caststate->GetNextState() == NULL) + if (caststate == NULL || caststate->GetTics() == -1 || caststate->GetNextState() == NULL || + caststate->GetNextState() == caststate) { return -1; } @@ -494,7 +495,7 @@ int DIntermissionScreenCast::Ticker () castframes++; } - if (castframes == 12) + if (castframes == 12 && !castdeath) { // go into attack frame castattacking = true;