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

Project1

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

[原创发布] SEP Window_Message XP对话窗口增强组件 v1.1

[复制链接]

Lv5.捕梦者 (版主)

遠航の猫咪

梦石
3
星屑
23191
在线时间
2387 小时
注册时间
2005-10-15
帖子
1166

开拓者

跳转到指定楼层
1
发表于 2018-1-3 22:35:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 SailCat 于 2018-1-17 18:32 编辑

代码有近2200行,只贴注释好了,剩下的见范例工程。
更新:
v1.1
1. 增添了\~控制符,可以立即清除一切格式更改(包括颜色),恢复到默认的字体格式。
2. 增加了几个方便的宏替换操作,原理同1.0版的\Cn[str]一样。
3. 现在可以用-1\-2\-3这三个特殊值在\A控制符中,指定在头像、立绘上显示动画。
4. \^[0]可以用来禁用B键快速跳过本篇对话,强制显示关键对话。也可通过配置使跳过功能仅Debug模式可用。
5. 在显示有立绘的情况下,按A键可以暂时隐藏对话框,便于查看立绘,之后按A、B、C键均可恢复。
6. 窗口皮肤、色调和背景的不透明度可以自定义配置。默认与系统设置相同。
7. 优化了窗口进入和退出的效果,避免多段对话间不必要的延迟。
8. 在打字效果打开的情况下,文章翻页的效果可以改成逐行向上滚动(而不是暂停等待),由配置中的PAGE_EFFECT指定。
9. 在打字效果关闭的情况下,窗口会带字淡入,无字淡出,这同XP的默认效果保持一致。

其他修改(在窗口核心1.4 中):
1. 修正了\V[Pn]和\V[Tn]中n没有加1的问题,现在它们和\T及\P的n意义一致。
2. 修正了菜单状态窗口和对象状态窗口在人数不满4时行高错乱的问题。
3. 将原属于1.0对话窗口的控制符\* \_ \O(粗体、斜体、更改不透明度)以及新增的\~均改写到窗口底层,从而可以在对话窗口以外的窗口中使用(主要是在帮助窗口和对话窗口辅助的变量窗口中使用)。
4. 用HTML代码指定颜色现在不再需要(也不再允许)将前置#写作_,保留标准的#写法。

