diff --git a/data/game.ini b/data/game.ini index a5356b5..9337654 100644 --- a/data/game.ini +++ b/data/game.ini @@ -1,5 +1,5 @@ title=Cacaus Arcade config=cacaus_arcade -width=576 -height=288 +width=256 +height=192 zoom=3 diff --git a/data/game.lua b/data/game.lua index aa820d8..b6d8bd5 100644 --- a/data/game.lua +++ b/data/game.lua @@ -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) diff --git a/data/main.lua b/data/main.lua index 690107a..56c23a3 100644 --- a/data/main.lua +++ b/data/main.lua @@ -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() diff --git a/data/viewport.lua b/data/viewport.lua index 8b0b166..e81b5bc 100644 --- a/data/viewport.lua +++ b/data/viewport.lua @@ -11,7 +11,7 @@ function viewport.new() position=viewport.position, print=viewport.print, room=viewport.coord2room, - roomXY=viewport.room2coord } + roomXY= viewport.room2coord } end @@ -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)