Ну смотри, у тебя там движение, и там движение, выносишь его в отдельный метод, куда передашь условно какие-то инпуты, потом обёртка будет для них одинаковой и даже если реализация разная, то логика архитектуры уже лучше становится
Ну и сам нейминг, например этот метод делает все что угодно Для малого проекта это может и не критично, но в больших проектах стоит делать так, чтобы метод делал что то одно исходя из названия