python写剧情文字游戏_我正在制作python文字冒险游戏。需要帮助进行“库存”

fromsysimportexitfromrandomimportrandintimporttime

prompt='> 'classGame(object):def__init__(self,start):self.quips=["Way to go, you died.""Now you're dead. Sweet.","Well isn't this just peachy? You're dead. (It's not peachy.)"]self.start=start#self.smell = 0#self.Febreeze = False#self.key = Falseself.inventory=[]#if self.smell >=2:# return 'death'defplay(self):next=self.startwhileTrue:print"\n-------"room=getattr(self,next)next=room()defdeath(self):printself.quips[randint(0,len(self.quips)-1)]exit(1)defintro(self):print"You wake up."print"You're in a dark cell."print"You have no idea who you are or where you are."print"The door is slightly open."print"You stagger through the door. The light is blinding."print"You have just escaped imprisonment and you're on the run."return'central_corridor'defcentral_corridor(self):print"In front of you is a long corridor with no doors on the side, but you think you can make out a door at the very end."print"Behind you is the cell that you have just escaped."next=raw_input(prompt)if"cell"innext:print"You decide to go back into your cell."return'cell'elif"forward"innext:print"You travel down the corridor towards the door."return'front_corridor'else:print"That command doesn't exist."return'central_corridor'defcell(self):print"You're standing in the middle of a musty cell."print"There is a bed in the corner with a rotting mattress."print"Under the bed the bricks are loose."print"In the opposite corner there is a dirty toilet that implies that prison food is even worse than Taco Bell."print"There are some scratches on the wall next to the toilet."print"Behind you is an exit into the corridor."next=raw_input(prompt)if"toilet"innext:print"It'd probably be best if this toilet wasn't described."#self.smell = self.smell + 1return'cell'elif"febreeze"innextand"Febreeze"inself.inventory#and self.Febreeze = True:print"You use the Febreeze on the toilet to get rid of the odor."print"Now you can go behind the toilet to read the rest of the scratches."elif"scratches"innext:print"The scratches on the wall seem to be tally marks. It goes up to 123. I wonder what it means."print"You see more scratches behind the toilet, but the stench is too much for you to handle."print"If only you could get rid of the smell..."#self.smell = self.smell + 1return'cell'elif"bed"innext:print"There are various stains on the mattress. Some of the springs are poking up into the mattress. Ouch."print"Buried between the wall and the mattress is a stuffed animal."return'cell'elif"bricks"innext:print"You pull the bricks out of the floor and find a few pieces of toilet paper."print"There is a note written on them in what you hope is dried blood."print"The note reads:\n -------------------------\nthe closet!! the closet in the walls i'm not \nsure\twhich one it is but its defin-\nly in the hall. i hear it in the bricks!\n---------------------------"print"Hmm, maybe it's a hint or something."elif"corridor"innext:return'central_corridor'else:print"I do not understand how to %s"%nextreturn'cell'deffront_corridor(self):print"You are standing in front of a door."print"On the side of the door is a keypad."next=raw_input(prompt)if"keypad"innext:return'keypad'elif"wall"innext:return'wall'elif"back"innext:return'central_corridor'else:print"I don't understand %s"%nextreturn'front_corridor'defwall(self):print"Which wall do you want to check?"next=raw_input(prompt)if"left"innext:return'left'elif"right"innext:return'right'elif"back"innext:return'front_corridor'defright(self):print"You examine the wall carefully, running your fingers across each of the bricks."print"Unfortunately it doesn't look like anything of value is in this wall."print"Well, you just wasted some time."return'wall'defleft(self):print"You examine the wall carefully, running your fingers across each of the bricks."print"One of the bricks seems to be protruding from the wall."print"Do you push it?"next=raw_input(prompt)ifnext[0]=="y":print"A few of the bricks shift, revealing a secret door way."return'janitor'elifnext[0]=="n":print"You decide not to push the brick. Good thinking, it may have been a booby trap."return'front_corridor'else:print"That doesn't exactly make sense..."return'wall'defjanitor(self):print"You are in a room filled with janitorial tools."print"On your left you see a few cans of Febreeze, a plunger and a Playboy magazine."next=raw_input(prompt)if"febreeze"innext:print"You pick up some Febreeze and put it in your back pocket."print"Maybe this will be useful somewhere down the line."self.inventory.append("Febreeze")#self.Febreeze = Truereturn'janitor'elif"plunger"innext:print"You try to pick up the plunger but it appears to be stuck in the ground."print"After tugging for a few minutes the handle comes out, leaving the rubber suction cup plastered to the floor."print"Who knows what's keeping it there."print"You decide not to touch it."return'janitor'elif"playboy"innext:print"Well isn't that nice."print"These janitors certainly have good taste."return'janitor'elif"back"innext:return'front_corridor'else:print"Do WHAT with WHAT?"return'janitor'defkeypad(self):print"Above the keypad there is a sign that reads:\n-----------\nInput a 3 digit code.\nWarning: If code is incorrect 3 times, keypad will self-destruct.\n-----------"code="%d%d%d"%(randint(1,9),randint(1,9),randint(1,9))guess=raw_input("Password: ")guesses=0whileguess!=codeandguesses<2:print"BZZZZZEDD!"guesses+=1guess=raw_input("Password: ")ifguess==code:print"The keypad beeps in acceptance. Wow, that was a good guess"print"The door swings open."print"Behind the door is a long bridge suspended over a lake of lava."return'bridge'elif"key"inguessandkey==True:print"You flash your card key across the keypad."print"There is a beep as the door swings open."print"Behind the door is a long bridge suspended over a lake of lava."return'bridge'else:print"The keypad buzzes one last time and then you hear a sickening melting"print"sound as the lock mechanism fuses together."print"There is a small clicking while the keypad countsdown."print"3"time.sleep(1)print"2"time.sleep(1)print"1"time.sleep(1)print"There is a large explosion and you are caught right in the middle of it."print"The fiery blast tears your skin from your body as you scream in agony."return'death'defbridge(self):print"You carefully walk onto the bridge."print"One false move and you could be dead."print"Across the bridge is a door leading to the outside world."next=raw_input(prompt)if"jump"innext:print"You jump to your death."print"Probably not the best idea."elif"run"innext:print"You run"a_game=Game("intro")a_game.play()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值