player movement integrates movement component