Mapa adaptat per a mantindre'l fidel a l'original però que se puga recorrer ja que ara no hi ha canvi d'habitació

This commit is contained in:
2026-03-27 19:20:36 +01:00
parent 1a4716089b
commit 6851a6c4ed
3 changed files with 72 additions and 38 deletions

View File

@@ -87,6 +87,8 @@ end
function abad:move( x, y )
self.x = x
self.y = y
local hab,xx, yy = arc_mapa_get_map_coords(x, y)
self.hab = hab
end
function abad:draw()
@@ -116,7 +118,6 @@ function abad_make_safe( force )
abad.safe.hab=hab
abad.safe.x=xx
abad.safe.y=yy
print("Make safe "..hab.." ( "..xx..", "..yy.." )")
end
end
@@ -138,8 +139,6 @@ function abad_hurt(howmuch)
-- abad.hab=abad.safe.hab
-- abad.x=abad.safe.x
-- abad.y=abad.safe.y
print("SAFE= "..abad.safe.hab.." "..abad.safe.x.." "..abad.safe.y)
print(dump(abad))
local abad_x, abad_y = arc_mapa_get_coords ( abad.safe.hab, abad.safe.x, abad.safe.y )
abad:move(abad_x, abad_y)
abad.hurting=60
@@ -292,6 +291,8 @@ function abad_advance()
abad.update=abad_state_normal
abad.frame=0
end
local hab,xx, yy = arc_mapa_get_map_coords(abad.x, abad.y)
abad.hab = hab
end
-- Controlador principal de l'abad
@@ -345,7 +346,6 @@ function key_release(keyid)
end
function abad_state_crouch()
print(dump(abad))
abad.bb.y=8
abad.bb.h=24
abad.frame=5
@@ -353,12 +353,10 @@ function abad_state_crouch()
abad.step=0
abad.jumpfwd=false
abad.jump_height=0
print(dump(abad))
if not (key.down(keyDown) or pad.down(btnDown)) then
abad.update=abad_state_normal
abad.bb.y=0
abad.bb.h=32
print(dump(abad))
end
end

View File

@@ -45,6 +45,7 @@ function game_init(menu)
table.insert( actors, zombie.new(73, 3, 3,false) )
local abad_x, abad_y = arc_mapa_get_coords ( 10, 4, 3 )
local abad_x, abad_y = arc_mapa_get_coords ( 40, 3, 3 )
abad:move(abad_x, abad_y)
abad_make_safe( true )
@@ -112,11 +113,20 @@ function update_game()
load_tilemap( sf_mapa )
if key.press(key.N1) then
local hab = math.random(0, 79)
local hab_x = math.random(0, mapa_room_cols-1)
local hab_y = math.random(0, mapa_room_rows-1)
local hab = abad.hab-1
if hab<0 then hab=0 end
local hab_x = 4
local hab_y = 3
local abad_x, abad_y = arc_mapa_get_coords ( hab, hab_x, hab_y)
abad:move(abad_x, abad_y)
local scr_ax, scr_ay = viewp:screen_coords(abad_x, abad_y)
end
if key.press(key.N2) then
local hab = abad.hab+1
if hab<0 then hab=0 end
local hab_x = 4
local hab_y = 3
local abad_x, abad_y = arc_mapa_get_coords ( hab, hab_x, hab_y)
print(abad_x..", "..abad_y)
abad:move(abad_x, abad_y)
local scr_ax, scr_ay = viewp:screen_coords(abad_x, abad_y)
end

View File

