… | |
… | |
46 | } |
46 | } |
47 | |
47 | |
48 | if ($tr->move ($dir, $ob)) { |
48 | if ($tr->move ($dir, $ob)) { |
49 | # do multiple loops in case some player/item blocks another |
49 | # do multiple loops in case some player/item blocks another |
50 | # do not endlessly loop as the server is far too broken, e.g. |
50 | # do not endlessly loop as the server is far too broken, e.g. |
51 | # you cna drop floor son top of non-floors etc. |
51 | # you can drop floor son top of non-floors etc. |
52 | for (1..50) { |
52 | for (1..50) { |
53 | @ontop or last; |
53 | @ontop or last; |
54 | @ontop = map $_->move ($dir, $_) ? () : $_, @ontop; |
54 | @ontop = map $_->move ($dir, $_) ? () : $_, @ontop; |
55 | } |
55 | } |
56 | } |
56 | } |