找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1660|回复: 6

[已解决] 游戏触发结局后无法退回开始界面

[复制链接]
发表于 2022-3-25 17:02:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 智慧的凝视 于 2022-4-1 00:59 编辑

游戏触发结局前在进行日常事件语句,结局之后没有回到开始界面,反而又执行了一遍日常事件
[RenPy] 纯文本查看 复制代码
label canteen:
    $i=renpy.random.randint(0,3)
    if i==0:
        jump canteen0
    elif i==1:
        jump canteen1
    elif i==2:
        jump canteen2
    elif i==3:
        jump canteen3
    elif i==4:
        jump canteen4
    elif i==5:
        jump canteen5
    elif i==6:
        jump canteen6
    elif i==7:
        jump canteen7
    elif i==8:
        jump canteen8
    elif i==9:
        jump canteen9
    elif i==10:
        jump canteen10
    elif i==11:
        jump canteen11
    elif i==12:
        jump canteen12
    elif i==13:
        jump canteen13
    elif i==14:
        jump canteen14
    elif i==15:
        jump canteen15
    return

这是最后执行的事件
[RenPy] 纯文本查看 复制代码
label canteen0:
    "今天吃到了火龙果炒肉,实在是太奇葩了,压力+20"
    $stress+=20
    $check(love_points,stress,marks)
    call timechange

这个是跳转过去的事件示例
[RenPy] 纯文本查看 复制代码
label ne1:
    "……"
    "……"
    "END"

    return

这个是结局语句
[RenPy] 纯文本查看 复制代码
screen map_night1:
    imagemap:
        idle "gbuttons.png"
        ground "smap.png"
        hover "gbuttons_dark.png"
        #pos(100,100)
        xpos 0
        ypos 0
        hotspot(1000,200,500,300) action [Hide("map_night1"),Call("room")]   #宿舍
        hotspot(760,550,500,300) action [Hide("map_night1"),Call("classroom")]  #教学楼
        hotspot(760,750,500,300) action [Hide("map_night1"),Call("library")]   #图书馆
        hotspot(100,800,500,300) action [Hide("map_night1"),Call("field")]  #操场
        hotspot(1250,550,500,300) action [Hide("map_night1"),Call("canteen")]  #食堂
        hotspot(1300,250,500,300) action [Hide("map_night1"),Call("studentunion")]  #学生会

这个是执行踩地图操作的语句


发表于 2022-3-25 18:34:52 | 显示全部楼层
ne1是结局,可是没看到哪里有跳到ne1的啊,在canteen0的check函数里?还是timechange的label里?
回复 支持 抱歉

使用道具 举报

 楼主| 发表于 2022-3-25 23:29:39 | 显示全部楼层
Lost 发表于 2022-3-25 18:34
ne1是结局,可是没看到哪里有跳到ne1的啊,在canteen0的check函数里?还是timechange的label里? ...

那我就补充一下
[RenPy] 纯文本查看 复制代码
label daily1:
$count+=1
$tcount=1
if count<=5:
    $week=1
    $day=count
elif count<=10:
    $week=2
    $day=count-5
elif count<=15:
    $week=3
    $day=count-10
elif count<=20:
    $week=4
    $day=count-15
if count<=20:
    scene sky_d with fade
    "今天是第[week]周第[day]天"
    "新的一天开始了,该做什么好呢?"
    call chooseroute
elif count>20:
    jump gpropose

这个是日常开始以及判断是否进下一个剧情
[RenPy] 纯文本查看 复制代码
label chooseroute:
    if route==0:
        call screen map_day0 with fade
    elif route==1:
        call screen map_day1 with fade
    elif route==2:
        call screen map_day2 with fade
    elif route==3:
        call screen map_day3 with fade

