refactoring sprite logic, over