设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 46819|回复: 137
打印 上一主题 下一主题

[原创发布] 【老鹰的RGSS3脚本小巢】对话框扩展(9.6英语版)

[复制链接]

Lv6.析梦学徒

老鹰

梦石
40
星屑
35333
在线时间
6775 小时
注册时间
2012-5-26
帖子
3258

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

跳转到指定楼层
1
发表于 2019-3-30 15:04:55 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 百里_飞柳 于 2023-9-6 21:42 编辑



LOGO绘制by @congwsbn

○ 前言

之前曾经发过一个记录自己写的数据库扩展的脚本帖子,不过果然是坑了hhh
所以更改了下方案,之后还是上传到自己的github仓库,方便我自己维护,也方便其他人查看。
我也学乖了,不再在同一个帖子里反复编辑更新,而是在有较大的系统完成后发布新帖子,这样也方便大家能直接看到我的最新操作。
这个帖子便是宣传与发布我的对话框扩展系统。


○ 概述

默认对话框的功能实在是过于局限,所以最初我写了一个 对话框转义符扩展 插件来增加新的转义符,
但是有的转义符势必会修改对话框自己的一些属性,比如宽度高度、显示位置、背景等,
所以我在那个插件的基础上继续扩展,完成了 对话框扩展 插件,里面包含了更多的转义符,用于实现在显示文字的同时应用各种设置变更。

当然,我还为 对话框扩展 写了一系列的AddOn插件,譬如 选择框扩展、物品选择扩展、滚动文本框扩展、并行对话、关键词信息查看 等。
以后可能会有更多其他对话框相关效果诞生,我也非常期待大家的回复与创意~


○ GitHub仓库

我的RGSS3仓库地址为:https://github.com/OneEyedEagle/EAGLE-RGSS3
其中的 Message System 文件夹下放置了 对话框扩展 及其 AddOn 插件。
而其中的 Demos 文件夹下的 DEMO_EagleMessageEX 文件夹放置了我特地为这一套插件制作的简单范例工程。
出于私心,这个DEMO还携带了一个非常小的剧本,虽然没有绘制Fidelis系列的LOGO,不过它的确是我的某一个坑的剧情预热。

【2020.10.2 更新】由于真的有人完全搞不懂GitHub,所以我额外新增了一个 蓝奏云载点 密码是 fcu5,尽量保证和GitHub上的DEMO更新时间一致吧……


○ 英语版

超级感谢 Roninator2 和 BCj 努力把我的三个DEMO翻译成了英语版!具体请见这里
BIIIIIG THANKS to Roninator2 and BCj! They made awesome works to translate my three DEMOs into English version. More information is HERE.



○ 示例图

1
对话框扩展 + AddOn滚动文本框扩展
动图较大,酌情点开

【新增功能】其中全部文字特效均可在 对话框 中使用,但由于对话框的一些特性,并行绘制与指定文字位置的效果可能造成其他麻烦的问题,所以我没有给对话框转义符这些特性hhhh

2
对话框扩展 + AddOn选择框扩展 + 简单粒子系统发散式 + 粒子模板 + AddOn文字四散移出
事件脚本:$game_message.para = true
对话文本:\pop[1]\pout[1]\win[cwi3]据我推测,整件事情只有一个人有可能做到,\nl虽然说出来你会不信,不过全部证据都指向着他。
选项1:说重点。ex{ri-1rt1}
  事件脚本:t = "\\pop[1]啧,还是这么急。\n"
  事件脚本:$game_message.add_escape(t)
选项2:你确定?
对话文本:\pop[1]不管你信不信,这就是我全部的推理。
动图较大,酌情点开

【新增功能】当启用para开关时,选择框将会与对话框同步打开
【新增功能】选择框的文字移出效果,与对话框的文字移出效果相同

3
对话框扩展
脸图设置:名称:ph_t_1x1.png,索引:0
对话文本:\win[lh16]\pop[0w250h2]\cout[1]这当然是测试用的文本啦,写的非常长的一句话。
                测试换行效果。
                第三行呢?
                第四行会怎么样呢?\nl第五行了鸭!\facep[z-1dx-85dy50m1]
动图较大,酌情点开

【新增功能】脸图规格扩展,当脸图文件名含有 _mxn 格式的文本时(其中m和n为数字,x为小写字母X),在对话框中会认定该张图片为m行n列规格,若没有该文本,则为2行4列(同默认)
【新增功能】脸图z值偏移量的设置,当z值偏移量为-1时,将显示在对话框下方,且不占用对话框宽度;z值偏移值默认为1,脸图显示在对话框左侧,且占用宽度
【新增功能】内容滚动,当对话框的宽度高度固定时,在等待按键时,将开启内容滚动功能,此时按住方向键可以进行查看,按确定键或取消键继续下一指令