选地图的函数
[RenPy] 纯文本查看 复制代码
label gpropose:
    "加入学生会已经两个月了。"
    "可能是学姐在背后帮忙的关系,我顺理成章被分到了她所在的社联部。"
    "主要工作就是帮学姐处理社团活动申请表,还有帮忙写宣传活动的推送。"
    "虽说工作不是很累,但同时还要兼顾学习生活,有时就有些繁忙。"
    "好在学姐一直都很照顾我。"
    "而且有了学生会这个接点,我和学姐的关系也变得越发亲近。"
    "午饭时间,学生会室。"
    p "哈哈哈哈哈哈哈哈哈哈哈,鸡汤来咯!"
    g "3Q,谢啦彭哥~"
    p "不谢,大家都来吃吧。"
    "书记彭哥拿着一屋子人的饭进来,招呼还在埋头批报表的我们吃饭。"
    p "(吸溜吸溜)这喝汤多是一件美事啊~"
    g "(吸溜吸溜)啊,我记得你爱吃香菇对不对,我的给你。"
    h "(吸溜吸溜)嗯?!"
    "学姐很自然地从自己碗里夹起香菇放到我碗里。"
    "她也不是第一次这样了。"
    "总觉得学姐……在不知有意还是无意地做出这种亲密举动。"
    "对我来说当然是值得开心的事。"
    "在一起处理学生会事务的过程中,我更加了解她了。"
    "而越了解她,也就越喜欢她。"
    "我也是正值青春的男生,自然也很憧憬恋爱。"
    "就在我第n次在梦里见到学姐的身姿后,我意识到我其实是喜欢学姐的。"
    "是那种想在一起的喜欢。"
    "所以我自然对她的一举一动都格外关注。"
    "既然能做出这种举动,那是不是就说明她起码是不反感我的?"
    "最好还有点小喜欢。这样发展下去,我就可以顺理成章地向学姐表白,然后……"
    g "怎么了,想什么呢?"
    "学姐戳了戳我的脸。"
    h "(惊)"
    h "没什么,只是在发呆。"
    "我尽可能自然地回答道。"
    g "完了,孩子天天批报表批傻了。"
    g "那吃完饭歇会吧。你下午有课吗?"
    h "有一节。"
    g "那你先去上课,弄完了回来找我吧。"
    g "学校后门新开了家奶茶店,我请你喝奶茶。"
    h "好。"
    p "又约会啊,感情真好。"
    "就彭哥这种社交牛逼症重度患者,想让他放过任何一个调侃的机会是不可能的。"
    g "对对对,约会了,那剩下的表就交给彭哥了。"
    "学姐居然接着他的话,顺便把工作推给了他。"
    p "小心副会吃醋。"
    "我收拾餐具的手顿在了那里。"
    "副会长,传说中的人物。"
    "概括一下就是高富帅且现充。像那种爽文男主。"
    "似乎在别的学生会成员眼里,他和学姐就是金童玉女天生一对。"
    "甚至还有真情实感嗑他俩的cp粉。"
    "证据就是,偶尔在学生会公众号的文章底下会有人留言,比如“今天副会高姝结婚了吗”。"
    "我也向学姐求证过流言的真实性,但学姐都是说“副会怎么可能喜欢我嘛”,打着哈哈过去了。"
    "总之,先去上课吧。"
    "……"
    "下课后,我飞奔着冲向学生会室。"
    "马上就能见到学姐了。"
    h "呼哧……呼哧……"
    "我在学生会室门口喘着气。"
    "还是等呼吸平稳了再进去吧。我可不想被学姐看见喘粗气的样子。"
    "此时,里面传来说话声。"
    g "副会,怎么了?"
    "看来副会在里面。"
    v "高姝,我真的不明白。"
    v "我到底哪里不好?"
    g "没有啊!你很好。"
    v "那你为什么不愿意和我在一起?"
    h "!!!"
    "我悄悄贴近了门缝。"
    g "呃,该怎么说呢……就是我没有那个意思吧。"
    v "你没有那个意思?"
    v "那你为什么要对我好?"
    g "你冷静一下。"
    v "你给我带饭,还请我喝饮料,还跟我一起学习。"
    g "这只是很正常的朋友之间的行为啊!"
    v "学生会合影的时候我找你单独照双人照你也没拒绝。"
    g "我也和别人一起照了呀。"
    v "眼神不会骗人。你其实喜欢我的,对不对?"
    v "其他成员不也觉得我们很配吗。为什么我们就不可以在一起试试?"
    g "你真的误会了。"
    v "对我来说,你是一个好朋友。我不想破坏我们之间的友情。"
    v "……"
    "我的胃里翻江倒海。"
    "学姐拒绝了我的“情敌”副会长。"
    "本来应该是高兴的事,但为什么,我会觉得这么苦涩呢?"
    "是了,是因为拒绝的原因。"
    "学姐说,他误会了。"
    "误会了什么?误会了学姐对他的好是喜欢他的表现。"
    "他以为自己是特别的那个人,结果实际上她对谁都一样。"
    "学姐只是单纯的人好而已。只是关心普通朋友而已。"
    "我又何尝不是一样?"
    "难道学姐就没有给我带过饭,请我喝过饮料,和我一起学过习吗?"
    "我所感受到的温柔,可能对人家来说真的没什么 特别的意义。"
    "学姐说不定,对我也是当成普通朋友看待。"
    "而我却擅自喜欢上了她。"
    v "……我好像一个小丑啊。"
    "如果我抢先副会一步向学姐表白的话,可能现在站在她面前狼狈不堪,像个小丑的就是我了。"
    "我可能也是小丑,而且刚刚才发现。"
    "果然像我这样的人是注定得不到幸福的吗。"
    "我决定要加入学生会时,是为了帮上学姐。也是为了让自己有机会改变,成长为配得上她的人。"
    "但是,配不配得上和人家喜不喜欢你根本就是两码事。"
    "我这才醒悟过来,自己的恋情可能一开始就不该萌生。"
    "人家连那个公认受欢迎的副会长都看不上,能看上你?"
    "好丢脸,好后悔,好想马上死掉。"
    menu:
        "我——"
        "“但我还是想要相信学姐”":
            jump isgroute
        "放弃吧":
            jump ne1

