[WIP] En l'scroll

This commit is contained in:
2026-03-18 21:25:20 +01:00
parent ef277ee9b2
commit d35ad7d5b5
4 changed files with 11 additions and 12 deletions

View File

@@ -1,5 +1,5 @@
title=Cacaus Arcade
config=cacaus_arcade
width=576
height=288
width=256
height=192
zoom=3

View File

@@ -45,9 +45,9 @@ function render_view ( hab, x ,y )
surf.source(map_buffer)
surf.target(0)
print(hab)
viewp.roomXY(hab)
draw.surf(viewp.x,viewp.y,viewp.width,viewp.height,0,0,viewp.width,viewp.height)
local vrx, vry = viewp:roomXY(hab)
print(hab.." "..vrx.." "..vry)
draw.surf(viewp.x-vrx,viewp.y-vry,viewp.width,viewp.height,0,0,viewp.width,viewp.height)
surf.source(curr_ssurf)
surf.source(curr_tsurf)

View File

@@ -16,8 +16,6 @@ function mini.init()
-- buffer per a 3x3 habitacions
local map_buffer_width = 3*mapa_room_cols*arcade_config.tiles_width
local map_buffer_height = 3*mapa_room_rows*arcade_config.tiles_height
local map_buffer_width = 1024
local map_buffer_height = 1024
map_buffer=surf.new(map_buffer_width, map_buffer_height)
fade.init()

View File

@@ -29,20 +29,21 @@ function viewport:coord2room ()
return calc_room
end
function viewport:room2coord ( room )
function viewport:room2coord ( _room )
local tw = arcade_config.tiles_width
local th = arcade_config.tiles_height
local cols = mapa_room_cols
local rows = mapa_room_rows
local rooms_per_floor = mapa_rooms_per_piso
local x = (room % rooms_per_floor) * cols * tw
local y = math.floor(room/rooms_per_floor) * rows * th
local x = (_room % rooms_per_floor) * cols * tw
local y = math.floor(_room/rooms_per_floor) * rows * th
local room_center_x_offset = (cols * tw) >> 1
local room_center_y_offset = (rows * th) >> 1
return x+room_center_x_offset, y+room_center_y_offset
-- return x+room_center_x_offset, y+room_center_y_offset
return x, y
end
function viewport:position(x, y)