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

Project1

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

[有事请教] 怎么把游戏状态的一些无用属性删除或不显示

[复制链接]

Lv1.梦旅人

梦石
0
星屑
141
在线时间
20 小时
注册时间
2026-2-4
帖子
1
跳转到指定楼层
1
发表于 2026-5-4 17:27:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
大佬好,如图,我在试着做一款游戏,但是我的游戏并不需要除了生命.防御.敏捷以外的属性,所以我想把剩下这些给删掉或者是隐藏了,有什么办法吗?

QQ20260504-171016.png (47.62 KB, 下载次数: 9)

不需要魔法攻击.防御和幸运

不需要魔法攻击.防御和幸运

Lv2.观梦者

梦石
0
星屑
442
在线时间
958 小时
注册时间
2021-3-24
帖子
621

MZ评测员

2
发表于 2026-5-4 19:01:10 | 只看该作者
  1. /*:
  2. * @target MZ
  3. * @plugindesc [v1.0] 角色属性显示过滤器:在插件设置中勾选需要显示的属性。
  4. * @author Gemini
  5. *
  6. * @param visibleParams
  7. * @text 显示属性设置
  8. * @desc 勾选你希望在菜单和状态栏中显示的属性。
  9. * @type struct<ParamConfig>
  10. * @default {"mhp":"true","mmp":"true","atk":"true","def":"true","mat":"true","mdf":"true","agi":"true","luk":"true"}
  11. *
  12. * @help
  13. * 这是一个轻量级的属性显示控制插件。
  14. *
  15. * 影响范围:
  16. * 1. 状态栏 (Status Window)
  17. * 2. 装备界面属性对比
  18. *
  19. * 原理:通过重写 Window_StatusBase.prototype.drawItemProp 来实现过滤。
  20. */

  21. /*~struct~ParamConfig:
  22. * @param mhp
  23. * @text 最大生命 (MHP)
  24. * @type boolean
  25. * @default true
  26. *
  27. * @param mmp
  28. * @text 最大魔法 (MMP)
  29. * @type boolean
  30. * @default true
  31. *
  32. * @param atk
  33. * @text 攻击力 (ATK)
  34. * @type boolean
  35. * @default true
  36. *
  37. * @param def
  38. * @text 防御力 (DEF)
  39. * @type boolean
  40. * @default true
  41. *
  42. * @param mat
  43. * @text 魔法攻击 (MAT)
  44. * @type boolean
  45. * @default true
  46. *
  47. * @param mdf
  48. * @text 魔法防御 (MDF)
  49. * @type boolean
  50. * @default true
  51. *
  52. * @param agi
  53. * @text 敏捷度 (AGI)
  54. * @type boolean
  55. * @default true
  56. *
  57. * @param luk
  58. * @text 运气 (LUK)
  59. * @type boolean
  60. * @default true
  61. */

  62. (() => {
  63.     const pluginName = "CharacterStatusFilter";
  64.     const parameters = PluginManager.parameters(pluginName);
  65.     const visibleParams = JSON.parse(parameters['visibleParams'] || '{}');

  66.     // 将字符串转为布尔值映射表
  67.     const paramMap = {
  68.         0: visibleParams.mhp === "true",
  69.         1: visibleParams.mmp === "true",
  70.         2: visibleParams.atk === "true",
  71.         3: visibleParams.def === "true",
  72.         4: visibleParams.mat === "true",
  73.         5: visibleParams.mdf === "true",
  74.         6: visibleParams.agi === "true",
  75.         7: visibleParams.luk === "true"
  76.     };

  77.     // 拦截基础状态窗口的属性绘制逻辑
  78.     // RPG Maker MZ 使用 Window_StatusBase 处理这类通用绘制
  79.     const _Window_StatusParams_drawItem = Window_StatusParams.prototype.drawItem;
  80.     Window_StatusParams.prototype.drawItem = function(index) {
  81.         // 获取当前行对应的属性 ID (0-7)
  82.         const paramId = index;
  83.         // 如果插件设置中该 ID 为 false,则跳过绘制
  84.         if (!paramMap[paramId]) {
  85.             return;
  86.         }
  87.         _Window_StatusParams_drawItem.apply(this, arguments);
  88.     };

  89.     // 针对装备窗口的属性对比过滤
  90.     const _Window_EquipStatus_drawItem = Window_EquipStatus.prototype.drawItem;
  91.     Window_EquipStatus.prototype.drawItem = function(x, y, paramId) {
  92.         if (!paramMap[paramId]) {
  93.             return;
  94.         }
  95.         _Window_EquipStatus_drawItem.apply(this, arguments);
  96.     };

  97. })();
复制代码
找AI给你算一卦
全家活光光~
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-6-4 17:09

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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