hmm I was musing over the idea of using lua to save the character destination into a variable with just before you change the way system & then using said variable with the VCharacterDestination to set the character walking to that destination again.
I don't know if it would work but...
first you need to create a definition script which we can use to add 2 simple functions one for setting the current destination & the other for setting it going again.
local char_dest -- create a blank variable that we can use for both of the functions
-- let's create the function that stores the character destination
function saveDest()
char_dest = game:getLink(VGameCurrentCharacter):getPoint(VCharacterDestination)
end
-- let's create the function that resets character destination
function getDest()
game:getLink(VGameCurrentCharacter):setValue(VCharacterDestination, {x = char_dest.x, y = char_dest.y})
end
to use this:
1. just before you add the change way system action part, create an execute a script action part & add...
2. then after the way system as been changed add another execute a script action part & add...
I haven't tested this code, but it should probably work & it says that CharacterDestination is scriptable, so I assume it should set the character walking again but hmm I'm not sure it will execute whatever action you told it to do on x object or character... I think we would need to add some additional code to check if destination is an object or character etc & whether you told it to execute an action on it but the code should resume the character walking.
We also have a choice of using these scriptable commands too:
CharacterDestination -- general x,y destination
CharacterDestinationObject -- if character destination is an object or character
GameDestinationCommand -- the command you used on the object, character
GameDestinationEvent -- a normal mouse event such as left/right click or hold etc
GameDestinationItem -- if you used an item on the object or character
GameDestinationItemPicked -- same as above but is for if you have used a dragged item