当前位置: 首页 > 工具软件 > Ren'Py > 使用案例 >

Ren’py语言编程,心跳文学部mod②

阎智
2023-12-01

在第一期教学时,主要介绍了Ren’py启动器、《心跳文学部》中文模板获取方式、模板内的重要文件。那么第二期,将会介绍Ren’py的一些编译语言(十分简单,有手就行)。本文章由于是非专业人士写的,所以描述可能和官方有点不一样,敬请谅解!

首先,我们先来看一段简单的代码,也就是原版游戏一周目开头的场景剧情。

 

stop music fadeout 2.0

 scene bg residential_day with dissolve_scene_full

  play music t2

  sc "等等我!!"

  "我看见一个吵闹的女孩挥着手从远处朝我跑来,仿佛丝毫不在意这样会引来全世界的注意。"

  "她叫纱世里,是我的邻居,也是我儿时玩伴。"

  "换做现在,我才不跟她这种人交朋友呢;不过我俩相识太久,不知怎地就慢慢生出了友谊,于是就那样了。"

  "我们以前经常这样结伴上学,但上了高中以后,她睡过头的频率就越来越高,而我也有点懒得等她了。"

  "不过她要是打算这样穷追不舍,那我还不如一走了之呢。"

  "然而我只是叹了口气、在路口等着,好让纱世里赶上我。"

  show sayori 4p at f11 zorder 2

  s "哈......哈......"

  s "我又睡过头了!"

  s "但这次我追上你了!"

  mc "也许吧,但那也只是因为我决定停下来等你。"

  show sayori 5c at t11 zorder 2

  s "唔姆姆,你说得好像打算抛下我似的。"

  s "你好坏哦,[player]。"

  mc "呃,如果大家因为你举止怪异而盯着你看,那我可不想和你一起被人当成情侣。"

  show sayori 1a at f11 zorder 2

  s "好吧,好吧。"

  s "但你最后还是等了我嘛。"

  s "即使心里想使坏,可本质上你还是个温柔的人嘛~"

  mc "随你怎么说吧,纱世里......"

  show sayori 1q at f11 zorder 2

  s "诶嘿嘿~"

  "我们穿过马路,继续向学校走去。"

  "在靠近学校的路上,通勤的学生使街道显得愈发拥挤。"

  show sayori 3a at t11 zorder 2

  s "说起来,[player]......" 

  s "你决定好加入什么社团了吗?"

  mc "社团?"

  mc "我早就和你说过了,我对社团活动没兴趣。"

  mc "况且我也从来没想过这种事情。"

  show sayori 4h at f11 zorder 2

  s "诶?骗人!"

  s "你跟我说过今年要参加社团的!"

  mc "有吗......?"

  "我还真有可能这么说过,为了应付她不断跳跃的话题,大概就这样随口附和了。"

  "纱世里总爱过分担心我,而我则完全满足于平淡普通的生活,将闲暇时间都分配在动画和游戏上。"

  show sayori 4j at t11 zorder 2

  s "嗯哼!"

  s "我刚还做说呢,我很担心你上大学前还搞不清怎么社交,而且又没有什么特长。"

  s "我真的很在乎你过得开不开心!"

  s "我知道你现在挺开心的,但一想到过几年你就会变成一个完全融入不了社会的死宅,我都有点想死了!"

  show sayori 4g at t11 zorder 2

  s "你会相信我的吧?"

  s "别让我一直担心你......"

  mc "行行行......"

  mc "我会去一些社团转转,这样你开心了吧。"

  mc "但我可不保证一定会加入。"

  show sayori 1h at t11 zorder 2

  s "至少答应我去试试?"

  mc "好吧,这我可以保证。"

  show sayori 1r at f11 zorder 2

  s "好耶~!"

  "我怎么就任由自己被这么一个无忧无虑的女孩给说教了呢?"

  "更让我惊讶的是,我竟然就这样乖乖听任她的安排。"

  "我猜是看她这么担心,想让她至少轻松一点吧——虽然她肯定是过度紧张了。"

  call ch2_start

  return

 

 

嘶,好像放太多了...

那也没事,我们慢慢来理解这堆代码。

stop music fadeout 2.0:暂停音乐且淡出2秒。

正所周知,ddlc的主界面是有bgm的,也就是dokidoki。而刚进入游戏时,这段bgm需要暂停然后切换场景运行剧本,这段代码中stop music是暂停音乐的意思,fadeout 2.0为淡出2秒,其中fadeout为淡出效果 可以自行更改秒数。补充一下,fadein为淡入效果,可以自行更改。

 

scene bg residential_day with dissolve_scene_full:用黑屏渐入方式显示街道图片全屏

scene bg residential_day为显示街道图片,也就是纱世里第一次出场时的背景。scene为全屏的意思,bg代表着图片,bg后面的名称为图片代表的名称(其他背景、的名称可以到了第一期提到的definitions.rpy文件里查看。)with后面显示的是转场效果,其他具体的转场效果会在之后讲,或者可以到Ren’py开发文档中转场自行学习。

 

play music t2:播放音乐t2

这段代码应该挺好理解的,也就是播放音乐t2(纱世里出场bgm),其他的原版音乐在definitions.rpy文件查看。

sc "等等我!!"

  "我看见一个吵闹的女孩挥着手从远处朝我跑来,仿佛丝毫不在意这样会引来全世界的注意。"

  "她叫纱世里,是我的邻居,也是我儿时玩伴。"

...........

 

从这里开始就是整个游戏的对话内容了,也就是剧情。Ren’py的对话功能十分简洁方便,只需要一条代码即可解决。

例 s "你好鸭,朋友!"

此代码展现的效果即为在文本框出现以纱世里为对象说的内容,说得通俗一点就是纱世里会说你好鸭朋友。

其中,心跳文学部角色名词的解释如下:

(空格):心理对话。

(mc):主角说的话。

(s):纱世里说的话。

(y):优里说的话。

(m):莫妮卡说的话。

(n):夏树说的话。

 

以上原版游戏一周目开头的场景剧情主要代码,当然原版还是有一些难以理解的代码,如周目 场景之类的代码,这些代码作者本人也还在学习,以后会逐渐给大家介绍的!

 

 

 

 类似资料: