diff options
Diffstat (limited to 'src/client/initdevice.cpp')
| -rw-r--r-- | src/client/initdevice.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/client/initdevice.cpp b/src/client/initdevice.cpp index 79b6706..c7535a0 100644 --- a/src/client/initdevice.cpp +++ b/src/client/initdevice.cpp @@ -173,14 +173,18 @@ void settingsFromTable(lua_State *L, SIrrlichtCreationParameters* p){ printf("[OK]\n"); } -IrrlichtDevice* spawnIrrDevice(lua_State* L){ +IrrlichtDevice* spawnIrrDevice(lua_State* L, char *path){ //printf("Attempting to load settings...\n"); - int iErr = luaL_dofile(L,"../data/deviceinit.lua"); + char initname[] = "deviceinit.lua"; + size_t pathlen = strlen(initname) + strlen(path); + char filename[pathlen + 1]; + sprintf(filename,"%s/%s",path,initname); + int iErr = luaL_dofile(L,filename); SIrrlichtCreationParameters p = SIrrlichtCreationParameters(); - settingsFromTable(L,&p); if(iErr != 0){ - printf("Failed to open lua file:/data/deviceinit.lua\n"); + printf("Failed to open lua file:%s\n", filename); } + settingsFromTable(L,&p); IrrlichtDevice* dev = createDeviceEx(p); if(!dev) exit(1); |
