各位新年快乐噜~
这次是为了练习处理sprite写的插件,能实现被图块遮挡的角色呈现半透明的效果,帮助玩家确认被遮挡的角色的位置。原理很简单,就是为所有的角色(包括主角,跟随队友,事件,交通工具)在与高层图块相同的层级(z = 4)上建立半透明的sprite。感谢 @汪汪 之前提供的思路。
截图:
食用方法:
1. 安装:直接在插件管理器中启用。
2. 设定参数:
Default Opacity Rate:
图块上半透明角色sprite的不透明度将为Opacity Rate与角色原本的不透明度的乘积。此处设定的是默认的Opacity Rate。
有效参数是[0, 1]之间的小数。
本参数默认值为0.2。
Opacity Percentage Variable ID:
你也可以使用一个游戏内变量来动态地控制高层角色sprite。本参数接收一个游戏内变量的ID,sprite的不透明度将由该变量的值决定。由于RM中内建游戏变量只能是整数,所以变量里的有效值为百分比的整数部分,即在[0, 100]之间的整数。实际Opacity Rate将为该值除以100。
如果你使用变量控制不透明度,那么Default Opacity Rate将被忽略。记得调节相应的变量数值以使高层sprite生效。
该参数设定为0表示不启用这项功能。
本参数默认值为0。
Enable by Default:
设定高层角色sprite是否默认起效。如果设定为false,那么默认不会显示任何高层角色sprite。你需要使用下面的插件指令或事件注释标签来手动开启。
本参数默认值为true。
3. 插件指令:
插件指令可以临时调整某角色上是否显示高层sprite。
代码 - HighLayerCharacterSprite EventID true #开启以EventID为ID的事件的高层角色sprite
复制代码
代码 - HighLayerCharacterSprite EventID false #关闭以EventID为ID的事件的高层角色sprite
复制代码
其中EventID为-1时代表主角和跟随队友,0为当前事件,或者其他具体事件ID。
4. 事件注释标签
通过设置事件注释标签可以修改某事件默认是否显示高层角色sprite。
注意这里的事件注释标签不是事件窗口上方的备注(Note)区,而是事件执行内容内通过流程控制->注释(comment)指令加入的注释内容。使用事件注释而非备注可以允许你为同一个事件的不同页面定义不同的高层角色sprite的可见性。你可以在注释指令里使用如下标签(包括尖括号):
代码
代码
注意事项:
对于事件,插件指令和事件注释标签的效果将持续到地图切换,对于主角和队友效果则切换地图后依然持续。
当某事件的某一页被激活,该页面的事件注释标签就会被执行,假如该页没有定义标签,那么高层角色sprite的可见性维持不变。
副作用:角色重叠的话半透明的sprite也会重叠在一起…这个目前感觉无解,如果有解决思路可以留言,谢~
插件内容:
 Ver 0.10
自吐槽:为毛这么简单一个效果做这么多设定选项,根本不会有人调整这玩意儿。。。都说了是在练习插件的写法啦XD
本帖来自P1论坛作者andrewx,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址: https://rpg.blue/forum.php?mod=viewthread&tid=387974 若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。 |