Project1
标题: 求一个简单的对话显示图片脚本(FUKI不会用) [打印本页]
作者: wdh88666 时间: 2016-1-19 16:40
标题: 求一个简单的对话显示图片脚本(FUKI不会用)
https://rpg.blue/forum.php?mod=attachment&aid=Mjk5OTA3fGQ4NmVmYzA0NmQzMGRjMjM4NzI2MjNhMDljZTQwMzg1fDE3NDY3MzU3NzM%3D&request=yes&_f=.jpg
如图,对话时显示人物半身图
我会用公共事件,但是对话和角色太多,每次都手动 调用公共事件+消失图片 的话,太麻烦了
求大神给个脚本,能实现以下功能
当执行“显示文章”指令时,
搜索文章第一行,判断是否有“:”
如果有“:”,则找到“:”前的文字(比如上图的,就是“青莲”),然后到“公共事件”里搜索,有没有“青莲头像”
如果有“青莲头像”,则执行该公共事件,当下一次按确定键(Enter/Space)时,执行“图片消失,编号1”
如果没有“青莲头像”,则什么都不发生
如果没有“:”,则什么都不发生
新手,脚本0基础,也不知道上面的想法能不能用脚本实现,请各路大神帮忙!感谢了!
-
QQ图片20160119163035.jpg
(106.81 KB, 下载次数: 29)
作者: yang1zhi 时间: 2016-1-19 17:01
论坛搜索“对话加强”
作者: wdh88666 时间: 2016-1-19 17:32
yang1zhi 发表于 2016-1-19 17:01 
论坛搜索“对话加强”
用了一下这个脚本,有几个问题
1、我想要的是系统默认的文章显示对话框,脚本已经给改成小框框了(我不知道怎么改回来
)
2、我用的不是小头像,是半身像,会显示不全(而且我的半身像尺寸大小有差异,使用前必须要调的)
所以这个脚本虽然强大,但是无法满足我的需要啊

