without using very much code
As a workaround, using lots of code, could you add in a condition to the Interact function for each object on the other side of the room that requires a walk-up-and-interact animation??
// walk across, you're fine
// interact with the whatnot on the other side as intended
cChar.Say("If I walk over there, that damned floorboard'll start squeaking again.");
// engineer a walk just as far as the floorboard
// play squeak effect
// back off
bTestedFloorboard = true;
Depends on how many objects you've got on the other side of the room, I suppose.