4
对话框扩展
对话文本:\cswing[o8]测试用一行文本。
动图较大,酌情点开

【新增功能】文字摇摆特效,全部文字特效已经整合到 Add-On选择框扩展 与 Add-On滚动文本框扩展 中。

5
对话框扩展
对话文本:\pop[0]\ctog[i0t10r1]警告\ctog[0]!——
\ctog[i0t12r1]警告!\ctog[0]
检测到\ctog[i0t30r0]不明身份\ctog[0]人员。
动图较大,酌情点开

【新增功能】文字切换特效。

6
对话框扩展
对话文本:\win[cwi1o5do-5fw1fh1]\cin[do5t30]\cout[do5t30vo30]这是故事最开始的地方,没有人知晓TA如何而来\pause[do2o5]
动图较大,酌情点开

【新增功能】指定文字移入移出的目的地。

7
对话框扩展
预览图较大,酌情点开

【新增功能】利用 \next 转义符,不关闭当前对话框,继续执行之后的事件指令,在下一个显示文本时,接着之前的对话框继续显示。

8
粒子发射器
动图较大,酌情点开

【新增功能】为老鹰的一些独立系统UI的背景,增加了动态连线的粒子特效


○ BUG反馈

由于我个人力量有限,在我未能完全尝试的情况下,部分转义符的组合可能会产生奇怪的BUG,请最好 截图 并 记录相关转义符变量参数值 来回帖询问。

【2020.5.3 更新】 ⑨姐姐因为接单原因用到了这个插件,所以开了一个Q群(647297622)进行交流使用,欢迎大家一起来扩展对话框的可能性~
点开查看二维码



○ 关于整合

原则上我并不想和其他任何对话框进行整合,
当然如果它们足够有趣或者你用钱砸我,我会热心帮忙。
【2020.8.22】对话框增强了兼容性,现在我的对话框完全独立于默认的对话框了,所以理论上可以和其他对话框一同存在。
同时在脚本开头处新增了一个常量,当该常量置为 true 时,将使用默认对话框。
但在事件中开启 $game_message 中的开关 eagle_message 后,将转而使用我的对话框。
并且由于独立了,并行对话等Addon也可以一起随其他对话框同时使用了。

评分

参与人数 37星屑 +1000 +37 收起 理由
夜久优奈 + 1 精品文章
hamiya + 1 哇塞好强挖!
D_Lohy + 1 I got it!
老白窗晗 + 1 太强了!
刘呱 + 1 棒啊!
bronya + 1 精品文章
ac97428 + 1 精品文章
AhsleaXron + 1 精品文章
越前リョーマ + 1 gif很生动
言言UwU + 1 精品文章

查看全部评分

Lv1.梦旅人

梦石
0
星屑
155
在线时间
8 小时
注册时间
2022-12-22
帖子
13
51
发表于 6 天前 | 只看该作者
百里_飞柳 发表于 2025-6-18 00:02
虽然有些奇怪,我这个对话框和默认对话框是互相独立的,所以你用其它对话框美化,理论上应该是不影响的… ...

太感谢了!
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
35333
在线时间
6775 小时
注册时间
2012-5-26
帖子
3258

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

50
 楼主| 发表于 6 天前 | 只看该作者
晨风1 发表于 2025-6-17 22:39
我能否将win中的INDEX_TO_WINDOWSKIN这个功能单独禁用?用了其他的一键换对话框皮肤的脚本,这个会影响我使用 ...

虽然有些奇怪,我这个对话框和默认对话框是互相独立的,所以你用其它对话框美化,理论上应该是不影响的……

如果你想禁用,直接将这个方法覆盖了就好
  1. class Window_EagleMessage
  2.   def eagle_change_windowskin(index = nil)
  3.   end
  4. end
复制代码
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
8 小时
注册时间
2022-12-22
帖子
13
49
发表于 7 天前 | 只看该作者
我能否将win中的INDEX_TO_WINDOWSKIN这个功能单独禁用?用了其他的一键换对话框皮肤的脚本,这个会影响我使用....有什么解决办法吗,感谢!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
155
在线时间
8 小时
注册时间
2022-12-22
帖子
13
48
发表于 2025-2-9 21:23:07 | 只看该作者
反馈一个不算bug的东西,在战斗中,如果敌方在战斗界面边缘,在头顶显示文本时会因为地方不够文本显示不全...

点评

pop模式默认不开启fix功能,因为可能需要做对话框随着事件走出屏幕范围外,请自己写fix=1来让对pop话框位置修正在窗口内  发表于 2025-2-9 22:45
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
632
在线时间
46 小时
注册时间
2022-2-6
帖子
17
47
发表于 2024-7-8 23:24:55 | 只看该作者
百里_飞柳 发表于 2024-6-23 23:18
第一个问题:
对话框扩展 当然支持使用自定义的背景图片,以下是设置的说明:

