equal
deleted
inserted
replaced
3750 or (iterator^.Y < Gear^.Y - r) |
3750 or (iterator^.Y < Gear^.Y - r) |
3751 or (iterator^.Y > Gear^.Y + r) then |
3751 or (iterator^.Y > Gear^.Y + r) then |
3752 continue; |
3752 continue; |
3753 |
3753 |
3754 //Will if fit through? |
3754 //Will if fit through? |
|
3755 //set r to be portal distance |
|
3756 r := Int2hwFloat(Gear^.Radius +1); |
3755 |
3757 |
3756 o_x := hwRound(conPortal^.X + conPortal^.dX); |
3758 o_x := hwRound(conPortal^.X + conPortal^.dX); |
3757 o_y := hwRound(conPortal^.Y + conPortal^.dY); |
3759 o_y := hwRound(conPortal^.Y + conPortal^.dY); |
3758 r_x := hwRound(conPortal^.X+r*conPortal^.dX); |
3760 r_x := hwRound(conPortal^.X+r*conPortal^.dX); |
3759 r_y := hwRound(conPortal^.Y+r*conPortal^.dY); |
3761 r_y := hwRound(conPortal^.Y+r*conPortal^.dY); |
3798 if hasBorder then continue; |
3800 if hasBorder then continue; |
3799 end |
3801 end |
3800 else |
3802 else |
3801 if ((Land[o_y, rr_x] and $FF00) <> 0) then |
3803 if ((Land[o_y, rr_x] and $FF00) <> 0) then |
3802 continue; |
3804 continue; |
|
3805 |
|
3806 //Okay reset r in case something uses it |
|
3807 r := Int2hwFloat(iterator^.Radius+Gear^.Radius); |
3803 |
3808 |
3804 hasdxy := (((iterator^.dX.QWordValue <> 0) or (iterator^.dY.QWordValue <> 0)) |
3809 hasdxy := (((iterator^.dX.QWordValue <> 0) or (iterator^.dY.QWordValue <> 0)) |
3805 or ((iterator^.State or gstMoving) = 0)); |
3810 or ((iterator^.State or gstMoving) = 0)); |
3806 |
3811 |
3807 // in case the object is not moving, let's asume it's falling towards the portal |
3812 // in case the object is not moving, let's asume it's falling towards the portal |