python 打地鼠图片游戏代码
时间: 2023-11-09 15:13:58 浏览: 74
打地鼠游戏代码
3星 · 编辑精心推荐
以下是一个简单的Python打地鼠图片游戏代码:
```python
import tkinter as tk
import random
class MoleGame:
def __init__(self, master):
self.master = master
self.master.title("打地鼠游戏")
self.width = 600
self.height = 400
self.canvas = tk.Canvas(self.master, width=self.width, height=self.height)
self.canvas.pack()
self.score = 0
self.score_label = tk.Label(self.master, text=f"分数: {self.score}")
self.score_label.pack()
self.mole_images = [
tk.PhotoImage(file="mole1.gif"),
tk.PhotoImage(file="mole2.gif"),
tk.PhotoImage(file="mole3.gif")
]
self.moles = []
self.create_moles()
self.start_game()
def create_moles(self):
for i in range(9):
mole = self.canvas.create_image(
(i % 3 + 1) * self.width // 4,
(i // 3 + 1) * self.height // 4,
image=random.choice(self.mole_images)
)
self.canvas.tag_bind(mole, '<ButtonPress-1>', self.hit_mole)
self.moles.append(mole)
def start_game(self):
self.canvas.after(1000, self.move_moles)
def move_moles(self):
random_mole = random.choice(self.moles)
self.canvas.itemconfig(random_mole, state="hidden")
self.canvas.itemconfig(random_mole, image=random.choice(self.mole_images))
self.canvas.itemconfig(random_mole, state="normal")
self.canvas.after(1000, self.move_moles)
def hit_mole(self, event):
self.score += 10
self.score_label.config(text=f"分数: {self.score}")
root = tk.Tk()
game = MoleGame(root)
root.mainloop()
```
在这个游戏中,玩家需要点击地鼠来得分。每次点击都会给玩家加10分。游戏会在开始后随机移动地鼠,玩家需要迅速点击它们以获得更高的分数。
阅读全文