抱歉回复晚了,但非常感谢您!
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
35333
在线时间
6775 小时
注册时间
2012-5-26
帖子
3258

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

46
 楼主| 发表于 2024-6-23 23:18:09 | 只看该作者
本帖最后由 百里_飞柳 于 2024-6-23 23:30 编辑
BCJenbo 发表于 2024-6-23 19:20
你好鹰,
我还有 2 个问题。是否可以像这样向消息添加消息框,而不是窗口皮肤?


第一个问题:
对话框扩展 当然支持使用自定义的背景图片,以下是设置的说明:

1. 了解相关转义符参数:
在 \win 转义符的设置区域中,找到 :bg 和 :bgo 两个参数,:bg 是用来指定所使用的背景图片的ID,:bgo 是用来指定背景图片是如何与对话框窗口对齐的。

2.  在脚本中预设:
在 INDEX_TO_WINDOW_BG 常量中,可以设置 背景图片的ID => 背景图片的名称 的Hash。
比如: INDEX_TO_WINDOW_BG[1] = "Message_BG_1"   → 意义:当 :bg 为1时,使用 Graphics/System 目录下的 Message_BG_1.png 图片

3. 使用背景图片:

第一种方法:在 WIN_PARAMS_INIT 常量中,设置 :bg => 1 ,其中 1 是在脚本中预设的背景图片的ID;设置 :bgo => 7,其中 7 代表背景图片的左上角将始终和对话框的左上角对齐(PS:依据数字小键盘位置进行设置,比如 1 代表左下角对齐,5代表中心点对齐,6代表右边界中点对齐)。

第二种方法:在显示文本中,编写转义符 \win[bg=1 bgo=7]

4. 此外,关于姓名框、脸图、对话框底部的按键提示动画都可以设置。

针对图片中的样例,可以如下编写:

在 INDEX_TO_NAME_BG 中编写姓名框的背景图片ID => 背景图片名称,并使用 \name[姓名文本|bg=1 bgo=7 dx=0 dy=24] ,让姓名框放置于对话框左上角。

使用 \face[z=-1],让脸图放置于对话框下层。

使用 \pause[do=2],让按键提示动画显示在对话框底部。

5. 特别注意:
在最新版的对话框中(>=1.11.0),加入了 S_ID_RESET_ENV 常量,当设置为 true 时,将在对话框关闭时重置全部参数,
也因此,如果你想保留以上的设置,而不是每一次编写对话文本都要写一大串转义符,可以有以下方法:

第一个方法:就如 DEMO_EagleMessageEX 中一样,新建一个脚本页,对 WIN_PARAMS_INIT 等常量进行覆盖赋值。
第二个方法:利用 \env 转义符 和 DEFAULT_ENVS 常量,将全部设置写入一个环境,随后在显示文本中读取环境。




第二个问题:
我很想正式发布这些高级功能脚本,但因为它们设置复杂度、理解难度都较大,而且一般很难兼容其他人的更知名的使用更广泛的脚本,导致我没有精力像【对话框扩展】一样去日常维护它们。

只有当我在我的个人作品中使用时,才有精力去debug。

因此我没有进行公开发布。

(PS: 像素级移动 已经在 DEMO_EagleEventEX 中了。)

当然你依然可以使用它们,如果遇到脚本本身的bug也欢迎在Github上发issue,但我不会帮忙将它们与其他人的脚本进行兼容。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
632
在线时间
46 小时
注册时间
2022-2-6
帖子
17
45
发表于 2024-6-23 19:20:04 | 只看该作者
你好鹰,
我还有 2 个问题。是否可以像这样向消息添加消息框,而不是窗口皮肤?


我想我在你的 github 上看到了一些新脚本(Pixel Movement?)是否会有演示,或者不公开发布?

我用过谷歌翻译,希望没问题!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
6 小时
注册时间
2023-9-28
帖子
1
44
发表于 2023-10-15 09:16:14 | 只看该作者
太酷了,回来试一试
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
950
在线时间
120 小时
注册时间
2020-7-7
帖子
19
43
发表于 2023-10-15 01:29:34 | 只看该作者
脚本纯小白问一个蠢问题,姓名框内人物名字的文字颜色是不能改成不同的人用不同的姓名颜色,只能大伙都用同一种文字颜色吗,我试了用“\c[2]\name[主角]”的话“主角”文字颜色还是统一的颜色,用“\name[主角]\c[2]”的话虽然“主角”文字颜色能变成紫色了,但是姓名框没了。有无能即时改姓名颜色又能保留姓名框的( ゚∀。)7

点评

啊,好的,感谢!  发表于 2023-10-16 22:41
有,我在姓名框的备注里写了,需要把其中转义符用<>代替[],所以可以 \name[\c<2>主角]  发表于 2023-10-15 20:36
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-6-24 22:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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