RUBY 代码复制
  1. #==============================================================================
  2. # ■ 窗口增强-对话窗口 v1.1 by SailCat
  3. #------------------------------------------------------------------------------
  4. #   方法:本脚本插入到Main之前使用,并依赖以下脚本:
  5. #   依赖:窗口增强系统核心插件
  6. #   版本:v1.1 (Build 180107)
  7. #   效果:
  8. #     1. 对话框逐字输出效果
  9. #     2. 对话框控制功能增强
  10. #     3. 对话框长文章显示支援
  11. #     4. 手工续行和手工换行支援
  12. #   配置:
  13. #     1. 效果配置项
  14. #     2. 脸图/立绘默认路径配置项
  15. #     3. 自定义宏替换控制符配置项
  16. #   冲突:其他同类脚本
  17. #   说明:
  18. #     1. 对话框逐字输出效果:默认开启,每帧显示1个字符。
  19. #        如果要调整速度,请更改配置项中DEFAULT_TYPE_SPEED的值。
  20. #        该值的含义为每隔n帧显示一个字符,如设为-1则会关闭逐字输出。
  21. #        在逐字输出过程中,按C键可快速显示至页末,按B键可立即关闭本篇对话。
  22. #     2. 对话框控制功能增强,支持窗口增强系统核心插件追加的全部控制符。
  23. #        并额外支持下列控制符(以下除非特殊说明,“省略”参数连同括号省略):
  24. #        1) 总括设置类(显示前解析,一段文章只解析一次,可写在文章任何位置)
  25. #           \G[n]   打开n号数据窗口,n的含义为:
  26. #             -1:步数;-2:游戏时间;-3:真实时间;0:金钱;正数:变量ID
  27. #           \L[str] 左侧显示文件名为str的立绘,str为数字取角色立绘
  28. #           \R[str] 同上,但是立绘在右侧显示
  29. #           \L或\R  清除立绘图像,文章结束也会自动清除
  30. #           \F[str] 显示文件名为str的头像,str为数字取角色头像
  31. #           \F      清除头像,文章结束也会自动清除
  32. #           \[str]  显示文字为str的人名框,str若省略(括号不省略)取本事件名称
  33. #           \1[str] 人名框以1号文字色显示,颜色数字可以为0-63
  34. #           \[      清除人名框,文章结束也会自动清除
  35. #           \]      将头像和人名框改为靠右对齐(默认为靠左对齐)
  36. #           \@[n]   在位置n显示对话框,n的含义如下:
  37. #             负数(战斗内外通用):
  38. #               -10:系统默认位置和尺寸;-5:对话框居于屏幕或战斗区正中
  39. #               -1~-9:对话框吸附到边角(方位如小键盘),其中-2和-8会拉长占满
  40. #             正数(战斗中的情况):
  41. #               0:跟随当前战斗者;1~4:跟随我方角色;101~108:跟随敌方角色
  42. #             正数(战斗外的情况):
  43. #               0:跟随主角;1~999:跟随对应事件;省略:跟随本事件
  44. #             对话框跟随事件时,会依事件位置的改变,真时更新位置
  45. #             若写成1000(战斗外)或省略n(战斗中),对话框会全屏无边显示
  46. #             对话框的位置设置为-2、-8、-10以外的值时,会自动根据内容调整大小
  47. #           \^[n]   对话框全部显示完毕后,等n帧自动关闭,有输入等待时会失效
  48. #                   若设为0的话,不会自动关闭,但按B键快速跳过的功能失效
  49. #        2) 文本替换类(显示前解析,直接替换文本的显示内容)
  50. #           \V[n:m] 替换为变量n的值,并按m位补前置零或套用m格式(不能嵌套使用)
  51. #           \ [n]   替换为连续的n个空格(控制码就是空格本身)
  52. #           \%[str] 将str作为脚本来执行并替换返回值,如执行失败则忽略
  53. #           \%{str} 同上,如果脚本中含有方括号可用此格式书写
  54. #           其余替换类控制码可见窗口增强核心插件
  55. #        3) 文本控制类(显示过程中实时解析)
  56. #           \,      停顿 1/4 秒(不随帧率变化)
  57. #           \;      停顿 1/2 秒(不随帧率变化)
  58. #           \.      停顿 1/1 秒(不随帧率变化)
  59. #           \Z[n]   停顿 n 帧(默认设置下20帧为1秒)
  60. #           \>      本行之后的内容快速显示至\<或行末
  61. #           \<      取消快速显示
  62. #           \:      行首缩进(下一行从此处开始)
  63. #           \`      取消缩进(下一行从头开始)
  64. #           \!      等待一个按键后继续
  65. #           \![n]   如n为数字,等待一个按键继续并将按键记录n号变量
  66. #                   如n为按键名(A/B/C/X/Y/Z/L/R/...),等待按这个特定的键后继续
  67. #           \K[n]   将本篇文章打字速度更改为n
  68. #           \O[n]   将文字不透明度更改为n
  69. #           \A[n:m] 在本事件或本战斗者上显示n号动画,m一般为正数见总括设置的\@
  70. #                   m取为负数的话,-1表示头像,-2表示左侧立绘,-3表示右侧立绘
  71. #           \S[str] 播放SE,str省略会取配置部分设置的SE,str写1-12取对应系统SE
  72. #           \B[n]   空n像素
  73. #           \I[str] 显示文件名为str的图标(居中对齐)
  74. #           \U[n]   文字加下划线效果,n的含义如下,如省略则终止下划线:
  75. #             1:单划线;2:双划线;3:粗划线;4:点虚线;5:短虚线
  76. #             6:长虚线;7:点划线;8:双点线;9:波浪线;-1:着重号
  77. #           \X[n]   文字加删除线效果,n的含义如下,如省略则终止删除线:
  78. #             1:单划线;2:双划线;3:粗划线;4:毛笔线;5:纯色块
  79. #             6:字加框;7:横阴影;8:左阴影;9:右阴影;-1:单字框
  80. #           \*      开始或者结束文字粗体
  81. #           \_      开始或者结束文字斜体
  82. #           \~      清除格式
  83. #     3. 对话框长文章显示、手工续行和手工换行处理:
  84. #        在输入文章的末尾打一个反斜杠(\)字符,将合并后续的文章为同一段文章。
  85. #        文章的长度,如果最后没有选择项,没有上限,如果最后有选择项,最多98行。
  86. #        在输入文章中间的换行行末打反斜杠字符,将取消这一行的换行,实现续行。
  87. #        文章中可使用\/控制符,在一行中手工换新行。
  88. #        长文章显示时会自动按窗口大小分页,可以选择按键继续或自动滚动继续效果。
  89. #     4. 显示选择项和输入数值统一自动收纳,收纳不下会自动分页。
  90. #     5. 选择项的文字中,不能使用字体改变大小和手工换行的控制符,会自动过滤。
  91. #     6. 宏替换配置说明:
  92. #        1) 宏替换的配置写作正规表达式形式。
  93. #        2) 宏替换发生在所有替换及解析之前,因此对替换文本格式不作具体限定。
  94. #           但建议不要和已有的控制符写法重复。
  95. #        3) 宏替换的替换项支持用\1,\2等写法实现向后引用。
  96. #        4) 默认示例的宏替换:
  97. #           \Cn[str],相当于\C[n]str\C[0],即用n号颜色显示str
  98. #           \Cn{str},同上,如果str部分有方括号可以用这个
  99. #           \Un[str],\On[str],\Xn[str],\Kn[str],原理均同上
  100. #     7. 立绘和脸图配置说明:
  101. #        默认设置立绘在Portraits文件夹,脸图在Faces文件夹,可以在配置中修改。
  102. #        如果要挂接到角色,请用行走图的文件名命名脸图,战斗图的文件名命名立绘。
  103. #        脸图支持VX/VA的八合一脸图,参数中写作\F[文件名:1]~\F[文件名:8]即可。
  104. #==============================================================================

