Project1

标题: 【功能脚本】指定对象说话 + NPC自动说话 <更新:18/4/5> [打印本页]

作者: 芯☆淡茹水    时间: 2018-3-25 19:44
标题: 【功能脚本】指定对象说话 + NPC自动说话 <更新:18/4/5>
本帖最后由 芯☆淡茹水 于 2018-4-7 08:47 编辑

   把以前 XP 的稍微改了下,pia 到VA上来。
   ruby 语言画圆形不太好看,对话框四角看起来有毛刺,先将就着吧。

   做这个功能的初衷,就是让 城镇 看起来更 热闹 一些,以及一些隐晦的提示,线索,秘闻,,,什么的,无意中从 NPC口中 自语出来。

更新记录
-------------------------------------------------------------------------------------------------------------------------------------------------
18/3/26    修了一些细节:1,对话框和角色一个图层,以免遮住显示的图片。
                                         2,自动说话事件在运行时,只停止该事件的自动说话,其他自动说话事件不受影响。
-------------------------------------------------------------------------------------------------------------------------------------------------
18/3/29    更新内容: 1,修改了一些细节。
                                    2,增加脚本指令转换自动说话读取的事件页面。
                                    3,兼容 RMXP 。
-------------------------------------------------------------------------------------------------------------------------------------------------
18/4/5      更新内容: 添加2种自动说话模式:  A 顺序说话不循环。
                                                                        B 顺序说话并循环。
-------------------------------------------------------------------------------------------------------------------------------------------------

功能

1,指定一个对象,在其头顶显示对话框,说一段话。 指定的对象包括 事件和队员 。(详见插件说明)

2,NPC自动随机说话。(具体编辑事项和命令见插件说明)
      编辑好NPC自动随机说话后,NPC会根据编辑的规则,随机编辑的内容说话。
      随机说话的可控,可关闭掉一个正在随机说话的NPC(插件命令/行走图设为空白,,,),并也可以恢复让其继续说话。
      随机说话的编辑,利用 事件 - 注释 选项编辑。事件页任何情况下的转换不受影响,并且不影响该事件的执行。
     ※不在屏幕内的自动说话NPC,自动说话不会刷新※

      图例:
      1,随机自动说话NPC,间隔 300 帧,字体大小为 16,对话框颜色为 3 号颜色,字体颜色随机。
      
         
        

颜色说明

     该脚本使用的颜色为取色图片的颜色,可依照格式自制取色图片。(详见脚本说明)
     使用 VA 时,若不用自制取色图片,脚本取色系统图片  Window 的样本颜色。
     下面的工程内含一张自制的 取色图片,使用时将图片复制到自己的工程相应文件夹里(详见脚本说明)。



效果图片
  


范例工程

NPC自动说话.rar (1.56 MB, 下载次数: 378, 售价: 1 星屑)
作者: 文雅夕露    时间: 2018-3-25 20:03
本帖最后由 文雅夕露 于 2018-3-25 20:25 编辑

感谢芯前辈的辛苦移植。
真心很想要此效果,十分感谢。
嗯...刚刚找了下Xp的。
没有找到Xp的帖子耶,也是芯前辈写的吗?
作者: 2256538860    时间: 2018-3-25 21:25
辛苦了...谢谢您在VA区提供的脚本,能帮上很多人♪(・ω・)ノ
作者: b1db1db1    时间: 2018-3-26 01:43
请问能不能修改图框效果?比如透明度、不遮挡显示图片以及各种修饰之类的?
作者: 骷髅岛遗老    时间: 2018-3-26 01:53
出……出乎意料的有趣啊,感谢大佬
作者: b1db1db1    时间: 2018-3-27 23:33
如果脚本能直接读取相应的图片样式或默认样式就好了,椭圆加周围的黑边及浮雕效果(只有这个有透明效果)最后还有字体...我觉得这脚本还不够灵活,希望楼主能进一步完善脚本
作者: 文雅夕露    时间: 2018-3-29 20:14
使用反馈报告。
嗯...对于我这种比较关注Npc行动的作者...
功能的确有些限制...
无法通过事件页来改变npc自动说话的内容。
也无法使用条件分歧来控制npc自动说话的内容。
毕竟游戏的进程不是一段完成的。剧情进度可以推进npc说话的内容。
但这样的缺陷的确对npc的展现还是缺失了多样性和灵活性。
希望芯前辈可以采用我的意见,将脚本优化一下,谢谢。
作者: 芯☆淡茹水    时间: 2018-3-29 20:43
b1db1db1 发表于 2018-3-27 23:33
如果脚本能直接读取相应的图片样式或默认样式就好了,椭圆加周围的黑边及浮雕效果(只有这个有透明效果)最 ...

使用现成图片不太现实。
这是公开分享,非专门定制,每个人每种情况设置的对话内容不一样,
如果被固定尺寸的图片限制死了,说话内容太多的话,会显示不完全。
作者: b1db1db1    时间: 2018-3-30 22:59
芯☆淡茹水 发表于 2018-3-29 20:43
使用现成图片不太现实。
这是公开分享,非专门定制,每个人每种情况设置的对话内容不一样,
如果被固定尺 ...

原来如此,更新后也美观许多了,辛苦了。
作者: 仲秋启明    时间: 2018-4-4 19:42
建议加一个类似<talkmassage:XXX>这种的对话文字控制符,要不会显示其它使用注释的脚本的注释内容