分线并进结局
[RenPy] 纯文本查看 复制代码
label ne1:
    "好害怕,好害怕,好害怕。"
    "害怕被拒绝,害怕被疏远,害怕悲剧重演。"
    "我的感情一开始就是错的,所以……"
    "所以就让我亲手把它掐死在摇篮里吧。"
    "为了不被学姐疏远,只能我自己选择疏远她了。"
    "逃避吧,逃避吧,逃避吧。"
    "因为,一直以来不都是这么过来的吗?"
    "……"
    "我以学业为由退出了学生会。"
    "也不再联系学姐了。"
    "今后,我决定一如既往地,孤身一人走下去。"
    "我一个人也能行的。"
    "我不需要人际关系,也不需要和他人的接点。"
    "……"
    "四年后。"
    "我成功考上了某所著名大学的研究生。"
    "但偶尔还是会梦见自己第一天踏进大学校门时,那个来迎接我的热心学姐的身影。"
    "现在她又在哪里,在做什么呢?"
    "我不可能知道了。"
    "如果那时我没有选择逃避的话,是不是会有不一样的结局?"
    "但那也永远只是“如果”而已了。"
    "END"

    return

结局
回复 支持 抱歉

使用道具 举报

发表于 2022-3-26 00:47:07 | 显示全部楼层
天,大哥啊,我是想让你展示代码逻辑,给个最小可执行样例来体现核心思想就行,你把这么多剧本发出来干啥子啊啊

一开始看到这个问题就想到基本上就是call的问题,call执行完了是会接着执行下面的语句的,所以label请不要call,用jump

介于你的程序逻辑还是没有给全,我就稍微猜了下,可能是这样的,注释掉的就是你原来写的
[RenPy] 纯文本查看 复制代码
default x = 0
label normal_end:
    'Normal End'

    return

screen map_day:
    imagemap:
        ground "bg uni.jpg"
        xpos 0
        ypos 0
        # hotspot(0, 0, 1000, 1000) action [Hide("map_day"), Call("canteen")]
        hotspot(0, 0, 1000, 1000) action [Hide("map_day"), Jump("canteen")]

label timechange:
    'timechange'
    jump daily

label canteen0:
    'canteen0'
    # call timechange
    jump timechange
    'call timechange end'

label canteen:
    jump canteen0
    return
    
    
label chooseroute:
    call screen map_day with fade

label script_1:
    menu:
        '123'
        '456':
            jump normal_end

label daily:
    $ x += 1
    if x == 1:
        'x: [x]'
        # call chooseroute
        jump chooseroute
    elif x >= 2:
        'x: [x]'
        jump script_1

label start:


    'Start'
    jump daily
    'End Main'
    return
回复 支持 抱歉

使用道具 举报

 楼主| 发表于 2022-3-26 15:27:58 | 显示全部楼层
我把所有应该改成jump的点都改成jump,但是最后在报错,说找不到return的label???
为什么return是个label???
回复 支持 抱歉

使用道具 举报

发表于 2022-3-26 15:52:17 | 显示全部楼层
错误详情给一下
回复 支持 抱歉

使用道具 举报

 楼主| 发表于 2022-4-1 00:59:31 | 显示全部楼层
解决了,用的$renpy.full_restart()
回复 支持 抱歉

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|RenPy中文空间 ( 苏ICP备17067825号|苏公网安备 32092302000068号 )

GMT+8, 2024-11-22 03:36 , Processed in 0.107352 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表