Python编程小游戏 5个 (保能玩) 别看最后一个!! (附送游戏链接5个)

#凝想大师(已完工)
#别嫌多啊,这可并不多啊,才73行代码呢(不包括注释)
import time
n = input('请设置你的密码')
f = 0
if n == 'n':
    print('欢迎...')
    time.sleep(3)
    while True:
        print('你可以')
        print('1.凝想')
        print('2.退出')
        g = input('请问你选哪个?')
        if g == '1':
            print('每凝想1次可以增加0.5个积分')
            k = input('你要凝想几次?')
            if '.' in k:
                k = int(float(k))
                for i in range(k):
                    print('.', end = '')
                    time.sleep(1)
                    f += 0.5
                print('\n')
                print('你有积分', f, '个')
            else:
                k = int(k)
                for i in range(k):
                    print('.', end = '')
                    time.sleep(1)
                    f += 0.5
                print('\n')
                print('你有积分', f, '个')
        else:
            break
else:
    print('这个密码不安全,可能会被盗号')
    print('给你点小提示,密码是26个英文字母中的第14个')
    n = input('请设置你的密码')
    if n == 'n':
        print('欢迎...')
        while True:
            print('你可以')
            print('1.凝想')
            print('2.退出')
            g = input('请问你选哪个?')
            if g == '1':
                print('每凝想1次可以增加0.5个积分')
                k = input('你要凝想几次?')
                if '.' in k:
                    k = int(float(k))
                    for i in range(k):
                        print('.', end = '')
                        time.sleep(1)
                        f += 0.5
                    print('\n')
                    print('你有积分', f, '个')
                else:
                    k = int(k)
                    for i in range(k):
                        print('.', end = '')
                        time.sleep(1)
                        f += 0.5
                    print('\n')
                    print('你有积分', f, '个')
            else:
                break
    else:
        print('你没有机会了')
if f >= 100:
    print('你成了王者')
elif f >= 70:
    print('你成了智者')
elif f >= 20:
    print('你就是一个普通人')
else:
    print('你是个傻子')
#这款游戏的缩进有亿点多
#这款游戏的作者的缩进学得还好,所以并没有报错
#鼓励大家找bug
#不要感谢我啊(毕竟很简单啊(L8的难度))
#解压游戏(已完工)
import time
s = 0
while  True:
    time.sleep(1)
    s += 1
    n = input('是否退出')
    if n == '退出':
        print('你坚持了' + str(s) + '秒')
        break
    else:
        continue
#伐木(已完工)
#小贴士:第一次问的时候你要拼手速打下数据
#导入random库,import是导入关键词
import random
#建立函数test,来判断伐木时的的情况
def text():
    #建立全局变量win,win代表积分
    global win
    #d代表的是伐木时的各种情况
    d = random.randint(1,4)
    #第一种情况是砍下了1棵树
    if d == 1:
        #加五点积分
        win += 5
        print('恭喜你,砍到了一棵树')
    #第二种情况是没有砍到树
    elif d == 2:
        print('很糟糕,你没有砍到树')
    #第三种是遇到糟糕的天气
    elif d == 3:
        #扣除3点积分
        win -= 3
        print('很糟糕,你遇上了打雷天气')

#积分开局是0分       
win = 0
#重复执行直到输入'2'时结束
while True:
    #让玩家选择
    print('你可以')
    print('1.砍树')
    print('2.退出')
    k = input('你选')
    #当玩家输入'2'
    if k == '2':
        #游戏结束
        break
    #当玩家输入'1'
    else:
        #执行一次函数test
        i = text()
        #告诉玩家自己有了多少积分
        print('你获得了', win, '分')
        continue
import random
rule = {1: '石头', 2: '剪刀', 3: '布'}
n = input('请输入回合数:')
n = int(n)
r = 0
score_p = 0
score_c = 0
while r < n:    
    p = input('请输入手势编号(1: 石头, 2: 剪刀, 3: 布):')
    p = int(p)
    if p not in rule.keys():
        print('编号错误,请重新输入')
        continue
    print('玩家选择:', rule[p])
    c = random.randint(1, 3)
    print('电脑选择:', rule[c])
    
    if (p == 1 and c == 2) or (p == 2 and c == 3) or (p == 3 and c == 1):
        score_p += 1
    elif p == c:
        score_p += 1
        score_c += 1
    else:
        score_c += 1
    r += 1
print(score_c)
print(+score_p)
if score_p > score_c:
    print('玩家胜利')
elif score_p < score_c:
    print('电脑胜利')
else:
    print('平局')
from tkinter import*
from tkinter import messagebox
import random
import time

class Ball:
    def __init__(self,cv,paddle,color):
        self.canvas = cv
        self.paddle = paddle
        self.id = cv.create_oval(10,10,25,25,fill = color)
        self.canvas.move(self.id,200,100)
        starts = [-3,-2,-1,1,2,3]
        random.shuffle(starts)
        self.x = starts[0]
        self.y = -3
        self.canvas_height = self.canvas.winfo_height()
        self.canvas_width = self.canvas.winfo_width()
        self.hit_bottom = False

    def hit_paddle(self,pos):
        global score
        paddle_pos = self.canvas.coords(self.paddle.id)
        if pos[2] >= paddle_pos[0] and pos[0] <= paddle_pos[2]:
            if pos[3] >= paddle_pos[1] and pos[3] <= paddle_pos[3]:
                score += 1
                return True
        return False

    def draw(bsb):
        bsb.canvas.move(bsb.id,bsb.x,bsb.y)
        pos = bsb.canvas.coords(bsb.id)
        if pos[0] <= 0:
            bsb.x = 3
        if pos[2] >= bsb.canvas_width:
            bsb.x = -3
        if bsb.hit_paddle(pos) == True:
            bsb.y = -3
        if pos[1] <= 0:
            bsb.y = 3
        if pos[3] >= bsb.canvas_height:
            bsb.hit_bottom = True

class Paddle:
    def __init__(self,cv,color):
        self.canvas = cv
        self.id = cv.create_rectangle(0,0,100,10,fill = color)
        self.canvas.move(self.id,200,300)
        self.x = 0
        self.canvas_width = self.canvas.winfo_width()
        self.canvas.bind_all('<KeyPress-Left>',self.turn_left)
        self.canvas.bind_all('<KeyPress-Right>',self.turn_right)

    def draw(self):
        self.canvas.move(self.id,self.x,0)
        pos = self.canvas.coords(self.id)
        if pos[0] <= 0:
            self.x = 0
        elif pos[2] >= self.canvas_width:
            self.x = 0

    def turn_left(self,evt):
        self.x = -3

    def turn_right(self,evt):
        self.x = 3

root = Tk(className = '弹球游戏')
root.resizable(0,0)
score = 0
cv = Canvas(root,width = 500,height = 400,bd = 0,highlightthickness = 0)
cv.pack()
root.update()

paddle = Paddle(cv,"green")
ball = Ball(cv,paddle,"red")

while 1:
    if ball.hit_bottom == False:
        ball.draw()
        paddle.draw()
    else:
        messagebox.showinfo(title = '游戏结束',message = "你的分数为:" + str(score))
        break
    root.update_idletasks()
    root.update()
    time.sleep(0.01)

满意不??????????????????????????

游戏链接:

https://www.crazygames.com

​​​​​​https://www.poki.com

http://jspvz.com/plantsvszombies.htm#google_vignette

 共创世界(ccw.site) - Scratch、游戏、动画、漫画、小说、编程创作社区

 https://sc892.y34.top/865

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值