NScumm.Dump.ScriptParser8.Dim2DimArray C# (CSharp) Method

Dim2DimArray() protected method

protected Dim2DimArray ( ) : Statement
return Statement
        protected override Statement Dim2DimArray()
        {
            var subOp = ReadByte();
            var array = ReadWord();
            
            switch (subOp)
            {
                case 0x0A:      // SO_ARRAY_SCUMMVAR
                    {
                        var b = Pop();
                        var a = Pop();
                        return new MethodInvocation("DefineArray").AddArguments(array.ToLiteral(), "int".ToLiteral(), a, b).ToStatement();
                    }
                case 0x0B:      // SO_ARRAY_STRING
                    {
                        var b = Pop();
                        var a = Pop();
                        return new MethodInvocation("DefineArray").AddArguments(array.ToLiteral(), "string".ToLiteral(), a, b).ToStatement();
                    }
                case 0x0C:      // SO_ARRAY_UNDIM
                    return new MethodInvocation("NukeArray").AddArgument(array.ToLiteral()).ToStatement();
                default:
                    throw new NotSupportedException(string.Format("DimArray: default case {0}", subOp));
            }
        }