请移步新版:
https://rpg.blue/thread-492610-1-1.html
=============================================================
虚拟按键QJ-Button.js [V1.7]
=============================================================
我在2022.2.16号那天更新了好多次,现在的版本很稳定了。
但是我甚至都不知道我为什么要更新orz。
=============================================================
一年前我想将我的游戏移植到手机上,但是一直没有找到合适的虚拟按键插件。
要么是无法在手机上将按键显示在屏幕外,要么就是自由度不够。要么缺这种功能,要么缺那种功能。
我有一次找到了一个非常棒的插件但是我找插件原作者(国内)付费请他增加一点功能(我当时还不咋会写插件)结果被他冷冷地劝退了。
之后我在帮我的一个朋友将某个mv游戏移植到手机上时写了这个插件,之后我公开了这个插件(最初的名字是叫Nobi-Button,nobi是一个姓,就是日文“野比”)。
因为用的人好像多了起来所以我加了许多功能。(有些功能甚至是为某个用途单独做的)
=============================================================
本来我做了游戏运行时修改按键大小的功能,想同时加上修改按键位置等的功能,但是好像这个功能没有太大的必要,没有人主动提过,在手机上自适应位置已经够了。
=============================================================
*====================================
*1.支持开关控制和场景显示。
* 显示条件分为三种:a.额外脚本显示设置 b开关显示设置. c.场景显示设置
* 只有这三个都为true时按键才会显示。
*
*2.自适应手机窗口,可使用bw,bh,w,h,sx,sw,sy进行设计。
* 在手机上时w和h读取的是手机《整个屏幕大小》。
* 在电脑上时w和h读取的是游戏窗口大小(package.json中指定)。
* bw和bh读取的是按钮的绝对大小,这个大小会随着按键的缩放率,按键整体的缩放率进行自动调整。
* sw和sh代表游戏画面的宽度和高度。
* sx代表游戏画面的x坐标,等效于(w-sw)/2
*
*3.在游戏菜单的“选项”一栏可以对选项进行调节。
*
*4.方向键中的圆可作为摇杆进行拖动。
* 也可以直接点击方向键进行移动,且可适配八方移动。
*
*5.支持多点触控。
*
*6.需要将按键图片放入img/button下。
*
*7.禁用鼠标/手指点击移动的脚本指令:QJ.B.setMove(false);
* 启用鼠标/手指点击移动的脚本指令:QJ.B.setMove(true);
*
*8.禁用鼠标右键/双指的脚本指令:QJ.B.setTwo(false);
* 启用鼠标右键/双指的脚本指令:QJ.B.setTwo(true);
*
*9.修改按键大小,位置和不透明度可以用指令:
* QJ.B.setButton(id,scale,x,y,opacity);
* 其中:
* id代表在插件参数中指定的按钮名称。
* scale代表大小。
* x和y代表位置,既可以写数字,也可以用bw,w,bh,h等,注意加上半角(英文)引号。
* opacity代表不透明度,范围为0-255。
*
*10.“是否记忆按键设置”:不记忆的话,每次载入存档后,使用QJ.B.setButton修改的指令和玩家在设置中
* 设置的按键大小将进行重置。
*
*11.方向键中有一个值叫直线移动角度,此值只在八方移动中有效。
* 若此值为15,则按键相对中心的角度为-15~15中时只会向上移动而不会向左上或者右上移动。
*
*12.按键选项中的“按钮”的意思是:
* 按下此虚拟按键相当于按下键盘上的某按钮,但是按下键盘上的此按钮不代表着按下此虚拟按键。
*
*13.使用此插件时,若要扩展按键使用,建议使用Q-S.T.写的Add Input.js这个按键扩展插件。
* 可以直接使用D本插件的Demo中附带的那个Add Input.js插件,我修改了此插件的说明,更易理解和使用。
*
*14.有时我们想在现实文本时,暂时自动隐藏按钮,则可以打开“显示文本时隐藏”选项。
* 打开后,在显示文本时,按钮就会自动隐藏。
* 为了避免连续文本显示时按钮的闪现,在由“显示文本”至“不显示文本”这一段期间内,按钮会延迟10帧才出现,此功能不会影响什么,单纯防止了按钮闪现。
*
*15.特殊模式:
* 一般情况下,我们在加密游戏时对按键图片也会加密,使用RMMV原生的读取文件的方式便可正常读取。在不加密时,也可以使用RMMV原生的读取文件的方式
* 来正常读取按键图片。
*
* 但有时我们需要做移植工作,其他图片加密,而按键图片不加密,且可能此工程的加密秘钥我们无法得知,无法以与其他图片同样的秘钥或者加密方式
* 来加密按键图片。此时使用RMMV原生的读取文件的方式时,读取图片就会出错,因为默认情况下还是会按那个秘钥来解析图片。
*
* 此时我们便需要打开这个模式(在右方的插件参数中),来使用浏览器原生的方式来正常读取未加密的图片,而不是使用原生的方式。
*====================================
=============================================================
截图:
=============================================================
下载地址:
链接:
https://pan.baidu.com/s/1WEvVD39LPrXiJeCsPAoDkA
提取码:9999
=============================================================
本帖来自P1论坛作者仇九,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:
https://rpg.blue/forum.php?mod=viewthread&tid=487009 若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。