A monster which has grabbed you could move away without becoming unstuck if it hit the "move and shoot" or "helpless" conditions in the dochug MMOVE_MOVED case (since those lead to early return or break), leaving the hero stuck to a monster which is no longer adjacent. Put the 'grabber moved away -> become unstuck' stuff at the top of the block so that it will always be evaluated if a grabber has moved. I would have liked to move the whole "grabber checks" block up, but I think it'd change behavior to have the u.uswallow attack come before the early return for a helpless monster, so I split it up instead.
75 KiB
75 KiB