On Sun, 20 Jan 2002, Christoph Reichenbach wrote: > Hi, > > > > The car isn't drawn on the priority map in FSCI at all, neither are the > > > steps to the second floor. In the next room (26), the chair and the TV > > > don't have their priority map filled either. > > [...] > > > After some hunting, I found the car object. It appears to be disposed > > somewhere in the Rm25::doit method. The nsRect for the car is all zeros in > > FSCI:
This has been very difficult to debug in the SSCI debugger, due to "Out of handles!" crashes. It would seem as though the car is being disposed to make room for all the scripts involved in this scene. What I have discvered is that the priority and brRect for the car are not set in SSCI until Animate() is called. Animate() appears to set calculate/set these values, but I don't know what the logic behind it doing it it. The signals on the object are force_update, doesnt_turn, and no_cycler. Maybe animate recalculates and sets the priority when force_update is set? To inspect the object before it's disposed, set a breakpoint for Act::init. You will eventually hit the init for the car's object. You can tell which one is the car by the coordinates: x=192, y=189. -- http://www.clock.org/~matt
