从Scratch到Python 16 小游戏:逃离僵尸岛

我们今天再来开发一个小游戏,叫做”逃离僵尸岛“。听起来名字很吓人,其实这就是一个猜数字的小游戏,这个小游戏的逻辑也很简单,我们曾经用Scratch很轻松地实现它:生成一个随机数字,给你若干次机会,每次输入数字,计算机会提示你猜大了还是小了,如果你能在要求的次数内猜中,游戏胜利。后来我们还学了一个逻辑相反的游戏,让计算机来猜我们想的一个随机数,我们会告诉计算机采用”二分查找“的方式来猜,就是每次在最大数和最小数之间取中间值的方式,如果忘了,可以复习一下Scratch中的内容。

简单的猜数字

import random

n = random.randint(0, 100)
i = 8
while True:
    n1 = int(input('请输入猜的数字(整数)'))
    i = i - 1
    if i == 0:
       print('游戏失败!')
       break
    if n1 > n:
        print('大了')
        print('剩余%d次机会' % i)
        continue
    elif n1 < n:
        print('小了')
        print('剩余%d次机会' % i)
        continue
    else:
        print('猜对了')
        break

扩展游戏

上面的游戏虽然也实现了猜数字的逻辑,但让人感觉比较枯燥,也没有玩游戏的氛围。这个时候我们就要开动脑筋,给游戏增加一些故事情节,让玩游戏的人有一种身临其境的感觉,这样游戏就比较有趣了。

比如,我们可以把游戏设定为玩家被传送到了一个布满僵尸的小岛,玩家不得不在僵尸的追杀下逃命,通过努力寻找,终于找到了可以离开小岛的传送门,不过这个传送门需要输入密码才能启动,而密码是一个1-100之间的数字,玩家总共有8次机会,如果输错,就会被僵尸吃掉……这样是不是就更有游戏氛围了呢?

让我们来改造一下上面的程序:

import random

# 交待时间地点和场景

print('这是一个漆黑的夜晚……')
print('天上下着大雨,时不时划过几道闪电,雷声隆隆地响着。')
print('你正在被一大群僵尸追赶,深一脚浅一脚地向前跑着。')
print('终于,你看到了一扇发着微光的门。门上有一个9个数字的小键盘,旁边写着:请输入0-100之间的数字,如果输入正确门就会打开,你将离开僵尸岛,注意你只有8次机会……')

n = random.randint(0, 100)
i = 8
while True:
    n1 = int(input('请输入猜的数字(整数)'))
    i = i - 1
    if i == 0:
        print('你的身后传来了僵尸沉重的呼吸声……呼……呼')
        print('僵尸吃掉了你的脑子!')
        print('游戏失败!')
        break
    if n1 > n:
        print('大了')
        print('你还有%d次机会,僵尸的脚步更近了……' % i)
        continue
    elif n1 < n:
        print('小了')
        print('你还有%d次机会,僵尸的脚步更近了……' % i)
        continue
    else:
        print('猜对了!一道白光笼罩了你,你顺利离开了僵尸岛!')
        break

试玩一下,感觉是不是好多了?

总结

其实,要做好一个游戏可不仅仅是程序的问题,首先就得设计好的角色、故事情节,才能做出引人入胜的游戏 。当然,我们在现阶段不必在这方面投入过多精力,只要适当注意一下,拿出写作文的精神来,让你的游戏更好玩一些就行了。

给TA赞助
共{{data.count}}人
人已赞助
综合资讯

从Scratch到Python 15 石头剪刀布

2023-6-5 10:49:40

综合资讯

从Scratch到Python 17 时间处理

2023-6-6 11:26:04

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索