# Explore Collisions ## Instructions Apply your collision detection knowledge by creating a custom mini-game that demonstrates different types of object interactions. This assignment will help you understand collision mechanics through creative implementation and experimentation. ### Project requirements **Create a small interactive game featuring:** - **Multiple moving objects** that can be controlled via keyboard or mouse input - **Collision detection system** using rectangle intersection principles from the lesson - **Visual feedback** when collisions occur (object destruction, color changes, effects) - **Game rules** that make collisions meaningful and engaging ### Creative suggestions **Consider implementing one of these scenarios:** - **Asteroid field**: Navigate a ship through dangerous space debris - **Bumper cars**: Create a physics-based collision arena - **Meteor defense**: Protect Earth from incoming space rocks - **Collection game**: Gather items while avoiding obstacles - **Territory control**: Competing objects trying to claim space ### Technical implementation **Your solution should demonstrate:** - Proper use of rectangle-based collision detection - Event-driven programming for user input - Object lifecycle management (creation and destruction) - Clean code organization with appropriate class structure ### Bonus challenges **Enhance your game with additional features:** - **Particle effects** when collisions occur - **Sound effects** for different collision types - **Scoring system** based on collision outcomes - **Multiple collision types** with different behaviors - **Progressive difficulty** that increases over time ## Rubric | Criteria | Exemplary | Adequate | Needs Improvement | |----------|-----------|----------|-------------------| | **Collision Detection** | Implements accurate rectangle-based collision detection with multiple object types and sophisticated interaction rules | Basic collision detection works correctly with simple object interactions | Collision detection has issues or doesn't work consistently | | **Code Quality** | Clean, well-organized code with proper class structure, meaningful variable names, and appropriate comments | Code works but could be better organized or documented | Code is difficult to understand or poorly structured | | **User Interaction** | Responsive controls with smooth gameplay, clear visual feedback, and engaging mechanics | Basic controls work with adequate feedback | Controls are unresponsive or confusing | | **Creativity** | Original concept with unique features, visual polish, and innovative collision behaviors | Standard implementation with some creative elements | Basic functionality without creative enhancements | --- **Disclaimer**: This document has been translated using the AI translation service [Co-op Translator](https://github.com/Azure/co-op-translator). While we strive for accuracy, please be aware that automated translations may contain errors or inaccuracies. The original document in its native language should be considered the authoritative source. For critical information, professional human translation is recommended. We are not liable for any misunderstandings or misinterpretations arising from the use of this translation.