查看: 2209|回复: 4

[有事请教] 请问如何在菜单界面添加一个“抽卡”按钮呢?

[复制链接]
梦石
0
星屑
143
在线时间
23 小时
注册时间
2022-11-8
回帖
8
发表于 2022-11-28 08:34:32 | 显示全部楼层 |阅读模式

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

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

×
如题,这里已经有抽卡的事件了,其实只需要将抽卡的按钮和事件关联起来即可。
不幸的是,我对JS一窍不通,于是来请教一下大佬们,谢谢解答!
另:如果有大佬愿意分享抽卡的插件,自然是万分感谢的!
Ether弧人
ENTP 8w7
为了热度而画画
退役OIer,JS一窍不通
RM小白一只
无情的%%%机器
交个朋友吧!
我使用所有代词,但偏好于“He/Him”
梦石
0
星屑
3230
在线时间
445 小时
注册时间
2022-1-21
回帖
197
发表于 2022-11-28 10:22:25 | 显示全部楼层
不会脚本就用事件
回复 1 0

使用道具 举报

梦石
0
星屑
5891
在线时间
1106 小时
注册时间
2021-3-14
回帖
414
发表于 2022-11-28 10:40:57 | 显示全部楼层
随缘翻译。
回复

使用道具 举报

梦石
8
星屑
4153
在线时间
656 小时
注册时间
2021-8-13
回帖
629

极短26参与极短25获奖

发表于 2022-11-28 10:53:34 | 显示全部楼层
本帖最后由 asukalin 于 2022-11-28 11:00 编辑

我最近在学写插件,于是写了一个,就当是练习了吧……

新建一个js文件,命名 ASKL_OriginalCommands.js
把下面的代码贴进去,导入插件,应该可以用
俺寻思能行
  1. /*:
  2. * @plugindesc 在主菜单添加选项
  3. * @author Asukalin
  4. *
  5. * @param New Enable
  6. * @desc 是否显示新选项
  7. * @default true
  8. *
  9. * @param New Text
  10. * @desc 新增选项的显示名
  11. * @default 新选项
  12. *
  13. * @param New Event ID
  14. * @desc 点击选项后运行的公共事件的ID
  15. * @default 1
  16. *
  17. * @help
  18. *
  19. * 在主菜单添加一个选项
  20. * 点击后运行指定公共事件
  21. * Version 0.1.0
  22. * Asukalin
  23. *
  24. *
  25. */

  26. var newText = String(PluginManager.parameters('ASKL_OriginalCommands')['New Text']);
  27. var isNewEnabled = String(PluginManager.parameters('ASKL_OriginalCommands')['New Enable']);
  28. isNewEnabled = eval(isNewEnabled);
  29. var newEventId = Number(PluginManager.parameters('ASKL_OriginalCommands')['New Event ID']);

  30. Window_MenuCommand.prototype.addOriginalCommands = function() {
  31.     if (this.needsCommand('newCommand')) {
  32.         this.addCommand(newText, 'newCommand', isNewEnabled);
  33.     }
  34. };

  35. var _Scene_Menu_prototype_createCommandWindow = Scene_Menu.prototype.createCommandWindow;
  36. Scene_Menu.prototype.createCommandWindow = function() {
  37.     _Scene_Menu_prototype_createCommandWindow.call(this);
  38.     this._commandWindow.setHandler('newCommand', this.commandNew.bind(this));
  39. };

  40. Scene_Menu.prototype.commandNew = function() {
  41.     this.popScene();
  42.     $gameTemp.reserveCommonEvent(newEventId);
  43. };
复制代码

评分

参与人数 1赞 +1 收起 理由
xin6429 + 1 塞糖

查看全部评分

回复 1 0

使用道具 举报

梦石
0
星屑
143
在线时间
23 小时
注册时间
2022-11-8
回帖
8
 楼主| 发表于 2022-11-28 16:07:07 | 显示全部楼层
asukalin 发表于 2022-11-28 10:53
我最近在学写插件,于是写了一个,就当是练习了吧……

新建一个js文件,命名 ASKL_OriginalCommands.js

哇哇哇大佬好强……%%%,谢谢你!!!
Ether弧人
ENTP 8w7
为了热度而画画
退役OIer,JS一窍不通
RM小白一只
无情的%%%机器
交个朋友吧!
我使用所有代词,但偏好于“He/Him”
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部