Managing Sprite Animations for Complex Games Using Sprite-Sheets and OOP