The reason for this is that floating objects are implemented by a
routine that shuffles them round to appear in the appropriate places,
namely MoveFloatingObjects() in VerbLib.h. This routine is activated by
the verb handler LookSub, so that's why typing "Look" causes the
floating objects to appear.
So the solution is to call MoveFloatingObjects() yourself when the
character appears.
-- Gareth Rees