python编程游戏-基于树莓派python编程的游戏程序

Raspberry Pi(中文名为"树莓派”,简写为RPi,(或者RasPi / RPI)是为学习计算机编程教育而设计,只有信用卡大小的微型电脑,其系统基于Linux。随着Windows 10 IoT的发布,我们也将可以用上运行Windows的树莓派。

自问世以来,受众多计算机发烧友和创客的追捧,曾经一"派”难求。别看其外表"娇小”,内"心”却很强大,视频、音频等功能通通皆有,可谓是"麻雀虽小,五脏俱全”。本文主要就是说明基于树莓派python编程的游戏程序,一起来了解一下。

Raspbian的系统中包含了python的编程环境IDE,方便了我们对于python的学习。个人觉得还是游戏程序能够更好的激发我们的潜力所以,话不多说下面就来使用python编写我们简单的游戏程序吧。

储备知识

①import 模块:TIme时间模块、random随机数模块

②列表:[ ] #[]中放入值,与数组很像,但是不同

③def:定义函数

④python的缩进是编程格式的一种,if等都不需要{}括起来,关键看缩进区分

⑤if,while,def函数都要以 ":”开始

游戏概述

一进入游戏,主人公就会随机获取一个游戏已经设定的道具。最开始,主人公站在丛林的边缘,只有左右可选,左边是个洞穴,右边是沙滩。

选择左边,则开始可以获得手电筒,但是在洞穴中会碰到蛇hp-20,继续向下会到一个未知空间,游戏结束。

选择右边,会到沙滩 获得凉爽的水hp+70,但是由于没有游泳装备,如果继续选择游泳,会遇到海啸而死亡。

代码

#Python Adventure Game

import TIme

import random

#define variable health point

hp = 30

#define variable object_ to show what the adventurer has

object_=[]

#define variable what the game sets

tools = ["Torch”,"Rope”,"Spanner”,"50HP”,"10HP”]

#set two acceptable answers ,select any one to end loop

def get_input(prompt,accepted):

while True:

value = input(prompt).lower()

if value in accepted:

return value

else :

print("That is not a recognised answer,must be one of”,accepted)

def handle_room(locaTIon) :

global hp

if locaTIon== "start”:

print("You are stading on a path at the edge of a jungle.There is a cave to your left and a beach to your right.”)

object_.append(random.choice(tools))

print("Lucky,you have gained”,object_[-1])

use_tools(object_)

direction = get_input("Do you want to go left or right?”,["left”,"right”])

if direction == "left”:

return "cave”

elif direction == "right”:

return "beach”

elif location == "cave”:

print("On the entrance of cave,you find a torch!!!”)

object_.append("Torch”)

print("You walk to the cave and notice there is an opening.”)

print("A small snake bites you,and you lose 20 health points.”)

hp-=20

answer = get_input("Do you want to go deeper?(y/n)”,["y”,"n”])

if answer == "y”:

return "deep_cave”

elif answer == "n”:

return "start”

elif location == "beach”:

print("You walk to the beach but remember you do not have any swimwming equipment.”)

print("The cool water revitalizes you.You have never felt more alive,gain 70 health points.”)

hp+=70

answer = get_input("Do you want to go swimming?(y/n)”,["y”,"n”])

if answer == "y”:

return "sea”

elif answer == "n”:

return "start”

elif location == "sea”:

print("Suddenly there was a tsunami,you can"t escape.”)

hp=0

return "end”

else :

print("Programmer error,room”,location,"is unknown”)

return "end”

#define the function to use the tools of HP

def use_tools(tool):

global hp

length = len(tool)

for i in range(0,length):

if tool[i]=="50HP”:

hp+=50

tool.pop(i)

print("You have use the tool of 50HP”)

j+=1

elif tool[i]=="10HP”:

hp+=10

tool.pop(i)

print("You have use the tool of 10HP”)

j+=1

#The begin of the program.

location = "start”

#Loop until we reach the special "end” location

while location!="end”:

location = handle_room(location)

#Check we are not dead each return

print("You now have”,hp,"health points.”)

if hp《=0:

print("You are dead. Game Over!!!”)

break

print("Your adventure has ended,bye~”)

函数功能块简析

get_input(prompt,accepted) //(输入提示,可接受字符串)

handle_room(location) //通过位置的判断给出不同场景的设定和人物的走向

use_tools(tool) //人物若随机获得了HP类物品则立即使用,其他则无任何操作

运行截图

2749557-1G12H15929438.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值