This is easy, You just replace the character with a new one that has a
different action assigned to it.
Lets say you have a entity called "character" using "char.mdl" and it has an
action attached, then do something like this
in one frame;
Code:
vec_set(temp.x, character.x); //store characters' position
ent_remove(character);//remove the character entity
ent_create("char.mdl", temp, new_action); //create a new character and action