@@ -26,8 +26,8 @@ mapa={
256,256,73,74,256,256,256,256,73,74,256,256,
256,256,89,90,256,256,256,256,89,90,256,256,
256,256,256,256,256,256,256,256,256,256,256,256,
20,21,20,21,20,21,21,256,80,17,20,21,
-- 20,21,20,21,20,21,21,256,80,17,20,21,
20,21,20,21,20,21,21,256,256,0,20,21,
},
-- 3
{
@@ -106,7 +106,8 @@ mapa={
256,256,73,74,256,256,73,74,256,256,18,19,
256,256,89,90,256,256,89,90,256,256,17,17,
256,256,256,256,256,256,256,256,256,256,18,19,
20,21,256,80,17,18,19,17,18,19,17,17,
-- 20,21,256,80,17,18,19,17,18,19,17,17,
20,21,256,256,0,18,19,17,18,19,17,17,
},
-- 11
@@ -121,7 +122,8 @@ mapa={
},
-- 12
{
28,29,28,29,28,29,29,256,256,256,26,27,
-- 28,29,28,29,28,29,29,256,256,256,26,27,
28,29,28,29,28,29,29,1,256,256,26,27,
256,256,256,256,256,256,256,256,256,25,72,256,
256,256,73,74,256,256,256,256,1,256,88,256,
256,256,89,90,256,256,256,1,256,256,256,256,
@@ -136,7 +138,8 @@ mapa={
256,256,256,256,256,256,256,256,73,74,256,256,
256,256,256,98,98,256,256,256,89,90,256,256,
256,256,104,101,102,103,256,256,256,256,256,256,
28,29,28,29,28,29,29,256,81,25,28,29,
-- 28,29,28,29,28,29,29,256,81,25,28,29,
28,29,28,29,28,29,29,256,256,1,28,29,
},
-- 14
@@ -196,12 +199,14 @@ mapa={
256,97,98,97,256,40,40,256,98,97,96,256,
256,99,256,100,256,40,40,256,99,256,100,256,
256,256,256,256,256,40,40,256,256,256,256,256,
3,41,83,256,44,45,44,45,44,45,44,45,
-- 3,41,83,256,44,45,44,45,44,45,44,45,
45,3,256,256,44,45,44,45,44,45,44,45,
},
-- 20
{
44,45,256,256,256,42,43,41,42,43,41,41,
-- 44,45,256,256,256,42,43,41,42,43,41,41,
44,45,3,256,256,42,43,41,42,43,41,41,
256,256,256,256,41,41,256,256,256,77,42,43,
256,256,256,3,256,41,256,256,256,93,41,41,
256,256,3,256,256,39,256,256,256,256,42,43,
@@ -231,7 +236,8 @@ mapa={
},
-- 23
{
37,36,37,36,37,36,37,256,256,256,36,37,
-- 37,36,37,36,37,36,37,256,256,256,36,37,
37,36,37,36,37,36,37,2,256,256,36,37,
256,256,256,256,256,256,256,256,256,33,256,256,
256,97,98,97,256,256,112,256,2,256,256,256,
256,99,256,100,256,256,256,2,256,75,76,256,
@@ -276,7 +282,8 @@ mapa={
256,73,74,256,256,73,74,256,10,11,256,256,
256,89,90,256,256,89,90,256,10,11,256,256,
256,256,256,256,256,256,256,256,10,11,256,256,
17,17,18,19,17,256,80,17,18,19,17,17,
-- 17,17,18,19,17,256,80,17,18,19,17,17,
17,17,18,19,17,256,256,0,18,19,17,17,
},
-- 28
@@ -291,7 +298,8 @@ mapa={
},
-- 29
{
33,256,256,256,33,33,34,35,33,33,34,35,
-- 33,256,256,256,33,33,34,35,33,33,34,35,
33,256,256,2,33,33,34,35,33,33,34,35,
256,33,256,256,256,256,256,256,256,256,256,256,
256,256,2,256,256,256,256,256,256,256,256,256,
256,256,256,2,256,256,256,117,98,106,116,256,
@@ -326,7 +334,8 @@ mapa={
256,256,38,256,256,38,256,256,256,256,256,256,
256,112,38,256,113,38,256,256,114,256,256,113,
256,256,38,256,256,38,256,256,256,256,256,256,
44,45,41,83,256,44,45,44,45,44,45,44,
-- 44,45,41,83,256,44,45,44,45,44,45,44,
44,45,3,256,256,44,45,44,45,44,45,44,
},
-- 33
@@ -346,7 +355,8 @@ mapa={
256,256,256,256,256,256,256,256,73,74,256,40,
256,256,113,256,256,114,256,121,89,90,256,40,
256,256,256,256,256,256,256,101,102,103,256,40,
44,45,41,83,256,44,45,44,45,44,45,40,
-- 44,45,41,83,256,44,45,44,45,44,45,40,
44,45,3,256,256,44,45,44,45,44,45,40,
},
-- 35
@@ -366,12 +376,14 @@ mapa={
24,256,256,256,256,256,256,256,25,256,256,256,
24,256,106,116,256,256,256,256,38,256,256,256,
24,25,101,102,256,256,256,256,38,256,256,256,
28,29,28,29,25,81,256,28,29,28,29,28,
-- 28,29,28,29,25,81,256,28,29,28,29,28,
28,29,28,29,1,256,256,28,29,28,29,28,
},
-- 37
{
29,26,27,28,29,256,256,256,26,27,26,27,
-- 29,26,27,28,29,256,256,256,26,27,26,27,
29,26,27,28,29,1,256,256,26,27,26,27,
256,256,256,256,256,256,256,25,256,256,28,29,
256,256,256,256,256,256,1,256,256,256,256,256,
256,112,256,256,256,1,256,256,256,256,113,256,
@@ -416,12 +428,14 @@ mapa={
24,88,256,256,256,256,256,256,256,256,256,256,
24,256,256,256,112,256,256,256,256,256,114,256,
24,256,256,256,256,256,256,256,256,256,256,256,
28,29,28,29,28,29,25,81,256,28,29,29,
-- 28,29,28,29,28,29,25,81,256,28,29,29,
28,29,28,29,28,29,1,256,256,28,29,29,
},
-- 42
{
28,29,256,256,256,1,26,27,26,27,28,29,
-- 28,29,256,256,256,1,26,27,26,27,28,29,
28,29,256,256,1,1,26,27,26,27,28,29,
256,256,25,256,256,256,256,28,29,256,256,256,
256,256,256,1,256,256,256,256,256,256,256,256,
256,113,256,256,1,256,256,96,97,96,98,256,
@@ -441,7 +455,8 @@ mapa={
},
-- 44
{
33,37,256,256,256,36,37,36,37,36,37,2,
-- 33,37,256,256,256,36,37,36,37,36,37,2,
33,37,256,256,2,36,37,36,37,36,37,2,
32,256,33,256,256,256,256,256,256,256,256,256,
32,98,256,2,256,256,256,256,256,256,256,256,
32,99,256,256,2,256,256,256,75,76,256,256,
@@ -461,7 +476,8 @@ mapa={
},
-- 46
{
18,19,18,19,256,256,256,20,21,20,21,20,
-- 18,19,18,19,256,256,256,20,21,20,21,20,
18,19,18,19,256,256,0,20,21,20,21,20,
18,19,72,256,17,256,256,256,256,256,256,256,
18,19,88,256,256,0,256,256,256,256,256,256,
18,19,256,75,76,78,0,256,256,116,256,256,
@@ -506,12 +522,14 @@ mapa={
256,256,256,256,256,256,256,256,256,256,100,16,
17,19,256,256,256,114,256,256,256,256,78,16,
18,19,18,19,256,256,256,256,256,256,94,16,
17,18,19,18,19,18,19,256,80,17,18,19,
-- 17,18,19,18,19,18,19,256,80,17,18,19,
17,18,19,18,19,18,19,256,256,0,18,19,
},
-- 51
{
42,43,44,45,44,45,256,256,256,44,45,45,
-- 42,43,44,45,44,45,256,256,256,44,45,45,
42,43,44,45,44,45,256,256,3,44,45,45,
40,72,256,256,256,256,41,256,256,256,256,256,
40,96,256,256,256,256,256,3,256,256,256,256,
40,99,256,114,256,114,256,256,3,256,256,256,
@@ -526,7 +544,8 @@ mapa={
256,256,73,74,256,256,256,70,71,256,97,40,
256,256,89,90,256,256,256,86,87,256,100,40,
256,256,256,256,256,256,256,256,256,256,256,40,
44,45,41,83,256,44,44,45,44,45,44,45,
-- 44,45,41,83,256,44,44,45,44,45,44,45,
44,45,3,256,256,44,44,45,44,45,44,45,
},
-- 53
@@ -601,8 +620,10 @@ mapa={
},
-- 60
{
35,34,35,34,35,34,35,256,256,33,34,35,
256,256,36,37,256,256,256,256,256,33,34,35,
-- 35,34,35,34,35,34,35,256,256,33,34,35,
35,34,35,34,35,34,35,2,256,256,34,35,
-- 256,256,36,37,256,256,256,256,256,33,34,35,
256,256,36,37,256,256,256,256,256,2,34,35,
256,256,256,256,256,256,256,256,2,77,34,35,
256,256,116,256,256,256,256,2,256,93,34,35,
256,256,101,102,103,256,2,256,256,256,34,35,
@@ -621,7 +642,8 @@ mapa={
},
-- 62
{
18,19,256,256,256,20,20,21,20,21,20,21,
-- 18,19,256,256,256,20,20,21,20,21,20,21,
18,19,256,256,0,0,20,21,20,21,20,21,
16,72,17,256,256,256,256,256,256,256,256,256,
16,88,256,0,256,256,256,256,256,256,256,256,
16,256,256,78,0,256,256,114,75,76,256,256,
@@ -636,7 +658,8 @@ mapa={
256,256,256,256,256,256,256,256,256,256,98,16,
256,256,256,256,256,256,117,97,96,256,100,16,
256,256,256,256,256,256,101,256,102,103,256,16,
20,21,17,80,256,20,20,21,20,21,20,21,
-- 20,21,17,80,256,20,20,21,20,21,20,21,
20,21,0,256,256,20,20,21,20,21,20,21,
},
-- 64
@@ -676,7 +699,8 @@ mapa={
256,256,256,256,256,256,256,256,93,42,43,256,
256,256,114,256,256,113,256,256,256,42,43,256,
256,256,256,256,256,256,256,256,256,42,43,256,
42,43,41,41,42,43,41,83,256,42,43,50,
-- 42,43,41,41,42,43,41,83,256,42,43,50,
42,43,41,41,42,43,3,256,256,42,43,50,
},
-- 68
@@ -731,7 +755,8 @@ mapa={
},
-- 73
{
46,47,256,256,256,25,26,27,26,27,26,27,
-- 46,47,256,256,256,25,26,27,26,27,26,27,
46,47,256,256,1,25,26,27,26,27,26,27,
28,29,25,256,256,256,256,256,256,28,29,25,
256,256,256,1,256,256,256,116,96,96,256,256,
256,256,256,256,1,256,256,99,256,100,256,256,
@@ -771,7 +796,8 @@ mapa={
},
-- 77
{
18,19,18,19,18,19,256,256,256,18,19,52,
-- 18,19,18,19,18,19,256,256,256,18,19,52,
18,19,18,19,18,19,256,256,0,18,19,52,
256,256,17,72,256,256,17,256,256,256,256,256,
256,256,38,88,256,113,256,0,256,256,256,256,
256,256,38,256,256,256,256,256,0,256,256,256,