|
本帖最后由 Heiko 于 2022-8-9 19:22 编辑
前言
▶不会太多脚本,所以用最简单的方法实现
正题
▶对于这种条件判定用数组最合适了,当然我也不完全会数组的用法,都是临时百度出来了,现搜现用,数组是什么也可以百度百度qwq
▶我有好几个角色,我想让他们能穿什么武器不能穿什么武器→通用触发器,并行自动全勾,条件则是当前操控角色
- var A = [0, 1, 2, 3, 4, 5];
- B =RV.GameData.actor.equips[-1];
- if (!A.includes(B)) {
- RV.GameData.actor.equipUnload(-1);
- RF.ShowTips("非法装备");
- }
复制代码 ▶脚本解析:
▶声明了一个数组A和变量B,A里面存了6个数字,至于这6个数字那肯定是要作为ID使用,哪里的ID,由变量B决定;
▶RV.GameData.actor.equips[-1] 获取的是当前武器ID,所以变量B的一举一动都是跟数据库武器的ID有关;
▶然后就是一个很常见的 if(条件){满足条件执行} 判断。括号内填的是数组的一个判断条件,加了个运算符 !
▶可以这么理解: 如果B的值不等于A数组内的任意一个数,则执行后面的内容,后面的内容是卸下当前武器并弹出提示 非法装备,结合实际的话就是如果我们穿的武器ID不等于A数组内的任意一个数字,则执行后面的内容
▶当然,把运算符 !去掉,就会变成如果B的值等于A数组内的任意一个 数,则执行后面的内容。
▶百度到的这个数组的用法: js中的includes用法 - 前端白雪 - 博客园 (cnblogs.com)
==============================================
▶允许一个角色穿什么装备,那就往A数组里塞吧,没有穿武器的话获取到的武器ID则是0,穿了武器获取到的则是它们的ID
▶如果是在装备界面装备的话,效果是弹出提示但装备并不会卸下来,只有回到地图场景才会卸下来,如果是快捷栏点击装备,则装备不上。
==============================================
▶以上说的是武器,那防具呢?防具也是一样的
这段脚本获取的是武器ID RV.GameData.actor.equips[-1]
那这段脚本获取的是就是头盔ID RV.GameData.actor.equips[0] //不一样的地方就是括号内的数字-1是武器,0是头盔,2是盔甲以此类推,顺序参考设置-角色设置-默认装备的顺序
卸下防具也如此 RV.GameData.actor.equipUnload(-1) //卸武器
RV.GameData.actor.equipUnload(0) //卸头盔 ,以此类推
▶快去试试吧
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|