On Fri, 30 Nov 2001, Christoph Reichenbach wrote: > Hi, > > > I'm not exactly sure what to make of the debug output, but here goes... > > > > The last collision check is: > > " kernel: (E:\src\freesci\src\engine\kgraphics.c L738): Checking > > collision: (150, > > 129) to (17,2) ([150..167]x[119..121]), obj=0684, sig=6c02, cliplist=7924 > [..] > > obj=8d40 > > kernel: (E:\src\freesci\src\engine\kgraphics.c L710): (no) > > kernel: (E:\src\freesci\src\engine\kgraphics.c L772): -> 4000" > > If CanBeHere() returns non-zero, it means that the view object can be > there, i.e. no collission occured. If no collission occured and this was > really the last step, the relevant DoBresen() call should print something > like "Mover finished for object 0x%04x". I have no theory to cover the > case where it does. Otherwise, it ends up in an endless loop of sorts, or > stops in a later DoBresen().
Okay -- I'll add some printf's to that function to see where it goes into the endless loop. I'll probably get this done within a few hours and send mail. Sorry for the long message, but did you notice that FreeSCI's lsTop/Bottom/Left/Right for that object were are zero'd instead of the values in Sierra SCI? Is that normal? -- http://www.clock.org/~matt