作者: wdh88666 时间: 2016-1-19 19:41
yang1zhi 发表于 2016-1-19 17:01 
论坛搜索“对话加强”
我搜到的都是同一个脚本啊,从12年开始到现在,一直都是那个脚本,不过一直在更新。
现在主要问题是两个:1是我想要默认的对话框,不会改回来;2是看不懂那个脚本,在哪里改坐标……
不过我猜测脚本里的坐标应该都是固定的,因为范例工程里面的头像图片都是固定大小,而我的半身图大小各异(也就是说我得一张图对应一个坐标)……
所以才会请教各位大神,脚本能不能实现“智能判定”后自动调用“公共事件”指令(我可以在公共事件里把每张图的坐标都调好,脚本直接调用就可以)……
作者: RyanBern 时间: 2016-1-19 20:32
楼主是否需要这样的效果?
作者: wdh88666 时间: 2016-1-19 21:09
RyanBern 发表于 2016-1-19 20:32 
楼主是否需要这样的效果?
对的对的!效果就是这样!要怎么弄?
作者: wdh88666 时间: 2016-1-20 00:57
本帖最后由 wdh88666 于 2016-1-20 01:00 编辑
RyanBern 发表于 2016-1-19 20:32 
楼主是否需要这样的效果?
大神的帖子已拜读!\p[-1]真的很强大!不过与我想要的还是有点儿区别……
按照大神脚本的设定,半身图大概为200*400大小,不然用着就会出问题,比如这样
当我把我的半身图缩小为200*400后……半身图有很明显的被切割的感觉……对比如下
在此很感谢大神给予的无私帮助!!!
请教一下,我上面的“脚本调用[公共事件]”的想法是可行的吗?
作者: RyanBern 时间: 2016-1-20 01:12
wdh88666 发表于 2016-1-20 00:57 
大神的帖子已拜读!\p[-1]真的很强大!不过与我想要的还是有点儿区别……
按照大神脚本的设定,半身图大 ...
只要你的素材合适,那么脚本的效果应该是比较不错的。素材大小不必为200*400,但是要求素材不能留白。
你给的第一张图,素材貌似太大了,什么脚本都不好调。
切割的时候不必将有图案的地方切去,只要把左右没有像素的地方切去即可,脚本会自己调整的。
所以建议你将素材缩放到合适的大小,然后尽量切掉左右方向下方的空白像素,即可使用。如果还有要求请回复我,我明早再处理一下。
作者: wdh88666 时间: 2016-1-20 02:08
RyanBern 发表于 2016-1-20 01:12 
只要你的素材合适,那么脚本的效果应该是比较不错的。素材大小不必为200*400,但是要求素材不能留白。
你 ...
尝试了好多次!终于想到个解决的办法!
大神可否帮忙修改一下,
当头像在左侧显示时,图片的左边与窗口左边紧贴(紧贴,不留缝隙),下边与窗口下边紧贴
同理,图片在右侧显示时,图片的右边与窗口右边紧贴,下边与窗口下边紧贴
这样可以有效的避免“切割感”的问题!
然后是几个小白疑惑
1、脚本应该是图片在右侧显示以标准的吧?(图片设置在右侧显示时只会显示原图,设置在左侧显示则是原图镜像,是这样吗?)
2、脚本里写\P[-1]之后可以调整对话框的大小,我找了半天没找到在哪里调的
……大神能否帮忙改一下,\P[-1]时对话框左右两侧各向中间缩进1/10长度(两边共缩2/10)。
3、那个快捷方式,我看脚本里就一个快捷方式,是不是可以自定义之后使用的?
作者: RyanBern 时间: 2016-1-20 09:04
wdh88666 发表于 2016-1-20 02:08 
尝试了好多次!终于想到个解决的办法!
大神可否帮忙修改一下,
你说的问题原脚本其实就是这样做的啊。 头像在左侧显示的时候,图片的左边和窗口的左边,以及图片的下边和窗口的下边就是紧贴的。如果发现中间有空隙,那么肯定是图片原来左边就有空白的像素,裁掉即可。
1. 是的。所以请准备右侧显示的图像。
2. 这个在脚本820行左右,找到这个地方
elsif @popchar == -1
self.x = 0
self.width = 640
self.height = 64 + line_height * 3
self.y = 480 - self.height
elsif @popchar == -1
self.x = 0
self.width = 640
self.height = 64 + line_height * 3
self.y = 480 - self.height
更改self.x和self.width即可。实际上,\p[-1]只是将对话框放到屏幕下面去了,并没有调整对话框大小的功能。\p[数字]中数字>=0的情况下才根据内容自动调节大小。
3. 那个快捷方式只是一个例子,使用的时候你需要自己定义。
作者: wdh88666 时间: 2016-1-20 10:45
本帖最后由 wdh88666 于 2016-1-20 10:49 编辑
RyanBern 发表于 2016-1-20 09:04 
你说的问题原脚本其实就是这样做的啊。 头像在左侧显示的时候,图片的左边和窗口的左边,以及图片的下边 ...
不是吧。
我确定我的图片是没有空白的,PS截图
但在游戏里就会出现缝隙了,游戏截图
这么看的话确实是脚本的问题
我弄了个纯黑底PNG图片,这样看更清楚
作者: wdh88666 时间: 2016-1-20 11:05
本帖最后由 wdh88666 于 2016-1-20 11:06 编辑
RyanBern 发表于 2016-1-20 09:04 
你说的问题原脚本其实就是这样做的啊。 头像在左侧显示的时候,图片的左边和窗口的左边,以及图片的下边 ...
我知道问题出在哪里了!!!
图片的显示位置是根据对话框的位置定义的!(图片的左、右、下不会超出对话框的范围)
而我想要的是(以右侧显示为例)图片 右边 和 下边 跟游戏窗口(游戏窗口,不是对话框)的右边和下边无缝衔接~~
大神能教我在哪里改吗?
作者: wdh88666 时间: 2016-1-20 11:36
RyanBern 发表于 2016-1-20 09:04 
你说的问题原脚本其实就是这样做的啊。 头像在左侧显示的时候,图片的左边和窗口的左边,以及图片的下边 ...
我找到了!!!
问题就出在这里!
现在我已经把他改成我想要的效果!
不过还是想请教一下,那个x和y我能知道是什么意思,那个z是干嘛的啊?
作者: wdh88666 时间: 2016-1-20 12:20
本帖最后由 wdh88666 于 2016-1-20 12:41 编辑
@RyanBern 最后一个问题了!
现在右侧显示图片已经完全调好了!
但如果图片在左侧显示,可能会导致文章显示不全,我想调整一下当左侧显示图片时文章出现的位置,将文章的显示向左拉32的距离,找了半天没找到在哪里修改,求指点!
作者: RyanBern 时间: 2016-1-20 12:41
本帖最后由 RyanBern 于 2016-1-20 12:43 编辑
wdh88666 发表于 2016-1-20 12:20 
@RyanBern 最后一个问题了!
现在右侧显示图片已经完全调好了!
但如果图片在左侧显示,可能会导致文章显 ...
390行左右,找到这里
else
@max_x = self.width - 32 - @face_indent
end
else
@max_x = self.width - 32 - @face_indent
end
加上一句
else
@face_indent -= 32 if @popchar == -1 && @left_picture != nil # 可以调节32到你想要的数字
@max_x = self.width - 32 - @face_indent
end
else
@face_indent -= 32 if @popchar == -1 && @left_picture != nil # 可以调节32到你想要的数字
@max_x = self.width - 32 - @face_indent
end
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |