diff --git a/chameleonic.p8 b/chameleonic.p8 index 0b606e6..3de36dc 100644 --- a/chameleonic.p8 +++ b/chameleonic.p8 @@ -1331,8 +1331,11 @@ function rope:be_pushed_by(anchor,ax_old,ay_old) local nx1,ny1=n1.ax,n1.ay if + (ax_new==ax_old and nx0<=anchor.ax and anchor.ax<=nx1) and + (ay_new==ay_old and ny0<=anchor.ay and anchor.ay<=ny1) and not (anchor.ax==nx0 and anchor.ay==ny0) and not (anchor.ax==nx1 and anchor.ay==ny1) and + (_which_side(ax_old,ay_old,nx0,ny0,nx1,ny1)!= _which_side(ax_new,ay_new,nx0,ny0,nx1,ny1) ) and would_stick(nx0,ny0,anchor,nx1,ny1)