diff --git a/OpenRA.Game/FileFormats/VqaReader.cs b/OpenRA.Game/FileFormats/VqaReader.cs index aecf712ff6..feb505ed72 100644 --- a/OpenRA.Game/FileFormats/VqaReader.cs +++ b/OpenRA.Game/FileFormats/VqaReader.cs @@ -90,10 +90,17 @@ namespace OpenRA.FileFormats frameData = new uint[frameSize, frameSize]; var type = stream.ReadASCII(4); - if (type != "FINF") + while (type != "FINF") { - stream.Seek(27, SeekOrigin.Current); - type = stream.ReadASCII(4); + // Sub type is a file tag + if (type[3] == 'F') + { + var jmp = int2.Swap(stream.ReadUInt32()); + stream.Seek(jmp, SeekOrigin.Current); + type = stream.ReadASCII(4); + } + else + throw new NotSupportedException("Vqa uses unknown Subtype : {0}".F(type)); } /*var length = */stream.ReadUInt16(); diff --git a/mods/ra/maps/allies-01/allies01.lua b/mods/ra/maps/allies-01/allies01.lua index 230d436c4b..97f7dc0fe4 100644 --- a/mods/ra/maps/allies-01/allies01.lua +++ b/mods/ra/maps/allies-01/allies01.lua @@ -135,9 +135,9 @@ end MissionAccomplished = function() Media.PlaySpeechNotification(player, "Win") - --Trigger.AfterDelay(DateTime.Seconds(1), function() - --Media.PlayMovieFullscreen("snowbomb.vqa") -- https://github.com/OpenRA/OpenRA/issues/4224 - --end) + Trigger.AfterDelay(DateTime.Seconds(1), function() + Media.PlayMovieFullscreen("snowbomb.vqa") + end) end MissionFailed = function()