I'm afraid that I don't understand you (I think
), becouse you don't need to do nothing. If you want that the secondary actor follow to the main actor, in the LeftClick event of the main actor you can put secondary_actor.GoTo( main_actor.X + offset, main_actor.Y + offset ); Offset is used for the secondary actor not ocuuped the space of the main actor. When the secondary actor goes to the main actor position + the offset, the walk animation stop and WME play the idle animation.
In my game, I used an special case, some secondary actor has specific idle animations, i.e.: sit in a chair, watering flowers, repairing a car, etc. When the main actor talk with these actor, I need an aditional idle animation, I've been made an "idle talk" animation, and in the conversation y use:
actor.Talk("Hi");
secondary_actor.PlayAnim("transition between work and talk"); // for example, turn around.
secondary_actor.Talk("Hi, how do you do");
secondary_actor.PlayAnimAsync("idle_talk"); // the secondary actor wait for the main actor response.
actor.Talk("Nothing special. Can I have a look?");
secondary_actor.Talk("Yes, you can"); // When the secondary actor talks again, WME plays the talk animation again.
secondary_actor.PlayAnimAsync("idle_talk"); // and wait again for the next main actor response.
actor.Talk("OK. Thanks");
secondary_actor.Talk("You're welcome");
secondary_actor.PlayAnim("transition between talk and work"); // the secondary return to make her task.
// When the animation finish, WME plays the idle animation.
This example code, only is necessary if the secondary actor makes a task in the idle animation and you want that he wait and not made a task, but if the idle animation of the actor is an "idle" animation, WME plays automatic when the previous animation (walk, in your case) finish.