improve the change skin function