欢迎测试:
WindowMessage.zip (560.3 KB, 下载次数: 307)

一些截图:






评分

参与人数 12星屑 +300 +12 收起 理由
qw7971216 + 1 精品文章
dynamicDr + 1 我很赞同
文雅夕露 + 1
gforce + 1 精品文章
鑫晴 + 1 塞糖
水母书亚 + 1 塞糖
89444640 + 1 精品文章
天使喝可乐 + 1 精品文章
梦幻想 + 1 塞糖
RyanBern + 1 希望今后用得上

查看全部评分

SailCat (小猫子·要开心一点) 共上站 24 次,发表过 11 篇文章 上 次 在: [2006年01月28日11:41:18 星期六] 从 [162.105.120.91] 到本站一游。

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

2
发表于 2018-1-4 16:55:10 | 只看该作者
還沒仔細看腳本···
輔助線是像論壇的代碼那樣把要加輔助線的文字用[x][\x]之類的框起來對吧?
輔助線的顏色可以改嗎?有沒有刪除線(如果用到了日記系統之類的,那刪除線會派到用場)

点评

這裡面的npc是不是有幾個是你認識的人的名字233  发表于 2018-1-4 17:28
你可以在范例工程中看完和“林溪纱”的所有对话,问题自然解决  发表于 2018-1-4 17:27
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8498
在线时间
775 小时
注册时间
2017-11-10
帖子
1231
3
发表于 2018-1-4 19:42:10 | 只看该作者
本帖最后由 文雅夕露 于 2018-1-4 19:52 编辑

功能好齐全的对话脚本。
强制停顿的对话效果可以用按键跳过。
不知该怎么修改才能不让按键跳过关键对话?
在漫画对话框模式里可以添加头像吗...

点评

已在1.1版本中更新你要的效果  发表于 2018-1-7 13:55
所有模式的对话框都可以添加头像。禁用B键跳过可以查找Input.repeat?(B)注释掉那一一段相关代码。或者做一个只有1个选项的选择。  发表于 2018-1-4 20:49
一个只会简单事件的Rm新人,脚本完全不懂。只求做个简单的游戏完成自己的游戏之梦而已。
第一个游戏已经完成,等待各素材的完成和测试。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
4
发表于 2018-1-6 06:23:35 | 只看该作者
本帖最后由 89444640 于 2018-1-6 07:08 编辑