PS:希望实现一个NPC根据顺序说话的功能,这样就能做NPC之间自动聊天了
作者: andcs041201    时间: 2018-4-13 14:07
有了這個畫面更美觀了,剛好符合我的需求
真是太感謝了
作者: b1db1db1    时间: 2018-5-5 19:49
请问芯大,638行的脚本是什么意思?我测试游戏的时候找不到BUG了。

QQ浏览器截屏未命名.png (16.41 KB, 下载次数: 22)

QQ浏览器截屏未命名.png

作者: b1db1db1    时间: 2018-5-6 09:41
b1db1db1 发表于 2018-5-5 19:49
请问芯大,638行的脚本是什么意思?我测试游戏的时候找不到BUG了。

返回自身X坐标?听不懂...

QQ浏览器截屏未命名.png (14.21 KB, 下载次数: 17)

QQ浏览器截屏未命名.png

作者: 芯☆淡茹水    时间: 2018-5-7 09:02
本帖最后由 芯☆淡茹水 于 2018-5-8 07:01 编辑
b1db1db1 发表于 2018-5-6 09:41
返回自身X坐标?听不懂...


用了一些其它的什么脚本,把地图上的角色行走图给释放了。
或者,这个脚本未放在最后,导致一些相同的角色行走精灵类相关脚本,先释放了角色图片造成报错。
可以把 600 行左右的那两个函数改成下面的试试:


  1.   #--------------------------------------------------------------------------
  2.   def update_count
  3.     @count -= @obj.is_interrupt_talk? ? @count : 1
  4.     (@count == 0 || @obj.disposed?) && dispose
  5.   end
  6.   #--------------------------------------------------------------------------
  7.   def update_place
  8.     return if @obj.disposed?
  9.     @shadow.x = self.x = @obj.talk_x
  10.     @shadow.y = self.y = @obj.talk_y
  11.     @shadow.z = self.z = @obj.z + 100
  12.   end
复制代码

作者: b1db1db1    时间: 2018-5-7 21:35
芯☆淡茹水 发表于 2018-5-7 09:02
用了一些其它的什么脚本,把地图上的角色行走图给释放了。
或者,这个脚本未放在最后,导致一些相同的角 ...

我测试了下。
第一步我是直接覆盖脚本:


但问题还是如下图所示:

当NPC说话时我切换了场景的话依旧弹出错误。
然后我更换了脚本排序,之后继续切换场景:

不过在NPC未说话时(面向主角):

场景却切换自如。
以上是我测试后发现的问题。

(我再试试是否是其他脚本或字符的问题
作者: b1db1db1    时间: 2018-5-8 22:29
额...这下连游戏都开不了了(难道是我脚本冲突?

1.png (22.01 KB, 下载次数: 18)

1.png

2.png (72.08 KB, 下载次数: 19)

2.png

3.png (83.93 KB, 下载次数: 24)

3.png

作者: b1db1db1    时间: 2018-5-11 19:54
问题解决了!多谢芯大的耐心指导
作者: MCCF    时间: 2018-5-12 15:32
反馈一个Bug
我设置一个角色会按顺序自言自语且不循环,然后玩家触碰时会额外说一句话。
但是发现在他自言自语完之后玩家触碰他他只是转头看着玩家,不说话了
事件:
C:\Users\Administrator\Desktop\u=52443352,4114210332&fm=200&gp=0.jpg
作者: MCCF    时间: 2018-5-12 15:33
MCCF 发表于 2018-5-12 15:32
反馈一个Bug
我设置一个角色会按顺序自言自语且不循环,然后玩家触碰时会额外说一句话。
但是发现在他自言 ...

是这样的

u=52443352,4114210332&amp;fm=200&amp;gp=0.jpg (72.64 KB, 下载次数: 28)

u=52443352,4114210332&amp;fm=200&amp;gp=0.jpg

作者: 芯☆淡茹水    时间: 2018-5-12 18:24
MCCF 发表于 2018-5-12 15:33
是这样的

自定义说话和随机说话不能同时用
作者: MCCF    时间: 2018-5-12 20:51
芯☆淡茹水 发表于 2018-5-12 18:24
自定义说话和随机说话不能同时用

哦,那希望能做出能同时用的效果来,这样能让角色变得更生动些
作者: MCCF    时间: 2018-5-13 15:17
b1db1db1 发表于 2018-5-11 19:54
问题解决了!多谢芯大的耐心指导

怎么解决的啊?我只是估计是场所移动的时候X坐标读取出了问题,但不知道怎么解决
作者: 腹黑康娜    时间: 2018-5-29 19:58
学习学习
作者: daweizhangbusi    时间: 2018-7-17 11:08
亲 可以加好友合作吗 有个亲制作的插件想请亲帮忙修改下 有偿
q:3174734722
作者: a826472493    时间: 2018-8-2 12:28
这么久的帖子。。。
作者: 骷髅岛遗老    时间: 2018-9-24 21:10
为……为什么打不开
作者: hanakisou    时间: 2018-10-10 06:21
请问可以将您的这个脚本用于收费游戏中吗?_(:з」∠)_我想等游戏做完传STEAM来着
作者: gkhj    时间: 2023-5-22 08:17
大佬——我也遇到那个切地图报错的问题,但是我不懂脚本,改了几遍也没改对,能不能帮我看一下我错在哪了?[attach]398630[/attach][attach]398629[/attach]

mmexport1684713864762.png (58.18 KB, 下载次数: 27)

mmexport1684713864762.png

mmexport1684713866323.png (37.36 KB, 下载次数: 25)

mmexport1684713866323.png

作者: 企鹅大虾    时间: 2023-8-3 07:28
desktop与talkmassage,等于哦比较




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1