-- main_menu_script.lua -- Main menu script -- Init function called from K3dEngine during initialization -- Warning -- Don't delete this function -- Function must exist function Init() print ("___ main_menu_script.lua = Init() function called") K3d_LoadMap("./maps/menu/main_menu_map.lua") -- Include script with global variables definitions K3d_IncludeScript("scripts/global_var_script.lua") InitScene() end -- Update function called from K3dEngine during update scene -- Warning -- Don't delete this function -- Function must exist function Update() --print("___ Update main_menu_script.lua ") UpdateScene() end -- Delete function called from K3dEngine during delete scene -- Warning -- Don't delete this function -- Function must exist function Delete() print("___ main_menu_script.lua out = Delete() function called") end -- Global variables g_iContainer = -1 g_iButtonLoadTests = -1 g_iButtonExit = -1 g_iButtonOk = -1 g_iButtonClose = -1 g_iMainWindow = -1 g_iWindowLoadTests = -1 g_iListModel = -1 g_iListBox = -1 g_bIsPressedBtnLoadTest = false g_bIsPressedBtnOk = false -- Init scene in scene initialization function InitScene() print ("___ main_menu_script = InitScene() function called") -- Get container g_iContainer = K3d_GetGuiObject("Container0", GuiObjType.iContainerObj) -- Get buttons g_iButtonLoadTests = K3d_GetGuiObject("ButtonLoadTests", GuiObjType.iButtonObj) g_iButtonExit = K3d_GetGuiObject("ButtonExit", GuiObjType.iButtonObj) g_iButtonOk = K3d_GetGuiObject("ButtonOk", GuiObjType.iButtonObj) g_iButtonClose = K3d_GetGuiObject("ButtonClose", GuiObjType.iButtonObj) -- Get main window g_iMainWindow = K3d_GetGuiObject("MainWindow", GuiObjType.iWinObj) -- Get load test window g_iWindowLoadTests = K3d_GetGuiObject("WindowLoadTests", GuiObjType.iWinObj) -- Get list model (for showing list box with tests) g_iListModel = K3d_GetGuiObject("BoxListModel", GuiObjType.iListModelObj) -- Get list box g_iListBox = K3d_GetGuiObject("ListBox", GuiObjType.iListBoxObj) end -- Update scene in every frame function UpdateScene() -- Your some scene updates -- Check if is pressed load tests button if K3d_ButtonIsPressed(g_iButtonLoadTests) then if g_bIsPressedBtnLoadTest == false then print("___ ButtonLoadTests is pressed ") g_bIsPressedBtnLoadTest = true K3d_HideGui(g_iMainWindow, GuiObjType.iWinObj) K3d_ShowGui(g_iWindowLoadTests, GuiObjType.iWinObj) K3d_ShowFileListBox(g_iListModel, "./scripts/test") end end -- Check if is pressed exit button if K3d_ButtonIsPressed(g_iButtonExit) then K3d_Exit() end -- Check if is pressed close button if K3d_ButtonIsPressed(g_iButtonClose) then g_bIsPressedBtnLoadTest = false K3d_HideGui(g_iWindowLoadTests, GuiObjType.iWinObj) K3d_ShowGui(g_iMainWindow, GuiObjType.iWinObj) end -- Check if is pressed Ok button if K3d_ButtonIsPressed(g_iButtonOk) then if g_bIsPressedBtnOk == false then print("___ ButtonOk is pressed ") g_bIsPressedBtnOk = true -- Load any map from list box -- This function call new script and delete this script -- This function must be called as last function in this script -- else engine shut down in next funcion -- because next function doesn`t exist in new script if K3d_LoadMapFromListBox(g_iListBox, "./scripts/test") == true then else g_bIsPressedBtnOk = false end end end end