用python写出一款枪战游戏代码
时间: 2023-11-13 15:47:10 浏览: 61
好的,我可以为您提供一个简单的枪战游戏的代码框架,但是需要您自己去完善和调试。以下是代码:
```python
import random
class Player:
def __init__(self, name, health, damage):
self.name = name
self.health = health
self.damage = damage
def attack(self, other):
other.health -= self.damage
class Gun:
def __init__(self, name, damage, ammo):
self.name = name
self.damage = damage
self.ammo = ammo
def shoot(self):
if self.ammo > 0:
self.ammo -= 1
return self.damage
else:
print("Out of ammo!")
return 0
class Game:
def __init__(self, player1, player2):
self.player1 = player1
self.player2 = player2
self.guns = []
def add_gun(self, gun):
self.guns.append(gun)
def play(self):
while self.player1.health > 0 and self.player2.health > 0:
# player1's turn
print(f"{self.player1.name}'s turn:")
gun = random.choice(self.guns)
damage = gun.shoot()
if damage > 0:
self.player2.health -= damage
print(f"{self.player1.name} used {gun.name} and dealt {damage} damage to {self.player2.name}!")
print(f"{self.player2.name} has {self.player2.health} health left.")
if self.player2.health <= 0:
print(f"{self.player1.name} wins!")
break
# player2's turn
print(f"{self.player2.name}'s turn:")
gun = random.choice(self.guns)
damage = gun.shoot()
if damage > 0:
self.player1.health -= damage
print(f"{self.player2.name} used {gun.name} and dealt {damage} damage to {self.player1.name}!")
print(f"{self.player1.name} has {self.player1.health} health left.")
if self.player1.health <= 0:
print(f"{self.player2.name} wins!")
break
p1 = Player("Player 1", 100, 10)
p2 = Player("Player 2", 100, 10)
g1 = Gun("Pistol", 20, 6)
g2 = Gun("Shotgun", 40, 2)
game = Game(p1, p2)
game.add_gun(g1)
game.add_gun(g2)
game.play()
```
这是一个简单的回合制枪战游戏,其中包含了玩家、枪支和游戏三个类。您可以根据自己的需求进行修改和扩展。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)