refactor PlayerController
Merge branch 'refactor-PlayerController'