forked from pyrex/chameleonic
Fix misc rope bugs
This commit is contained in:
parent
a5e884440a
commit
abd6e5b498
@ -274,7 +274,7 @@ function title:draw()
|
||||
print(lvlstr,51,90,blinkcol)
|
||||
end
|
||||
|
||||
start_level=0
|
||||
start_level=24
|
||||
max_level=31
|
||||
|
||||
function title:update()
|
||||
@ -1579,7 +1579,12 @@ function rope:_calc_push(
|
||||
local ops={}
|
||||
if (not an) return ops
|
||||
|
||||
if a0.x==a1.x then
|
||||
local ax0,ay0=_anch_unpack(a0)
|
||||
local ax1,ay1=_anch_unpack(a1)
|
||||
|
||||
local anch=level:anchor_at(a0)
|
||||
|
||||
if ax0==ax1 then
|
||||
-- no far side applying pressure?
|
||||
local y0,y1=_mnmx(a0.y,a1.y)
|
||||
local my0,my1,smy=(y0+1)\8,(y1-1)\8,1
|
||||
@ -1589,13 +1594,13 @@ function rope:_calc_push(
|
||||
end
|
||||
|
||||
local mx,dmx
|
||||
if a0.x%8==0 and a0.x>an.x+7 then
|
||||
if anch.adx==-1 and a0.x>an.x+7 then
|
||||
-- push left
|
||||
mx=(a0.x-1)\8
|
||||
mx=ax0-1
|
||||
dmx=-1
|
||||
elseif a0.x%8==7 and a0.x<an.x-7 then
|
||||
elseif anch.adx==1 and a0.x<an.x-7 then
|
||||
-- push right
|
||||
mx=(a0.x+1)\8
|
||||
mx=ax0
|
||||
dmx=1
|
||||
else
|
||||
return {}
|
||||
@ -1606,7 +1611,7 @@ function rope:_calc_push(
|
||||
end
|
||||
end
|
||||
|
||||
if a0.y==a1.y then
|
||||
if ay0==ay1 then
|
||||
local x0,x1=_mnmx(a0.x,a1.x)
|
||||
local mx0,mx1,smx=(x0+1)\8,(x1-1)\8,1
|
||||
if a0.x>a1.x then
|
||||
@ -1615,14 +1620,14 @@ function rope:_calc_push(
|
||||
end
|
||||
|
||||
local my,dmy
|
||||
if a0.y%8==0 and a0.y>an.y+6 then
|
||||
if anch.ady==-1 and a0.y>an.y+6 then
|
||||
-- push up
|
||||
my=(a0.y-1)\8
|
||||
my=ay0-1
|
||||
dmy=-1
|
||||
|
||||
elseif a0.y%8==7 and a0.y<an.y-6 then
|
||||
elseif anch.ady==1 and a0.y<an.y-6 then
|
||||
-- push down
|
||||
my=(a0.y+1)\8
|
||||
my=ay0
|
||||
dmy=1
|
||||
else
|
||||
return {}
|
||||
@ -1945,37 +1950,37 @@ eeee0000cc04405500444400efeeee5e11111111e5eeeefeeeeeeeeeeeeeeeeeffffffffffffffff
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0e3c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c000000000000021000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0000000c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0000000c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0000000c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000212000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000313000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0000000c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c000c00000c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0002400000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c00000c3c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0003400c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0000000c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000c0
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0
|
||||
__label__
|
||||
77777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777
|
||||
|
Loading…
Reference in New Issue
Block a user