I was suggesting using his archive as alternative to SCI Companion's decompilation since his code is clearer. His scripts doesn't have any bug fixes.
Ah, that makes more sense. Sorry, my brain reads proc0_3 as setFlag now by default.
... what a shame Alt can't be be used.
I decided to look into it and I can use ALT by editing this condition in 988's ego::handleEvent:
((& temp1 $4000) ;temp1 is event type
(if (& temp1 $1000)
(if (== (pEvent modifiers?) emALT) ;if ALT
(gEgo setMotion: 0 posn: (pEvent x?)(pEvent y?)) ;move Adam to mouse x/y
else
(switch global67
(0
(self setMotion: MoveTo (pEvent x?) (+ (pEvent y?) z))
)
(1
(self setMotion: PolyPath (pEvent x?) (+ (pEvent y?) z))
)
(2
(self setMotion: PolyPath (pEvent x?) (+ (pEvent y?) z) 0 0)
)
)
(gUser prevDir: 0)
)
(pEvent claimed: 1)
else
(super handleEvent: pEvent)
)
)
I didn't even bother passing the mouse event to 98.scr, just moved Adam to the mouse.
Unlike before, this change requires using Alt + the WALK cursor to warp, which seems fine to me. It also requires including the patch file for 988.scr, which feels a little sloppy, but I don't know how else this could be done using ALT.
Please try the updated zip attached below. ty
Edit: removed outdated attachment