LOOM: silly walks
|Reported by:||eriktorbjorn||Owned by:||SF/ender|
ese buglets happens in recent CVS snapshots, but I think it's been like this for quite some time now. I have a nagging feeling that they are related, which is why I report them as one bug instead of three.
1. When Bobbin wakes up in the cell in the Forge, he starts walking on the spot, without getting anywhere.
2. Then, after he has twisted or unsharpened the final sword, two guards start walking toward him. They should end up on either side of him, except the one on the right keeps walking an imaginary downward slope, so he ends up somewhere near the lower left corner of the picture area.
I added some debug printf()s to startWalkActor(), classChanged() and o5_setClass(), and this is what I found:
0x8189a10: o5_setClass cleared ignoreBoxes and forceClip 0x8189a10: classChanged(22, 1) 0x8189a10: classChanged(21, 1) 0x8189a10: startWalkActor(304, 47, -1)
(So far it works. The right guard's ignoreBoxes is true, so he walks towards the destination in a straight, diagonal line.)
0x8189b90: o5_setClass cleared ignoreBoxes and forceClip 0x8189b90: classChanged(22, 1) 0x8189b90: classChanged(21, 1) 0x8189b90: startWalkActor(161, 47, -1)
(The left guard's ignoreBoxes is also true, so he will walk in a straight horizontal line towards his destination.)
0x8189a10: o5_setClass cleared ignoreBoxes and forceClip 0x8189a10: classChanged(21, 1) 0x8189a10: startWalkActor(193, 47, -1)
(The right guard can't walk to the intended destination because his ignoreBoxes is false, and the destination is outside all boxes.)
So I can easily fix this second problem, but all such fixes of mine have either been specialized hacks, or they have (probably) broken other stuff as well.
3. During the confrontation with Chaos at the end of the game, by the time Bobbin says "Over my dead body!" Chaos will have moved to the center of the screen. Then, after she replies "Preference noted.", she suddenly pops back to the left side of the screen again.
I'm attaching some save games. The twisting draft is "c f c c", and the opening draft is (as always) "e c e d".
Ticket imported from: #605970. Ticket imported from: bugs/454.