Ericson Willians
Ericson Willians

Reputation: 7855

How do I load a table from a file using LuaBridge? [Lua from C++]

I'm reading the LuaBridge reference manual and I'm failing to understand how to actually load / read the .lua file so that I can access the table inside it.

This is the lua file (Exported from tiled):

return {
  version = "1.1",
  luaversion = "5.1",
  tiledversion = "0.16.0",
  orientation = "orthogonal",
  renderorder = "right-down",
  width = 16,
  height = 16,
  tilewidth = 32,
  tileheight = 32,
  nextobjectid = 3,
  properties = {},
  tilesets = {
    {
      name = "terrain_atlas",
      firstgid = 1,
      tilewidth = 32,
      tileheight = 32,
      spacing = 0,
      margin = 0,
      image = "../../../../Resources/Tilesets/Atlas/terrain_atlas.png",
      imagewidth = 1024,
      imageheight = 1024,
      tileoffset = {
        x = 0,
        y = 0
      },
      properties = {},
      terrains = {},
      tilecount = 1024,
      tiles = {}
    }
  },
  layers = {
    {
      type = "tilelayer",
      name = "Ground",
      x = 0,
      y = 0,
      width = 16,
      height = 16,
      visible = true,
      opacity = 1,
      offsetx = 0,
      offsety = 0,
      properties = {},
      encoding = "lua",
      data = {
        839, 840, 840, 840, 840, 840, 840, 840, 840, 840, 840, 840, 840, 840, 840, 841,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 936, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 937, 872, 872, 872, 872, 872, 872, 872, 872, 872, 937, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 935, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 936, 872, 872, 937, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 935, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 935, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 936, 872, 872, 872, 872, 872, 872, 936, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 937, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 935, 872, 872, 872, 873,
        871, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, 873,
        903, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 905
      }
    },
    {
      type = "tilelayer",
      name = "Above",
      x = 0,
      y = 0,
      width = 16,
      height = 16,
      visible = true,
      opacity = 1,
      offsetx = 0,
      offsety = 0,
      properties = {},
      encoding = "lua",
      data = {
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 938, 0, 0, 0,
        0, 0, 0, 0, 907, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 876, 0, 0, 0, 0,
        0, 0, 939, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 874, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 939, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
      }
    }
  }
}

Upvotes: 1

Views: 381

Answers (1)

Jakuje
Jakuje

Reputation: 26016

You are searching for:

f = loadfile("foo.lua")

as described in manual and reference manual. It reads your file and returns your object in f variable.

Upvotes: 1

Related Questions