refactored character into actor component