Files
impostor/inc/window/window.game.lua
Bela Mezo 6977800f6a
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
Display Norman's room at Screen 1.
2026-02-12 19:22:24 +01:00

42 lines
1.4 KiB
Lua

function GameWindow.draw()
local currentScreenData = Context.screens[Context.current_screen]
UI.draw_top_bar(currentScreenData.name)
-- Draw Norman's bedroom
local from_x = 0 -- top-left coordinate of the large MAP (screen 1)
local from_y = 0 -- top-left coordinate of the large MAP (screen 1)
local width = 30 -- width of the standard screen (number of tiles)
local height = 17 -- height of the standard screen (number of tiles)
local to_x = 0 -- target x (of the displayed screen)([0-29])
local to_y = 0 -- target y (of the displayed screen)([0-16])
map(from_x, from_y, width, height, to_x, to_y)
end
function GameWindow.update()
if Input.menu_back() then
Context.active_window = WINDOW_MENU
MenuWindow.refresh_menu_items()
return
end
if Input.select() then
if Context.current_screen == #Context.screens then
Context.current_screen = 1
else
Context.current_screen = Context.current_screen + 1
end
end
if Input.player_interact() then
PopupWindow.show_menu_dialog(npc, {
{label = "Talk to", action = NPC.talk_to},
{label = "Fight", action = NPC.fight},
{label = "Go back", action = NPC.go_back}
}, WINDOW_POPUP)
end
end
function GameWindow.set_state(new_state)
Context.active_window = new_state
-- Add any state-specific initialization/cleanup here later if needed
end