楼主,我感觉这个应该是对话框插件的需要调整的部分,用楼主的测试工程,未加任何修改,在队伍中只有1~3人的时候,显示的角色窗口特别难看。

xp默认窗口队伍成员是1~4人从上向下排列,每个角色占四分之一行

请问能否改回默认效果。
然后如果有时间的话,能不能附加一个这个帖子中
https://rpg.blue/thread-404957-1-1.html
用Characters/Face/ n_f
n代表角色所在编号
这样的方式显示小图片代替行走图的功能?
我感觉这个对很多人都较为实用的。

点评

另外一个问题已在1.1(窗口核心1.4)版本中修正。  发表于 2018-1-7 13:55
改draw_actor_graphic,这个其实属于菜单优化的范围了,下一步做。  发表于 2018-1-7 13:49
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

遠航の猫咪

梦石
3
星屑
23191
在线时间
2387 小时
注册时间
2005-10-15
帖子
1166

开拓者

5
 楼主| 发表于 2018-1-7 13:49:31 | 只看该作者
ver 1.1版本更新
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
58
在线时间
3 小时
注册时间
2018-1-5
帖子
2
6
发表于 2018-1-17 02:40:54 | 只看该作者
战斗状态不太对呀。。某些角色一进去就是蓄力状态,而且buff类的特技一直miss。是兼容问题吗?

点评

有测试工程么看一下  发表于 2018-1-17 09:27
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
58
在线时间
3 小时
注册时间
2018-1-5
帖子
2
7
发表于 2018-1-17 17:27:56 | 只看该作者
就是你的示例,数据库里战斗测试了一下

点评

1190和1196的@states_changed改为@state_changed,手滑多打了个s。。。  发表于 2018-1-17 18:29
那个工程里防具里铜盾改成了自动状态蓄力,然后另一个确实是我的bug,修改公共核心的1191和1192行将user.改为skill.即可,感谢测试。  发表于 2018-1-17 18:25

评分

参与人数 1星屑 +25 收起 理由
SailCat + 25 感谢测试

查看全部评分

回复 支持 反对

使用道具 举报

Lv5.捕梦者 (版主)

遠航の猫咪

梦石
3
星屑
23191
在线时间
2387 小时
注册时间
2005-10-15
帖子
1166

开拓者

8
 楼主| 发表于 2018-1-17 18:33:26 | 只看该作者
感谢楼上的测试,范例工程已经修正并更新。
SailCat (小猫子·要开心一点) 共上站 24 次,发表过 11 篇文章 上 次 在: [2006年01月28日11:41:18 星期六] 从 [162.105.120.91] 到本站一游。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
504
在线时间
43 小时
注册时间
2018-2-19
帖子
66
9
发表于 2018-3-10 03:05:41 | 只看该作者
感谢楼主分享。
梦想是谁创造的,梦想是自己创造的。站起来吧。
                      梦想由我们自己来创造。
  无论未来有多么困难,在下都会尽全力走下去。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
35186
在线时间
4169 小时
注册时间
2007-12-15
帖子
10067
10
发表于 2020-1-31 10:55:40 | 只看该作者

对话自动送

猫大,求增加【对话框自动关闭】的功能。

需求
1、字越多等待自动关闭时间越长,每个字的等待时间在数脚本里可自行设置,
2、手动指定等待时间,(目的:以实现剧情中角色动作配合对话显示)
3、可以指定是否允许按键跳过这句对话(目的:普通无动作对话允许,大量动作配合对话不允许。)

非常感谢。

点评

哦果然有,这脚本功能太多了,没用过的还真没找到……谢谢猫大。  发表于 2020-1-31 11:27
私信怕不回,思来想去发这里了,抱歉,下次我开新帖吧  发表于 2020-1-31 11:24
\^[n]可以等待n帧自动关闭啊,禁止按键跳过你用\^[0],看前面脚本47行的注释  发表于 2020-1-31 11:24
你这个能不能私信他, 你这樣回貼算挖坟了  发表于 2020-1-31 11:20
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 06:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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