/* ** Lua binding: enigma ** Generated automatically by tolua 4.0a on Wed Jan 1 21:38:53 2003. */ #include "tolua.h" /* Exported function */ int tolua_enigma_open (lua_State* tolua_S); void tolua_enigma_close (lua_State* tolua_S); #include "enigma.hh" using namespace enigma; using px::Surface; using px::Font; #include "world.hh" #include "objects.hh" using namespace world; #include "video.hh" using namespace video; using px::Screen; #include "display.hh" using namespace display; using px::Rect; #include "options.hh" using namespace options; /* function to register type */ static void toluaI_reg_types (lua_State* tolua_S) { tolua_usertype(tolua_S,"Stone"); tolua_usertype(tolua_S,"Rect"); tolua_usertype(tolua_S,"Item"); tolua_usertype(tolua_S,"Object"); tolua_usertype(tolua_S,"LevelStatus"); tolua_usertype(tolua_S,"Screen"); tolua_usertype(tolua_S,"Font"); tolua_usertype(tolua_S,"Floor"); tolua_usertype(tolua_S,"Surface"); } /* function: AddLevelPack */ static int toluaI_enigma_enigma_AddLevelPack00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,3) ) goto tolua_lerror; else { const char* init_file = ((const char*) tolua_getstring(tolua_S,1,0)); const char* name = ((const char*) tolua_getstring(tolua_S,2,0)); { AddLevelPack(init_file,name); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'AddLevelPack'."); return 0; } /* get function: ConserveLevel */ static int toluaI_get_enigma_enigma_ConserveLevel(lua_State* tolua_S) { tolua_pushnumber(tolua_S,(double)ConserveLevel); return 1; } /* set function: ConserveLevel */ static int toluaI_set_enigma_enigma_ConserveLevel(lua_State* tolua_S) { if (!tolua_istype(tolua_S,1,LUA_TNUMBER,0)) tolua_error(tolua_S,"#vinvalid type in variable assignment."); ConserveLevel = ((int) tolua_getnumber(tolua_S,1,0)); return 0; } /* function: GetImage */ static int toluaI_enigma_enigma_GetImage00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); { Surface* toluaI_ret = (Surface*) GetImage(name); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Surface")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'GetImage'."); return 0; } /* function: LoadImage */ static int toluaI_enigma_enigma_LoadImage00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); { Surface* toluaI_ret = (Surface*) LoadImage(name); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Surface")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'LoadImage'."); return 0; } /* function: GetFont */ static int toluaI_enigma_enigma_GetFont00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); { Font* toluaI_ret = (Font*) GetFont(name); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Font")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'GetFont'."); return 0; } /* function: FinishLevel */ static int toluaI_enigma_enigma_FinishLevel00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { FinishLevel(); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'FinishLevel'."); return 0; } /* function: RestartLevel */ static int toluaI_enigma_enigma_RestartLevel00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { RestartLevel(); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'RestartLevel'."); return 0; } /* function: QuitGame */ static int toluaI_enigma_enigma_QuitGame00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { QuitGame(); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'QuitGame'."); return 0; } /* function: MakeObject */ static int toluaI_enigma_world_MakeObject00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); { Object* toluaI_ret = (Object*) MakeObject(kind); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Object")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'MakeObject'."); return 0; } /* function: MakeFloor */ static int toluaI_enigma_world_MakeFloor00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); { Floor* toluaI_ret = (Floor*) MakeFloor(kind); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Floor")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'MakeFloor'."); return 0; } /* function: MakeItem */ static int toluaI_enigma_world_MakeItem00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); { Item* toluaI_ret = (Item*) MakeItem(kind); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Item")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'MakeItem'."); return 0; } /* function: MakeStone */ static int toluaI_enigma_world_MakeStone00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); { Stone* toluaI_ret = (Stone*) MakeStone(kind); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Stone")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'MakeStone'."); return 0; } /* function: GetNamedObject */ static int toluaI_enigma_world_GetNamedObject00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); { Object* toluaI_ret = (Object*) GetNamedObject(name); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Object")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'GetNamedObject'."); return 0; } /* function: Create */ static int toluaI_enigma_world_Create00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TNUMBER,0) || !tolua_istype(tolua_S,2,LUA_TNUMBER,0) || !tolua_isnoobj(tolua_S,3) ) goto tolua_lerror; else { int w = ((int) tolua_getnumber(tolua_S,1,0)); int h = ((int) tolua_getnumber(tolua_S,2,0)); { Create(w,h); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'Create'."); return 0; } /* function: DefineSimpleStone */ static int toluaI_enigma_world_DefineSimpleStone00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TSTRING,0) || !tolua_isnoobj(tolua_S,3) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); const char* sound = ((const char*) tolua_getstring(tolua_S,2,0)); { DefineSimpleStone(kind,sound); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'DefineSimpleStone'."); return 0; } /* function: DefineSimpleFloor */ static int toluaI_enigma_world_DefineSimpleFloor00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TNUMBER,0) || !tolua_istype(tolua_S,3,LUA_TNUMBER,0) || !tolua_isnoobj(tolua_S,4) ) goto tolua_lerror; else { const char* kind = ((const char*) tolua_getstring(tolua_S,1,0)); double friction = ((double) tolua_getnumber(tolua_S,2,0)); double mousefactor = ((double) tolua_getnumber(tolua_S,3,0)); { DefineSimpleFloor(kind,friction,mousefactor); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'DefineSimpleFloor'."); return 0; } /* function: GetScreen */ static int toluaI_enigma_video_GetScreen00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { Screen* toluaI_ret = (Screen*) GetScreen(); tolua_pushusertype(tolua_S,(void*)toluaI_ret,tolua_tag(tolua_S,"Screen")); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'GetScreen'."); return 0; } /* function: HideMouse */ static int toluaI_enigma_video_HideMouse00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { HideMouse(); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'HideMouse'."); return 0; } /* function: ShowMouse */ static int toluaI_enigma_video_ShowMouse00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { ShowMouse(); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'ShowMouse'."); return 0; } /* function: Mousex */ static int toluaI_enigma_video_Mousex00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { int toluaI_ret = (int) Mousex(); tolua_pushnumber(tolua_S,(double)toluaI_ret); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'Mousex'."); return 0; } /* function: Mousey */ static int toluaI_enigma_video_Mousey00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { int toluaI_ret = (int) Mousey(); tolua_pushnumber(tolua_S,(double)toluaI_ret); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'Mousey'."); return 0; } /* function: GetColorDepth */ static int toluaI_enigma_video_GetColorDepth00(lua_State* tolua_S) { if ( !tolua_isnoobj(tolua_S,1) ) goto tolua_lerror; else { { int toluaI_ret = (int) GetColorDepth(); tolua_pushnumber(tolua_S,(double)toluaI_ret); } } return 1; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'GetColorDepth'."); return 0; } /* function: SetFollowMode */ static int toluaI_enigma_display_SetFollowMode00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TNUMBER,0) || !tolua_isnoobj(tolua_S,2) ) goto tolua_lerror; else { FollowMode m = ((FollowMode) tolua_getnumber(tolua_S,1,0)); { SetFollowMode(m); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'SetFollowMode'."); return 0; } /* function: DefineImage */ static int toluaI_enigma_display_DefineImage00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TSTRING,0) || !tolua_istype(tolua_S,3,LUA_TNUMBER,0) || !tolua_istype(tolua_S,4,LUA_TNUMBER,0) || !tolua_isnoobj(tolua_S,5) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); const char* fname = ((const char*) tolua_getstring(tolua_S,2,0)); int xoff = ((int) tolua_getnumber(tolua_S,3,0)); int yoff = ((int) tolua_getnumber(tolua_S,4,0)); { DefineImage(name,fname,xoff,yoff); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'DefineImage'."); return 0; } /* function: DefineSubImage */ static int toluaI_enigma_display_DefineSubImage00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TSTRING,0) || !tolua_istype(tolua_S,3,LUA_TNUMBER,0) || !tolua_istype(tolua_S,4,LUA_TNUMBER,0) || !tolua_istype(tolua_S,5,tolua_tag(tolua_S,"Rect"),0) || !tolua_isnoobj(tolua_S,6) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); const char* fname = ((const char*) tolua_getstring(tolua_S,2,0)); int xoff = ((int) tolua_getnumber(tolua_S,3,0)); int yoff = ((int) tolua_getnumber(tolua_S,4,0)); Rect r = *((Rect*) tolua_getusertype(tolua_S,5,0)); { DefineSubImage(name,fname,xoff,yoff,r); } } return 0; tolua_lerror: tolua_error(tolua_S,"#ferror in function 'DefineSubImage'."); return 0; } /* function: DefineRandModel */ static int toluaI_enigma_display_DefineRandModel00(lua_State* tolua_S) { if ( !tolua_istype(tolua_S,1,LUA_TSTRING,0) || !tolua_istype(tolua_S,2,LUA_TNUMBER,0) || !tolua_istype(tolua_S,3,LUA_TTABLE,0) || !tolua_isnoobj(tolua_S,4) ) goto tolua_lerror; else { const char* name = ((const char*) tolua_getstring(tolua_S,1,0)); int n = ((int) tolua_getnumber(tolua_S,2,0)); const char** names = (const char**) malloc(n*sizeof(char*)); { if (!tolua_arrayistype(tolua_S,3,LUA_TSTRING,n,0)) goto tolua_lerror; else { int i; for(i=0; i