设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1648|回复: 5
打印 上一主题 下一主题

[有事请教] 求教,有办法装备多个同样的装备类型吗?

[复制链接]

Lv2.观梦者

梦石
0
星屑
664
在线时间
100 小时
注册时间
2022-1-3
帖子
66
跳转到指定楼层
1
发表于 2023-1-15 10:27:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
我设置了一个装备类型【防具】-【戒指】,我想让每个角色能装备2个以上的戒指。但是mz默认同样装备栏只能装备一次,我试着写了两个装备类型【戒指】,但是这样就得分开设置戒指A和戒指B两套装备,不符合我一开始的想法。我记得VAVX之类的老版本里有类似的功能(好像需要修改原脚本,就能扩展装备栏?),求教MZ里应该怎么做呀?谢谢大家了

Lv4.逐梦者

梦石
0
星屑
7289
在线时间
475 小时
注册时间
2021-12-4
帖子
514
2
发表于 2023-1-15 11:01:18 | 只看该作者
Game_Actor.prototype.equipSlots = function() {
    const slots = [];
    for (let i = 1; i < $dataSystem.equipTypes.length; i++) {
        slots.push(i);
    }
    if (slots.length >= 2 && this.isDualWield()) {
        slots[1] = 1;
    }
    return slots;
};

上面的函数在rmmz_objects.js第4222行,slots[0]到slots[n-1]是n个数字,表示每个装备槽的类型(默认1为武器、2为盾牌、3为头部、4为身体、5为饰品),二刀流其实就是slots[0]和slots[1]都是1(两个武器,没有盾牌)。
那么你也可以让slots[4]和slots[5]都是5,就变成两个饰品啦。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
664
在线时间
100 小时
注册时间
2022-1-3
帖子
66
3
 楼主| 发表于 2023-1-15 12:06:41 | 只看该作者
小秋橙 发表于 2023-1-15 11:01
Game_Actor.prototype.equipSlots = function() {
    const slots = [];
    for (let i = 1; i < $dataSy ...

谢谢大佬指点!我已经做出来啦~(虽然没有编程基础,导致我反复试了好几次这个slots[4]=5,slots[5]=5,应该放在什么地方,但是最后结果好就一切都好啦!)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
927
在线时间
134 小时
注册时间
2022-2-14
帖子
80
4
发表于 2024-5-20 18:37:42 | 只看该作者
ex悠米桑 发表于 2023-1-15 12:06
谢谢大佬指点!我已经做出来啦~(虽然没有编程基础,导致我反复试了好几次这个slots[4]=5,slots[5]=5,应 ...

大佬,具体是怎么改的?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7289
在线时间
475 小时
注册时间
2021-12-4
帖子
514
5
发表于 2024-5-21 13:14:24 | 只看该作者
xin6429 发表于 2024-5-20 18:37
大佬,具体是怎么改的?

Game_Actor.prototype.equipSlots = function() {
    const slots = [];
    for (let i = 1; i < $dataSystem.equipTypes.length; i++) {
        slots.push(i);
    }
    if (slots.length >= 2 && this.isDualWield()) {
        slots[1] = 1;
    }
    slots[4] = slots[5] = 5; // 应该就这样加一行就好?我看看你现在本来是哪些类型
    return slots;
};
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
927
在线时间
134 小时
注册时间
2022-2-14
帖子
80
6
发表于 2024-5-21 15:37:27 | 只看该作者
小秋橙 发表于 2024-5-21 13:14
Game_Actor.prototype.equipSlots = function() {
    const slots = [];
    for (let i = 1; i < $data ...

确实是这样,谢谢大佬.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-22 11:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表