LEV.ParseWall C# (CSharp) Method

ParseWall() private method

private ParseWall ( Tokenizer, levelTokens ) : Wall,
levelTokens Tokenizer,
return Wall,
    private Wall ParseWall(Tokenizer levelTokens)
    {
        levelTokens.EnsureNextToken("WALL");

        Wall wall = new Wall();

        levelTokens.EnsureNextToken("LEFT:");
        wall.V0 = levelTokens.RequireNextInt();
        levelTokens.EnsureNextToken("RIGHT:");
        wall.V1 = levelTokens.RequireNextInt();

        wall.TexMid = ParseWallTex("MID:", levelTokens, true);
        wall.TexTop = ParseWallTex("TOP:", levelTokens, true);
        wall.TexBottom = ParseWallTex("BOT:", levelTokens, true);
        wall.TexSign = ParseWallTex("SIGN:", levelTokens, false);

        levelTokens.EnsureNextToken("ADJOIN:");
        wall.Adjoin = levelTokens.RequireNextInt();

        levelTokens.EnsureNextToken("MIRROR:");
        wall.Mirror = levelTokens.RequireNextInt();

        levelTokens.EnsureNextToken("WALK:");
        wall.Walk = levelTokens.RequireNextInt();

        levelTokens.EnsureNextToken("FLAGS:");
        wall.Flags0 = (Wall.EFlags0)levelTokens.RequireNextInt();
        wall.Flags1 = levelTokens.RequireNextInt();
        wall.Flags2 = (Wall.EFlags2)levelTokens.RequireNextInt();

        levelTokens.EnsureNextToken("LIGHT:");
        wall.Light = levelTokens.RequireNextInt();

        return wall;
    }