# Dynamic Pong
Dynamic Pong is a modern rendition of the classic arcade game Pong, crafted with Python using the Pygame library. It offers an engaging and interactive gaming experience, featuring responsive paddle controls and dynamic game speed adjustments. This project is an excellent showcase of Python programming skills, game design, and software development principles.
## Features
- **Adaptive Gameplay**: The game's difficulty increases as you progress, offering a challenging and engaging experience.
- **Collision Detection**: Implements collision logic for paddles and game boundaries.
- **Score Tracking**: Real-time score display for both the player and the computer-controlled opponent.
- **Customizability**: Adjustable game window size and element proportions to fit various screens.
## Installation
To install and play Dynamic Pong, follow these simple steps:
1. Open a terminal or command prompt.
2. Run the command:
```sh
pip install dynamic_pong
```
3. Wait for the installation to complete.
## How to Play
1. After installation, run the command:
```sh
dynamic_pong
```
2. Control the left paddle using the `Up` and `Down` arrow keys or the `W` and `S` keys.
3. The game continues indefinitely until manually exited.
## Code Examples
```python
# Creating a block representing a paddle
block = Block("white", 20, 100, 50, 300)
```
```python
# Initializing a player paddle
player = Player("white", 20, 140, 5)
```
```python
# Handling a ball collision with the top edge of the screen
ball = Ball("white", 30, 30, paddle_group)
ball.rect.top = -5
ball.speed_y = -5
ball.collisions()
```
## Contributing
Contributions to Dynamic Pong are welcome! If you have suggestions for improvements or encounter any issues, please feel free to open an issue or submit a pull request.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## About the Author
Adamya Singh - Software developer with a passion for machine learning and functional programming. Feel free to connect with me on [LinkedIn](https://www.linkedin.com/in/adamya-singh-0a8746184/).
Raw data
{
"_id": null,
"home_page": null,
"name": "dynamic-pong",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "python, pong, game, dynamic, resume project, pygame",
"author": "Adamya Singh",
"author_email": "<7adamyasingh@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/f4/7e/a7bac3ff697ef218cdded3f6f0197f03f2d206b8e905d34b99df69a87c16/dynamic_pong-1.0.8.tar.gz",
"platform": null,
"description": "\n# Dynamic Pong\n\nDynamic Pong is a modern rendition of the classic arcade game Pong, crafted with Python using the Pygame library. It offers an engaging and interactive gaming experience, featuring responsive paddle controls and dynamic game speed adjustments. This project is an excellent showcase of Python programming skills, game design, and software development principles.\n\n## Features\n\n- **Adaptive Gameplay**: The game's difficulty increases as you progress, offering a challenging and engaging experience.\n- **Collision Detection**: Implements collision logic for paddles and game boundaries.\n- **Score Tracking**: Real-time score display for both the player and the computer-controlled opponent.\n- **Customizability**: Adjustable game window size and element proportions to fit various screens.\n\n## Installation\n\nTo install and play Dynamic Pong, follow these simple steps:\n\n1. Open a terminal or command prompt.\n2. Run the command:\n ```sh\n pip install dynamic_pong\n ```\n3. Wait for the installation to complete.\n\n## How to Play\n\n1. After installation, run the command:\n ```sh\n dynamic_pong\n ```\n2. Control the left paddle using the `Up` and `Down` arrow keys or the `W` and `S` keys.\n3. The game continues indefinitely until manually exited.\n\n## Code Examples\n\n```python\n# Creating a block representing a paddle\nblock = Block(\"white\", 20, 100, 50, 300)\n```\n\n```python\n# Initializing a player paddle\nplayer = Player(\"white\", 20, 140, 5)\n```\n\n```python\n# Handling a ball collision with the top edge of the screen\nball = Ball(\"white\", 30, 30, paddle_group)\nball.rect.top = -5\nball.speed_y = -5\nball.collisions()\n```\n\n## Contributing\n\nContributions to Dynamic Pong are welcome! If you have suggestions for improvements or encounter any issues, please feel free to open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## About the Author\n\nAdamya Singh - Software developer with a passion for machine learning and functional programming. Feel free to connect with me on [LinkedIn](https://www.linkedin.com/in/adamya-singh-0a8746184/).\n",
"bugtrack_url": null,
"license": null,
"summary": "Dynamic Pong: A Python-based modern twist on classic Pong",
"version": "1.0.8",
"project_urls": null,
"split_keywords": [
"python",
" pong",
" game",
" dynamic",
" resume project",
" pygame"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1da9fe859dd6d9228b7f5a54d1581211d3182fbdc2f991254556297b8164d14b",
"md5": "f02abb3806f76a996b76909021927d6f",
"sha256": "b15952e1ea24ec8dc98daa89c2bef1c403f6ff9c7e46e19d87976bc4466bc9c4"
},
"downloads": -1,
"filename": "dynamic_pong-1.0.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f02abb3806f76a996b76909021927d6f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 23060,
"upload_time": "2024-12-30T21:47:11",
"upload_time_iso_8601": "2024-12-30T21:47:11.393469Z",
"url": "https://files.pythonhosted.org/packages/1d/a9/fe859dd6d9228b7f5a54d1581211d3182fbdc2f991254556297b8164d14b/dynamic_pong-1.0.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f47ea7bac3ff697ef218cdded3f6f0197f03f2d206b8e905d34b99df69a87c16",
"md5": "96835d687a4a255d401df4e00acb3bbd",
"sha256": "039001d8db11229b7ae8f318cce10e49975dd5b548de2aa19cc7ea4278af27eb"
},
"downloads": -1,
"filename": "dynamic_pong-1.0.8.tar.gz",
"has_sig": false,
"md5_digest": "96835d687a4a255d401df4e00acb3bbd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 23412,
"upload_time": "2024-12-30T21:47:15",
"upload_time_iso_8601": "2024-12-30T21:47:15.074876Z",
"url": "https://files.pythonhosted.org/packages/f4/7e/a7bac3ff697ef218cdded3f6f0197f03f2d206b8e905d34b99df69a87c16/dynamic_pong-1.0.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-30 21:47:15",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "dynamic-pong"
}