Despres del respawn ja s mou be. Ja no mor des de massa baix
This commit is contained in:
@@ -29,6 +29,25 @@ abad={}
|
||||
function abad_nop()
|
||||
end
|
||||
|
||||
-- Imprime cualquier valor, incluyendo tablas anidadas
|
||||
local function dump(value, indent)
|
||||
indent = indent or ""
|
||||
if type(value) ~= "table" then
|
||||
return tostring(value)
|
||||
end
|
||||
|
||||
local parts = {"{"}
|
||||
for k, v in pairs(value) do
|
||||
local key = (type(k) == "string") and k or "["..tostring(k).."]"
|
||||
table.insert(parts,
|
||||
string.format("%s %s = %s,",
|
||||
indent, key, dump(v, indent.." ")))
|
||||
end
|
||||
table.insert(parts, indent.."}")
|
||||
return table.concat(parts, "\n")
|
||||
end
|
||||
|
||||
|
||||
function abad_init()
|
||||
abad={ x=40, y=24,
|
||||
flip=false,
|
||||
@@ -90,11 +109,14 @@ function abad:draw()
|
||||
end
|
||||
end
|
||||
|
||||
function abad_make_safe()
|
||||
if abad.safe.hab~=abad.hab then
|
||||
abad.safe.hab=abad.hab
|
||||
abad.safe.x=abad.x
|
||||
abad.safe.y=abad.y
|
||||
function abad_make_safe( force )
|
||||
force = force or false
|
||||
local hab, xx, yy = arc_mapa_get_map_coords(abad.x, abad.y)
|
||||
if abad.safe.hab~=hab or force then
|
||||
abad.safe.hab=hab
|
||||
abad.safe.x=xx
|
||||
abad.safe.y=yy
|
||||
print("Make safe "..hab.." ( "..xx..", "..yy.." )")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -113,13 +135,17 @@ function abad_hurt(howmuch)
|
||||
else
|
||||
music.play(audio_life_lost,0)
|
||||
abad.energia=40
|
||||
abad.hab=abad.safe.hab
|
||||
abad.x=abad.safe.x
|
||||
abad.y=abad.safe.y
|
||||
-- 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
|
||||
abad.update=abad_state_normal
|
||||
abad.bb.y=0
|
||||
abad.bb.h=16
|
||||
abad.bb.h=32
|
||||
abad.respawning=240
|
||||
surf.cls(3)
|
||||
end
|
||||
@@ -273,7 +299,7 @@ function abad_state_normal()
|
||||
abad.frame=0
|
||||
abad.wait=0
|
||||
abad.step=0
|
||||
abad.shoot_cooldown = abad.shoot_cooldown + 1
|
||||
if abad.shoot_cooldown<abad.max_shoot_cooldown then abad.shoot_cooldown = abad.shoot_cooldown + 1 end
|
||||
abad.jumpfwd=false
|
||||
abad.jump_height = 0
|
||||
if abad.hurting > 0 then
|
||||
@@ -283,7 +309,7 @@ function abad_state_normal()
|
||||
|
||||
if abad.falling>0 then
|
||||
if abad.falling>(abad.max_jump_height<<1) then
|
||||
abad_hurt(abad.falling-(abad.max_jump_height>>1))
|
||||
abad_hurt(abad.falling-(abad.max_jump_height<<1))
|
||||
end
|
||||
abad.falling=0
|
||||
end
|
||||
@@ -319,6 +345,7 @@ function key_release(keyid)
|
||||
end
|
||||
|
||||
function abad_state_crouch()
|
||||
print(dump(abad))
|
||||
abad.bb.y=8
|
||||
abad.bb.h=24
|
||||
abad.frame=5
|
||||
@@ -326,12 +353,14 @@ 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
|
||||
|
||||
function abad_state_fire()
|
||||
|
||||
@@ -46,6 +46,7 @@ function game_init(menu)
|
||||
|
||||
local abad_x, abad_y = arc_mapa_get_coords ( 10, 4, 3 )
|
||||
abad:move(abad_x, abad_y)
|
||||
abad_make_safe( true )
|
||||
|
||||
local scr_ax, scr_ay = viewp:screen_coords(abad_x, abad_y)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user