Project1

标题: 帮助文档 【坐等汉化】 [打印本页]

作者: j296196585    时间: 2020-11-15 00:22
标题: 帮助文档 【坐等汉化】
本帖最后由 j296196585 于 2020-11-15 00:31 编辑

服务条款
MIT许可证。
无需信用标记
可用于商业目的
可以修改
也可以仅重新分配材料
可用于成人游戏和残酷游戏


■创建帮助
1. 1。准备帮助图像。存储在img /图片文件夹中。
(宽640像素*高360像素)

对于每个帮助, 可以设置(
1)帮助名称(2)
一个或多个图像。
■插件命令
AB_Help打开
打开帮助场景。
AB_Help显示1
显示ID号为1的帮助。
*此后,它会未经允许被添加到帮助列表中,并被标记为已读。
AB_Help加1
将ID为1的帮助添加到帮助场景列表中。
AB_Help删除1
从帮助场景列表中删除ID为1的帮助。
AB_帮助完成
将所有帮助添加到帮助场景列表。
AB_Help清除
从帮助场景列表中删除所有帮助。





RUBY 代码复制
  1. // =============================================================================
  2. // AB_HelpScene.js
  3. // Version: 1.01
  4. // -----------------------------------------------------------------------------
  5. // Copyright (c) 2020 ヱビ
  6. // Released under the MIT license
  7. // [url]http://opensource.org/licenses/mit-license.php[/url]
  8. // -----------------------------------------------------------------------------
  9. // [Homepage]: ヱビのノート
  10. //             [url]http://www.zf.em-net.ne.jp/~ebi-games/[/url]
  11. // =============================================================================
  12.  
  13.  
  14. /*:
  15. * @plugindesc v1.01 画像でヘルプを表示する機能を追加します。
  16. * @author ヱビ
  17. *
  18. *
  19. * @param ヘルプタイトル
  20. * @type string
  21. * @desc ヘルプタイトルの名前です。
  22. * @default ヘルプ
  23. *
  24. * @param メニュー表示スイッチ
  25. * @type switch
  26. * @desc ここで設定したスイッチがONの時、メニューで表示します。
  27. * 0を指定すると常に表示します。
  28. * @default 0
  29. *
  30. * @param メニュー有効化スイッチ
  31. * @type switch
  32. * @desc ここで設定したスイッチがONの時、メニューで有効化します。
  33. * 0を指定すると常に有効です。無効のときは灰色になります。
  34. * @default 0
  35. *
  36. * @param ヘルプリスト
  37. * @type struct<HelpList>[]
  38. * @desc ヘルプリストです。
  39. * @default []
  40. *
  41. * @param 未閲覧ヘルプアイコン
  42. * @type number
  43. * @desc 見ていないヘルプにつくアイコンです。
  44. * @default 4
  45. *
  46. * @param 未開放ヘルプ名前
  47. * @type string
  48. * @desc 追加されていないヘルプの名前です。
  49. * @default ???
  50. *
  51. * @param 次へ名前
  52. * @type string
  53. * @desc ヘルプ画面で次の画像に移るコマンドの名前です。
  54. * @default
  55. *
  56. * @param 閉じる名前
  57. * @type string
  58. * @desc ヘルプ画面で最後の画像になり、閉じるためのコマンドの名前です。
  59. * @default OK
  60. *
  61. * @help
  62. * ============================================================================
  63. * 概要
  64. * ============================================================================
  65. *
  66. * チュートリアルで出てくるような、数枚の画像のヘルプを、
  67. * ①イベントで表示できるようにし、
  68. * ②メニューやイベントで、後で見返せるようにする
  69. * プラグインです。
  70. *
  71. * ■ヘルプ画像
  72. * ヘルプ画像(幅640px*高さ360px)。
  73. * 一つのヘルプに1~4枚程度表示することを想定しています。
  74. *
  75. *
  76. * ============================================================================
  77. * 作り方
  78. * ============================================================================
  79. *
  80. * ■ヘルプの作成
  81. *
  82. * 1.ヘルプ画像を用意。img/picturesフォルダに格納します。
  83. *
  84. * (幅640px*高さ360px)
  85. *
  86. * 2.プラグインパラメータでヘルプを設定。
  87. *
  88. * 1つのヘルプにつき、
  89. * ①ヘルプ名
  90. * ②1枚以上の画像を設定できます。
  91. *
  92. * ■プラグインコマンド
  93. *
  94. * AB_Help Open
  95. * ヘルプシーンを開きます。
  96. *
  97. * AB_Help Show 1
  98. * ID1番のヘルプを表示します。
  99. * ※この後、勝手にヘルプリストに追加され、既読になります。
  100. *
  101. * AB_Help Add 1
  102. * ID1番のヘルプをヘルプシーンのリストに追加します。
  103. *
  104. * AB_Help Remove 1
  105. * ID1番のヘルプをヘルプシーンのリストから削除します。
  106. *
  107. * AB_Help Complete
  108. * すべてのヘルプをヘルプシーンのリストに加えます。
  109. *
  110. * AB_Help Clear
  111. * すべてのヘルプをヘルプシーンのリストから削除します。
  112. *
  113. * ============================================================================
  114. * 更新履歴
  115. * ============================================================================
  116. *
  117. * Version 1.01
  118. *   メニューの表示スイッチとメニュー有効化スイッチが変数を参照していたため、
  119. *   スイッチに修正しました。
  120. *
  121. * Version 1.00 公開
  122. *   
  123. *
  124. * ============================================================================
  125. * 利用規約
  126. * ============================================================================
  127. *
  128. * MITライセンスです。
  129. * ・クレジット表記は不要
  130. * ・営利目的で使用可
  131. * ・改変可
  132. *     ただし、ソースコードのヘッダのライセンス表示は残してください。
  133. * ・素材だけの再配布も可
  134. * ・アダルトゲーム、残酷なゲームでの使用も可
  135. *
  136. *
  137. *
  138. */
  139.  
  140. /*~struct~HelpList:
  141. *
  142. * @param name
  143. * @type string
  144. * @desc ヘルプの名前です。
  145. * @default ヘルプ
  146. *
  147. * @param ImageList
  148. * @type file[]
  149. * @dir img/pictures
  150. * @desc ヘルプの画像ファイルです。
  151. * @default []
  152. *
  153. */
  154.  
  155.  
  156. (function() {
  157.  
  158.         var parameters = PluginManager.parameters('AB_HelpScene');
  159.         var AB_Helptitle = String(parameters['ヘルプタイトル']);
  160.         var ABHelp_ShowSwitchID = Number(parameters['メニュー表示スイッチ']);
  161.         var ABHelp_EnableSwitchID = Number(parameters['メニュー有効化スイッチ']);
  162.         var AB_HelpList = JSON.parse(parameters['ヘルプリスト']);
  163.         for (var i=0,l=AB_HelpList.length; i<l; i++) {
  164.                 AB_HelpList[i] = JSON.parse(AB_HelpList[i]);
  165.                 AB_HelpList[i].ImageList = JSON.parse(AB_HelpList[i].ImageList);/*
  166.                 for (var j=0,jl = AB_HelpList[i].ImageList.length; j<jl; j++) {
  167.                         AB_HelpList[i].ImageList[j] = String(AB_HelpList[i].ImageList[j]);
  168.                 }*/
  169.         }
  170.         var AB_HelpNotRead = Number(parameters['未閲覧ヘルプアイコン']);
  171.         var AB_HelpUnOpenName = String(parameters['未開放ヘルプ名前']);
  172.         var AB_HelpNextName = String(parameters['次へ名前']);
  173.         var AB_HelpCloseName = String(parameters['閉じる名前']);
  174.  
  175.  
  176.  
  177. //=============================================================================
  178. // Game_System
  179. //=============================================================================
  180.  
  181.  
  182.  
  183.         Game_System.prototype.initABHelp = function() {
  184.                 this._ABHelpList = [];
  185.                 this._ABHelpSceneIndex = -1;
  186.         };
  187.  
  188.         Game_System.prototype.isABHelpOpenWithIndex = function() {
  189.                 if (this._ABHelpSceneIndex !=null) {
  190.                         if (this._ABHelpSceneIndex >= 0) {
  191.                                 return true;
  192.                         }
  193.                 }
  194.                 if (this._ABHelpSceneIndex === 0) {
  195.                         return true;
  196.                 }
  197.                 return false;
  198.         };
  199.         Game_System.prototype.getABHelpOpenWithIndex = function() {
  200.                 return this._ABHelpSceneIndex;
  201.         };
  202.         Game_System.prototype.setABHelpOpenWithIndex = function(id) {
  203.                 if (!this._ABHelpList) this.initABHelp();
  204.                 this._ABHelpSceneIndex = id;
  205.         };
  206.  
  207.         Game_System.prototype.addABHelp = function(id) {
  208.                 if (!this._ABHelpList) this.initABHelp();
  209.                 if (this._ABHelpList[id]) return;
  210.                 this._ABHelpList[id] = 1;
  211.         };
  212.  
  213.         Game_System.prototype.removeABHelp = function(id) {
  214.                 if (!this._ABHelpList) this.initABHelp();
  215.                 //if (this._ABHelpList[id]) return;
  216.                 this._ABHelpList[id] = 0;
  217.         };
  218.  
  219.         Game_System.prototype.setABHelpRead = function(id) {
  220.                 if (!this._ABHelpList) this.initABHelp();
  221.                 this._ABHelpList[id] = 2;
  222.         };
  223.         Game_System.prototype.getABHelpRead = function(id) {
  224.                 if (!this._ABHelpList) this.initABHelp();
  225.                 return this._ABHelpList[id] == 2;
  226.         };
  227.  
  228.  
  229.         Game_System.prototype.completeABHelp = function() {
  230.                 if (!this._ABHelpList) this.initABHelp();
  231.                 for (var i = 0; i < AB_HelpList.length; i++) {
  232.                         if (this._ABHelpList[i]) continue;
  233.                         this._ABHelpList[i] = 1;
  234.                 }
  235.         };
  236.  
  237.         Game_System.prototype.canRead = function(index) {
  238.                 if (!this._ABHelpList) return false;
  239.                 return this._ABHelpList[index];
  240.         };
  241.  
  242.  
  243. //=============================================================================
  244. // Game_System
  245. //=============================================================================
  246.  
  247.  
  248.  
  249.  
  250.  
  251.         var Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand;
  252.         Game_Interpreter.prototype.pluginCommand = function(command, args) {
  253.                 Game_Interpreter_pluginCommand.call(this, command, args);
  254.                 if (command === 'AB_Help') {
  255.                         var command2 = args[0].toLowerCase();
  256.                         switch(command2) {
  257.                         case "open":
  258.                                 SceneManager.push(Scene_ABHelp);
  259.                                 break;
  260.                         case "add":
  261.                                 var id = Number(args[1] -1);
  262.                                 $gameSystem.addABHelp(id);
  263.                                 break;
  264.                         case "remove":
  265.                                 var id = Number(args[1] -1);
  266.                                 $gameSystem.removeABHelp(id);
  267.                                 break;
  268.                         case "complete":
  269.                                 $gameSystem.completeABHelp();
  270.                                 break;
  271.                         case "clear":
  272.                                 $gameSystem.initABHelp();
  273.                                 break;
  274.                         case "show":
  275.                                 var id = Number(args[1] - 1);
  276.                                 $gameSystem.setABHelpOpenWithIndex(id);
  277.                                 SceneManager.push(Scene_ABHelp);
  278.  
  279.                                 break;
  280.                         }
  281.                 }
  282.         };
  283.  
  284.  
  285.  
  286. //=============================================================================
  287. // Window_ABHelpName
  288. //=============================================================================
  289.  
  290.  
  291.         function Window_ABHelpName() {
  292.             this.initialize.apply(this, arguments);
  293.         }
  294.  
  295.         Window_ABHelpName.prototype = Object.create(Window_Base.prototype);
  296.         Window_ABHelpName.prototype.constructor = Window_ABHelpName;
  297.  
  298.         Window_ABHelpName.prototype.initialize = function() {
  299.                         var x = 0;
  300.                         var y = 0;
  301.                         var width = Graphics.boxWidth;
  302.                         var height = Window_Base.prototype.fittingHeight(1);
  303.             Window_Base.prototype.initialize.call(this, x, y, width, height);
  304.                         this.refresh();
  305.         };
  306.  
  307.  
  308.  
  309.         Window_ABHelpName.prototype.refresh = function() {
  310.             this.contents.clear();
  311.                         this.drawText(AB_Helptitle, 0, 0, this.contents.width, "center");
  312.         };
  313.  
  314.  
  315. //=============================================================================
  316. // Window_ABHelpTitle
  317. //=============================================================================
  318.  
  319.  
  320.         function Window_ABHelpTitle() {
  321.             this.initialize.apply(this, arguments);
  322.         }
  323.  
  324.         Window_ABHelpTitle.prototype = Object.create(Window_Base.prototype);
  325.         Window_ABHelpTitle.prototype.constructor = Window_ABHelpTitle;
  326.  
  327.         Window_ABHelpTitle.prototype.initialize = function() {
  328.                         var x = (Graphics.boxWidth - 676) / 2;
  329.                         var y = Window_Base.prototype.fittingHeight(1);
  330.                         var width = 676;//
  331.                         var height = Window_Base.prototype.fittingHeight(1);
  332.             Window_Base.prototype.initialize.call(this, x, y, width, height);
  333.                         this._item = null;
  334.         };
  335.  
  336.         Window_ABHelpTitle.prototype.setItem = function(item) {
  337.                 if (this._item != item) {
  338.                         this._item = item;
  339.                         this.refresh();
  340.                 }
  341.         }
  342.  
  343.         Window_ABHelpTitle.prototype.refresh = function() {
  344.             this.contents.clear();
  345.  
  346.                         var name = this._item.name;//
  347.                         //var iw = Window_Base._iconWidth;
  348.                         /*if () {
  349.  
  350.                         }
  351.                         this.drawIcon();*/
  352.                         this.drawText(name, 0, 0, this.contents.width, "center");
  353.         };
  354.  
  355.  
  356. //=============================================================================
  357. // Window_ABHelpNumber
  358. //=============================================================================
  359.  
  360.  
  361.         function Window_ABHelpNumber() {
  362.             this.initialize.apply(this, arguments);
  363.         }
  364.  
  365.         Window_ABHelpNumber.prototype = Object.create(Window_Base.prototype);
  366.         Window_ABHelpNumber.prototype.constructor = Window_ABHelpNumber;
  367.  
  368.         Window_ABHelpNumber.prototype.initialize = function() {
  369.                         var x = (Graphics.boxWidth - 676) / 2;
  370.                         var y = Window_Base.prototype.fittingHeight(1)*2 + 396;
  371.                         var width = 478;//
  372.                         var height = Window_Base.prototype.fittingHeight(1);
  373.             Window_Base.prototype.initialize.call(this, x, y, width, height);
  374.                         this._item = null;
  375.                         this._index = null;
  376.         };
  377.  
  378.         Window_ABHelpNumber.prototype.setItem = function(item) {
  379.                 if (this._item != item) {
  380.                         this._item = item;
  381.                         this._helpIndex = 0;
  382.                         this._imageIndex = 0;
  383.                         this.refresh();
  384.                 }
  385.         };
  386.  
  387. /*
  388.         Window_ABHelpNumber.prototype.setHelpIndex = function(index) {
  389.                 if (this._helpIndex != index) {
  390.                         this._helpIndex = index;
  391.                         refresh();
  392.                 }
  393.         };*/
  394.         Window_ABHelpNumber.prototype.setImageIndex = function(index) {
  395.                 if (this._imageIndex != index) {
  396.                         this._imageIndex = index;
  397.                         this.refresh();
  398.                 }
  399.         };
  400.  
  401.         Window_ABHelpNumber.prototype.refresh = function() {
  402.             this.contents.clear();
  403.  
  404.                         var max = this._item.ImageList.length;//
  405.                         //var iw = Window_Base._iconWidth;
  406.                         /*if () {
  407.  
  408.                         }
  409.                         this.drawIcon();*/
  410.                         var text = "";
  411.                         for (var i=0; i<max; i++) {
  412.                                 if (this._imageIndex == i) {
  413.                                         text += "● ";
  414.                                 } else {
  415.                                         text += "〇 ";
  416.                                 }
  417.                         }
  418.                         var text2 = (this._imageIndex+1)+" / "+ max;
  419.                         this.drawText(text, 0,0,this.contents.width - 18 - this.textWidth(text2), "center");
  420.                         this.drawText(text2, 0, 0, this.contents.width-18, 'right');
  421.         };
  422. //=============================================================================
  423. // Window_ABHelpImage
  424. //=============================================================================
  425.  
  426.  
  427.         function Window_ABHelpImage() {
  428.             this.initialize.apply(this, arguments);
  429.         }
  430.  
  431.         Window_ABHelpImage.prototype = Object.create(Window_Base.prototype);
  432.         Window_ABHelpImage.prototype.constructor = Window_ABHelpImage;
  433.  
  434.         Window_ABHelpImage.prototype.initialize = function() {
  435.                 var x = (Graphics.boxWidth - 676) / 2;
  436.                 var y = Window_Base.prototype.fittingHeight(1)*2;
  437.                 var width = 676;//
  438.                 var height = 396;
  439.     Window_Base.prototype.initialize.call(this, x, y, width, height);
  440.                 this._item = null;
  441.                 this._imageIndex = 0;
  442.                 this._sprite = new Sprite();
  443.                 this._sprite.x=18;
  444.                 this._sprite.y=18;
  445.                 this.addChildToBack(this._sprite);
  446.         };
  447.         Window_ABHelpImage.prototype.setItem = function(item) {
  448.             if (this._item !== item) {
  449.                 this._item = item;
  450.                                         this._imageIndex = 0;
  451.                 this.refresh();
  452.             }
  453.         };
  454.         Window_ABHelpImage.prototype.setImageIndex = function(index) {
  455.                 if (this._imageIndex != index) {
  456.                         this._imageIndex = index;
  457.                         this.refresh();
  458.                 }
  459.         };
  460.         /*
  461.         Window_ABHelpImage.prototype.nextImage = function() {
  462.                 var lastIndex = this._index;
  463.                 this._index++;
  464.                 if (this._index >=this._item.ImageList.length) {
  465.                         this._index = this._item.ImageList.length-1;
  466.                 }
  467.                 if (lastIndex == this._index) return;
  468.                 this.refresh();
  469.         };
  470.  
  471.         Window_ABHelpImage.prototype.prevImage = function() {
  472.                 var lastIndex = this._index;
  473.                 this._index--;
  474.                 if (this._index < 0) {
  475.                         this._index = 0;
  476.                 }
  477.                 if (lastIndex == this._index) return;
  478.                 this.refresh();
  479.         };
  480.         */
  481.         Window_ABHelpImage.prototype.refresh = function() {
  482.                 this.contents.clear();
  483.                 if (this._item) {
  484.                         this._sprite.bitmap = ImageManager.loadPicture(this._item.ImageList[this._imageIndex]);
  485.                 }
  486.         };
  487.  
  488.  
  489.  
  490. //=============================================================================
  491. // Window_ABHelpList
  492. //=============================================================================
  493.  
  494.         function Window_ABHelpList() {
  495.                 this.initialize.apply(this, arguments);
  496.         }
  497.  
  498.         Window_ABHelpList.prototype = Object.create(Window_Selectable.prototype);
  499.         Window_ABHelpList.prototype.constructor = Window_ABHelpList;
  500.  
  501.         Window_ABHelpList.prototype.initialize = function() {
  502.                         var x = (Graphics.boxWidth-676) / 2;
  503.                         //var y = Window_Base.prototype.fittingHeight(2) + 396;
  504.                         var y = Window_Base.prototype.fittingHeight(1)*2;
  505.                         var h = Graphics.boxHeight - Window_Base.prototype.fittingHeight(1)*2;
  506.                         var w = 676;
  507.             Window_Selectable.prototype.initialize.call(this, x, y, w, h);
  508.                         this._data = [];
  509.         };
  510. /*
  511.         Window_ABHelpList.prototype.setTitleWindow = function(w) {
  512.             this._ABHelpTitleWindow = w;
  513.         };
  514.         Window_ABHelpList.prototype.setImageWindow = function(w) {
  515.             this._ABHelpImageWindow = w;
  516.         };
  517.         Window_ABHelpList.prototype.setNumberWindow = function(w) {
  518.             this._ABHelpNumberWindow = w;
  519.         };
  520.         Window_ABHelpList.prototype.setNextWindow = function(w) {
  521.             this._ABHelpNextWindow = w;
  522.         };
  523. */
  524.  
  525.         Window_ABHelpList.prototype.isCurrentItemEnabled = function() {
  526.             return this.isEnabled(this.index());
  527.         };
  528.         Window_ABHelpList.prototype.maxCols = function() {
  529.             return 1;
  530.         };
  531.         Window_ABHelpList.prototype.maxItems = function() {
  532.             return this._data ? this._data.length : 1;
  533.         };
  534.         Window_ABHelpList.prototype.item = function() {
  535.             var index = this.index();
  536.             return this._data && index >= 0 ? this._data[index] : null;
  537.         };
  538.  
  539.         Window_ABHelpList.prototype.isEnabled = function(index) {
  540.             return $gameSystem.canRead(index);
  541.         };
  542.  
  543.         Window_ABHelpList.prototype.selectLast = function() {
  544.             var index = this._data.length-1;
  545.             this.select(index >= 0 ? index : 0);
  546.         };
  547.  
  548.         Window_ABHelpList.prototype.drawItem = function(index) {
  549.             var item = this._data[index];
  550.             if (item) {
  551.                 var rect = this.itemRect(index);
  552.                 rect.width -= this.textPadding();
  553.                                         var iw = Window_Base._iconWidth;
  554.                 this.changePaintOpacity(this.isEnabled(index));
  555.                 if (this.isEnabled(index)) {
  556.                                                 if (!$gameSystem.getABHelpRead(index)) {
  557.                                                         this.drawIcon(AB_HelpNotRead, rect.x,rect.y + 0);
  558.                                                 }
  559.                                                 this.drawText(item.name, rect.x + iw, rect.y, rect.width-iw);
  560.  
  561.                                         } else {
  562.                                                 this.drawText(AB_HelpUnOpenName, rect.x + iw, rect.y, rect.width-iw, 'left'); //
  563.                                         }
  564.                 this.changePaintOpacity(1);
  565.             }
  566.         };
  567.  
  568.         Window_ABHelpList.prototype.makeItemList = function() {
  569.             this._data = AB_HelpList;
  570.         };
  571.         Window_ABHelpList.prototype.refresh = function() {
  572.             this.makeItemList();
  573.             this.createContents();
  574.             this.drawAllItems();
  575.         };
  576. /*
  577.  
  578.         Window_ABHelpList.prototype.select = function(index) {
  579.                         Window_Selectable.prototype.select.call(this, index);
  580.                         if (this.isEnabled(index))
  581.             this._ABHelpTitleWindow.setItem(this._date[index]);
  582.         };*/
  583.  
  584. //=============================================================================
  585. // Window_ABHelpNext
  586. //=============================================================================
  587.  
  588.         function Window_ABHelpNext() {
  589.                 this.initialize.apply(this, arguments);
  590.         }
  591.         Window_ABHelpNext.prototype = Object.create(Window_HorzCommand.prototype);
  592.         Window_ABHelpNext.prototype.constructor = Window_ABHelpNext;
  593.  
  594.         Window_ABHelpNext.prototype.initialize = function() {
  595.                         var x = Graphics.boxWidth / 2 + 140/*149*/;
  596.                         var y = Window_Base.prototype.fittingHeight(1)*2 + 396;
  597.                         var w = 196;
  598.             Window_HorzCommand.prototype.initialize.call(this, x, y, w);
  599.                         this._windowWidth = w;
  600.                         this._haveNext = false;
  601.                         this._havePrev = false;
  602.         };
  603. /*
  604.         Window_ABHelpNext.prototype.setImageWindow = function(actor) {
  605.                 if (this._actor != actor) {
  606.                         this._actor = actor;
  607.                         this._systemId = 0;
  608.                         this._nextSkillId = 0;
  609.                         this.refresh();
  610.                 }
  611.         };
  612.         */
  613.  
  614.         Window_ABHelpNext.prototype.windowWidth = function() {
  615.     return 196;
  616.         };
  617.  
  618.         Window_ABHelpNext.prototype.makeCommandList = function() {
  619.                 if (this._haveNext) {
  620.             this.addCommand(AB_HelpNextName, 'next', true);
  621.                 } else {
  622.                         this.addCommand(AB_HelpCloseName, 'end', true);
  623.                 }
  624.         };
  625.         Window_ABHelpNext.prototype.cursorRight = function() {
  626.                         if (this.active) {
  627.                                 if (this._haveNext) {
  628.                                         SoundManager.playCursor();
  629.                                         this.callHandler('next');
  630.                                 } else {/*
  631.                                         this.callHandler('end');*/
  632.                                 }
  633.                         }
  634.         };
  635.         Window_ABHelpNext.prototype.cursorLeft = function() {
  636.                         if (this.active) {
  637.                                 if (this._havePrev) {
  638.                                         SoundManager.playCursor();
  639.                                         this.callHandler('cancel');
  640.                                 }
  641.                         }
  642.         };
  643.  
  644.         Window_ABHelpNext.prototype.setHaveNext = function(next) {
  645.                 this._haveNext = next;
  646.                 this.refresh();
  647.         };
  648.  
  649.         Window_ABHelpNext.prototype.setHavePrev = function(prev) {
  650.                 this._havePrev = prev;
  651.         };
  652.  
  653.         Window_ABHelpNext.prototype.maxCols = function() {
  654.             return 1;
  655.         };
  656.         Window_ABHelpNext.prototype.numVisibleRows = function() {
  657.             return 1;
  658.         };
  659.  
  660. /*
  661.         Window_ABHelpNext.prototype.refresh = function() {
  662.                 this.contents.clear();
  663.                 this.makeCommandList();
  664.         };
  665. */
  666.  
  667. //=============================================================================
  668. // Scene_ABHelp
  669. //=============================================================================
  670.  
  671.         function Scene_ABHelp() {
  672.             this.initialize.apply(this, arguments);
  673.         }
  674.  
  675.         Scene_ABHelp.prototype = Object.create(Scene_MenuBase.prototype);
  676.         Scene_ABHelp.prototype.constructor = Scene_ABHelp;
  677.  
  678.         Scene_ABHelp.prototype.initialize = function() {
  679.             Scene_MenuBase.prototype.initialize.call(this);
  680.                         this._ABHelpItem = null;
  681.                         this._ABHelpImageIndex = 0;
  682.         };
  683.  
  684.         Scene_ABHelp.prototype.create = function() {
  685.             Scene_MenuBase.prototype.create.call(this);
  686.  
  687.             this.createABHelpNameWindow();
  688.             this.createABHelpListWindow();
  689.             this.createABHelpTitleWindow();
  690.             this.createABHelpImageWindow();
  691.             this.createABHelpNextWindow();
  692.             this.createABHelpNumberWindow();
  693.                         if ($gameSystem.isABHelpOpenWithIndex()) {
  694.                                 this.openIndex($gameSystem.getABHelpOpenWithIndex());
  695.                         } else {
  696.                                 this._ABHelpNextWindow.deactivate();
  697.                                 this._ABHelpNextWindow.deselect();
  698.                                 this._ABHelpListWindow.activate();
  699.                                 this._ABHelpListWindow.select(0);
  700.                                 this._ABHelpListWindow.refresh();
  701.                         }
  702.         };
  703.  
  704.         Scene_ABHelp.prototype.createABHelpListWindow = function() {
  705.     this._ABHelpListWindow = new Window_ABHelpList();
  706.                 this._ABHelpListWindow.setHandler('ok', this.onItemOk.bind(this));
  707.                 this._ABHelpListWindow.setHandler('cancel', this.popScene.bind(this));
  708.     this.addWindow(this._ABHelpListWindow);
  709.                 //this._ABHelpListWindow.openness = 0;
  710.         };
  711.         Scene_ABHelp.prototype.createABHelpNameWindow = function() {
  712.     this._ABHelpNameWindow = new Window_ABHelpName();
  713.     this.addWindow(this._ABHelpNameWindow);
  714.                 //this._ABHelpNameWindow.openness = 0;
  715.         };
  716.         Scene_ABHelp.prototype.createABHelpTitleWindow = function() {
  717.     this._ABHelpTitleWindow = new Window_ABHelpTitle();
  718.     this.addWindow(this._ABHelpTitleWindow);
  719.                 this._ABHelpTitleWindow.openness = 0;
  720.         };
  721.         Scene_ABHelp.prototype.createABHelpImageWindow = function() {
  722.     this._ABHelpImageWindow = new Window_ABHelpImage();
  723.     this.addWindow(this._ABHelpImageWindow);
  724.                 this._ABHelpImageWindow.openness = 0;
  725.         };
  726.         Scene_ABHelp.prototype.createABHelpNumberWindow = function() {
  727.     this._ABHelpNumberWindow = new Window_ABHelpNumber();
  728.     this.addWindow(this._ABHelpNumberWindow);
  729.                 this._ABHelpNumberWindow.openness = 0;
  730.         };
  731.         Scene_ABHelp.prototype.createABHelpNextWindow = function() {
  732.     this._ABHelpNextWindow = new Window_ABHelpNext();
  733.                 this._ABHelpNextWindow.openness = 0;
  734.     //this._ABHelpNextWindow.setHelpWindow(this._helpWindow);
  735.     this._ABHelpNextWindow.setHandler('next',    this.commandNext.bind(this));
  736.     this._ABHelpNextWindow.setHandler('end',   this.commandEnd.bind(this));
  737.           this._ABHelpNextWindow.setHandler('cancel',   this.commandCancel.bind(this));
  738.     this.addWindow(this._ABHelpNextWindow);
  739.         };
  740.  
  741.         Scene_ABHelp.prototype.onItemOk = function() {
  742.                 var index = this._ABHelpListWindow.index();
  743.                 this._ABHelpIndex = index;
  744.                 this._ABHelpItem = this._ABHelpListWindow._data[index];
  745.                 this._ABHelpImageIndex = 0;
  746.  
  747.  
  748.                 $gameSystem.setABHelpRead(index);
  749.  
  750.                 this._ABHelpListWindow.deactivate();
  751.                 this._ABHelpListWindow.close();
  752.                 this._ABHelpTitleWindow.setItem(this._ABHelpItem);
  753.                 this._ABHelpTitleWindow.open();
  754.                 this._ABHelpNumberWindow.setItem(this._ABHelpItem);
  755.                 this._ABHelpNumberWindow.open();
  756.                 this._ABHelpImageWindow.setItem(this._ABHelpItem);
  757.                 this._ABHelpImageWindow.open();
  758.     this._ABHelpImageWindow.setImageIndex(this._ABHelpImageIndex);
  759.     this._ABHelpNumberWindow.setImageIndex(this._ABHelpImageIndex);
  760.                 this._ABHelpNextWindow.setHaveNext(this._ABHelpItem.ImageList.length > 1);
  761.                 this._ABHelpNextWindow.setHavePrev(false);
  762.                 this._ABHelpNextWindow.open();
  763.                 this._ABHelpNextWindow.activate();
  764.                 this._ABHelpNextWindow.select(0);
  765.         };
  766.  
  767.  
  768.  
  769.         Scene_ABHelp.prototype.commandNext = function() {
  770.                         this._ABHelpImageIndex++;
  771.                         if (this._ABHelpImageIndex >= this._ABHelpItem.ImageList.length) {
  772.                                 this._ABHelpImageIndex = this._ABHelpItem.ImageList.length-1;
  773.                         }
  774.             this._ABHelpNextWindow.setHaveNext(this._ABHelpItem.ImageList.length > this._ABHelpImageIndex+1);
  775.                         this._ABHelpNextWindow.setHavePrev(this._ABHelpImageIndex > 0);
  776.             this._ABHelpImageWindow.setImageIndex(this._ABHelpImageIndex);
  777.             this._ABHelpNumberWindow.setImageIndex(this._ABHelpImageIndex);
  778.                         this._ABHelpNextWindow.activate();
  779.         };
  780.  
  781.         Scene_ABHelp.prototype.commandCancel = function() {
  782.                         this._ABHelpImageIndex--;
  783.                         if (this._ABHelpImageIndex < 0) {
  784.                                 this.commandEnd();
  785.                                 return;
  786.                         }
  787.             this._ABHelpNextWindow.setHaveNext(this._ABHelpItem.ImageList.length > this._ABHelpImageIndex);
  788.                         this._ABHelpNextWindow.setHavePrev(this._ABHelpImageIndex > 0);
  789.             this._ABHelpImageWindow.setImageIndex(this._ABHelpImageIndex);
  790.             this._ABHelpNumberWindow.setImageIndex(this._ABHelpImageIndex);
  791.                         this._ABHelpNextWindow.activate();
  792.  
  793.         };
  794.  
  795.  
  796.  
  797.  
  798.         Scene_ABHelp.prototype.commandEnd = function() {
  799.                 if ($gameSystem.isABHelpOpenWithIndex()) {
  800.                         $gameSystem.setABHelpOpenWithIndex(-1);
  801.                         this.popScene();
  802.                         return;
  803.                 }
  804.                 this._ABHelpListWindow.refresh();
  805.                 this._ABHelpListWindow.activate();
  806.                 this._ABHelpListWindow.open();
  807.                 this._ABHelpTitleWindow.close();
  808.                 this._ABHelpNumberWindow.close();
  809.                 this._ABHelpImageWindow.close();
  810.                 this._ABHelpNextWindow.close();
  811.                 this._ABHelpNextWindow.deactivate();
  812.         };
  813.  
  814.  
  815.         Scene_ABHelp.prototype.openIndex = function(index) {
  816.                 this._ABHelpIndex = index;
  817.                 this._ABHelpItem = AB_HelpList[index];
  818.                 this._ABHelpImageIndex = 0;
  819.  
  820.  
  821.                 $gameSystem.setABHelpRead(index);
  822.  
  823.                 this._ABHelpListWindow.deactivate();
  824.                 this._ABHelpListWindow.close();
  825.                 this._ABHelpTitleWindow.setItem(this._ABHelpItem);
  826.                 this._ABHelpTitleWindow.open();
  827.                 this._ABHelpNumberWindow.setItem(this._ABHelpItem);
  828.                 this._ABHelpNumberWindow.open();
  829.                 this._ABHelpImageWindow.setItem(this._ABHelpItem);
  830.                 this._ABHelpImageWindow.open();
  831.     this._ABHelpImageWindow.setImageIndex(this._ABHelpImageIndex);
  832.     this._ABHelpNumberWindow.setImageIndex(this._ABHelpImageIndex);
  833.                 this._ABHelpNextWindow.setHaveNext(this._ABHelpItem.ImageList.length > 1);
  834.                 this._ABHelpNextWindow.setHavePrev(false);
  835.                 this._ABHelpNextWindow.open();
  836.                 this._ABHelpNextWindow.activate();
  837.                 this._ABHelpNextWindow.select(0);
  838.         };
  839.  
  840.  
  841. //=============================================================================
  842. // Scene_Menu
  843. //=============================================================================
  844.  
  845.         var _Scene_Menu_prototype_createCommandWindow = Scene_Menu.prototype.createCommandWindow;
  846.         Scene_Menu.prototype.createCommandWindow = function() {
  847.                 _Scene_Menu_prototype_createCommandWindow.call(this);
  848.                 this._commandWindow.setHandler('ABHelp',        this.commandABHelp.bind(this));
  849.         };
  850.  
  851.         Scene_Menu.prototype.commandABHelp = function() {
  852.                 SceneManager.push(Scene_ABHelp);
  853.         };
  854.  
  855. //=============================================================================
  856. // Window_MenuCommand
  857. //=============================================================================
  858.  
  859.         var _Window_MenuCommand_prototype_addOriginalCommands = Window_MenuCommand.prototype.addOriginalCommands;
  860.         Window_MenuCommand.prototype.addOriginalCommands = function() {
  861.                 _Window_MenuCommand_prototype_addOriginalCommands.call(this);
  862.                 this.addABHelpCommand();
  863.         };
  864.  
  865.         Window_MenuCommand.prototype.addABHelpCommand = function() {
  866.                 var show = ABHelp_ShowSwitchID === 0 ? true : $gameSwitches.value(ABHelp_ShowSwitchID);
  867.                 if (!show) return;
  868.                 var enable = ABHelp_EnableSwitchID === 0 ? true : $gameSwitches.value(ABHelp_EnableSwitchID);
  869.                 this.addCommand(AB_Helptitle, 'ABHelp', enable);
  870.         };
  871. })();

sc_HelpScene1.png (239.45 KB, 下载次数: 3)

sc_HelpScene1.png





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1