Move user/character functions to a component