简单的恋爱养成游戏

'''本来想做一个恋爱养成类的游戏,但因为时间限制,简化了一些行为,比如money参数和talk函数,就没有用到。
可以对各个函数再添加一个money参数值的选项,另,文本实在写不出来,talk就鸽了。'''
import random   #做一个选项冲突的设定。哪怕满足好感度等条件,也有三分之一的概率选择拒绝。
class Role(object):
    def __init__(self, name, sex, money, love_value):
        self.name = name
        self.sex = sex
        self.money = money
        self.love_value = love_value

    def talk(self, name, word):
        self.word = word
        print('[%s] says: [%s]' % (self.name, self.word))

class Player(Role):
    def work(self, money):  #本来想添加工作函数,以便对money有更多的扩展。。。。
        self.money = money
        print('[%s] is going to work to earn money.' % self.name)
        money += 1000

    def visit(self, Role1):
        self.Role1 = Role1
        print('I`m meeting [%s], and his/her love_value is [%s]'% (Role1.name, Role1.love_value))

    def date(self, Role1):
        self.Role1 = Role1
        if Role1.love_value >= 30:
            if random.randint(1, 3) != 2:
                print('okay, i would be like to go out for a date with you.')
                Role1.love_value += 10
            else:
                print('sorry, but i have another plan.')
        else:
            print('sorry, i don`t want to date with you.')

    def shopping(self, Role1):
        self.Role1 = Role1
        if random.randint(1, 3) != 2:
            print('yeah, i really want to buy something.')
            self.money -= 1000
            Role1.love_value += 10
        else:
            print('sorry, i am busy now, may be we can go shopping next time.')

    def hotel(self, Role1):
        self.Role1 = Role1
        if Role1.love_value >= 80:
            if random.randint(1, 3) != 2:
                print('Yeah baby, may be we can try some new style this night.')
                self.money -= 2000
                Role1.love_value += 10
            else:
                print('i am tired today, let`s do it tomorrow.')
        else:
            print('no, i don`t think it`s the right time to do this, eh...')
            Role1.love_value -= 10

Jack = Player('Jack', 'M', 10000, 0)
Rose = Role('Rose', 'F', 10000, 50)
Linda = Role('Linda', 'F', 10000, 20)
Mark = Role('Mark', 'M', 10000, 0)


print('*'*100)
Jack.talk(Rose, 'hello darling')
print('Game Start!')
print('The player of this game is Jack, and his purpose is to chase one Role_Player. The player have 3 times to try everyday.')
print('*'*100)
day = 0
for day in range(5):
    print('day',[day])
    i=0
    for i in range(3):
        choice1 = input('whom do you want to visit? Rose? Linda? Mark?')
        if choice1 == 'Rose':
            Jack.visit(Rose)
            choice2 = input('what do you want to do ? date? shopping? hotel?')
            if choice2 == 'date':
                Jack.date(Rose)
            elif choice2 == 'shopping':
                Jack.shopping(Rose)
            elif choice2 == 'hotel':
                Jack.hotel(Rose)
            print(Rose.love_value)
            if Rose.love_value >= 100:
                print('Game over, and you have chased Rose.')
                break
            else:
                continue

        elif choice1 == 'Linda':
            Jack.visit(Linda)
            choice2 = input('what do you want to do ?date? shopping? hotel?')
            if choice2 == 'date':
                Jack.date(Linda)
            elif choice2 == 'shopping':
                Jack.shopping(Linda)
            elif choice2 == 'hotel':
                Jack.hotel(Linda)
            print(Linda.love_value)
            if Linda.love_value >= 100:
                print('Game over, you have chased Linda.')
                break
            else:
                continue
        elif choice1 == 'Mark':
            Jack.visit(Mark)
            choice2 = input('what do you want to do ?date? shopping? hotel?')
            if choice2 == 'date':
                Jack.date(Mark)
            elif choice2 == 'shopping':
                Jack.shopping(Mark)
            elif choice2 == 'hotel':
                Jack.hotel(Mark)
            print(Mark.love_value)
            if Mark.love_value >= 100:
                print('Game over, you have chased Mark.')
                break
            else:
                continue
        else:
            print('plz enter your choice again')
        i+=1
    day+=1
    if max(Rose.love_value, Linda.love_value, Mark.love_value)==100:
        break

    if day >=5 :
        print('sorry, you will be single all along.')

最后的visit选项那里,代码有些过于重复,先去逛个街,回头再想。。。。

转载于:https://www.cnblogs.com/calvinsun/p/7399916.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
类似“爱情类”RPG游戏,类似主题医院及暗黑破坏神的场景,还算曲折的故事情节,动听的音乐(MP3格式),动人的结尾动画(AVI格式因为太大,不便上传),现奉献全部源代码,及编译所需组件,有兴趣着可以用此来"编撰"自己未实现的梦. NewStar 1998操作系统: win98-win2000编译语言环境: Delphi 3.0 (4.0)美工:推荐 Abode Photoshop 4.0动画制作环境: 推荐Asymetrix DVP 4.0DELPHI3.0 游戏VCL组件安装:1、Anigrp10.dcu :动画工程师引擎,负责场景动画 安装方法:在DELPHI 3.0 IDE界面中选择Component->Install Components... 菜单,在弹出的窗体 Unit file name 栏目 选择Browse按钮,选中Anigrp10.dcu,点OK按钮,再编译组件, 如果出现File not Found...等错误提示,可以将Anigrp10.dcu复制到Delphi3 安装目录 Lib目录下。2、AMixer.pas :声音控制引擎,负责声音效果 安装方法:在DELPHI 3.0 IDE界面中选择Component->Install Components... 菜单,在弹出的窗体 Unit file name 栏目 选择Browse按钮,选中AMixer.pas,点OK按钮,再编译组件, 如果出现File not Found...等错误提示,可以将AMixer.pas复制到Delphi3 安装目录 Lib目录下。2、MPEGPLAYER.pas: MP3音乐声音控制引擎,负责MP3音乐播放 安装方法:在DELPHI 3.0 IDE界面中选择Component->Install Components... 菜单,在弹出的窗体 Unit file name 栏目 选择Browse按钮,选中MPEGPLAYER.pas,点OK按钮,再编译组件, 如果出现File not Found...等错误提示,可以将MPEGPLAYER.pas复制到Delphi3 安装目录 Lib目录下。编译注意:在编译提供的样例程序时,请将Dbclient.dll及Mpegdll.dll复制到样例程序目录中。 场景对话文件编辑: 游戏中所有场景对话都保存在Dat.cdx文件中,要修改对话,可以用Delphi的ClientDataSet 组件的LoadFromFile及SaveToFile方法打开本文件读写,文件内容可以在DBGrid中显示,采用 DataSource来连接ClientDataSet和DBGrid.EMAIL: newstarchj@163.net
后台可对会员举行币种冲扣,可举行赠予赠予英豪。治理账户可设置差别脚色权限。撑持自界说会员级别,会员前提进级。 撑持推广奖、团队奖会员等级处分比例。可零丁设置单个英豪。具体财政治理,生意业务较着高深莫测。 2020年运营级区块鸟源码–定制版黄金鸟区块养殖区块宠物体系 网上传播的区块宠物类型的源码太多了,真正好用又都雅的真没几个。这个除了界面美丽外,相应速率和代码优化的都很是的不错,跟今朝网上传播的那些几百上千的比拟,它越发好用。 本区块链源码的后台可对会员举行币种冲扣,可举行赠予赠予英豪。治理账户可设置差别脚色权限。撑持自界说会员级别,会员前提进级。撑持推广奖、团队奖会员等级处分比例。可零丁设置单个英豪。具体财政治理,生意业务较着高深莫测。 区块鸟源码测试陈诉 颠末开端的测试,本套源码的安装很是顺遂(安装教程在源码包内),应用轻微需求花点心思,由于虽然发布的网站许多,但测试的人很少,以是我花了快要一个小时的时间才探索到了一点门槛,今朝尚未发明什么问题,难点在于会员的注册功效的完成,信赖有许多在其它处所下载的伴侣在这下面栽了跟头!然后既然到了本站,你就无需有此担忧了,我会把详细的事宜写到上面的源码下载区域,各人下载时即可望到了!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值