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

Project1

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

[原创发布] 仿照mog的脚本写了一个Scene_Option

[复制链接]

Lv2.观梦者

梦石
0
星屑
440
在线时间
679 小时
注册时间
2014-3-15
帖子
292

开拓者

跳转到指定楼层
1
发表于 2017-2-22 01:14:27 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 sonicdonggua 于 2017-2-23 16:57 编辑

JAVASCRIPT 代码复制
  1. //=============================================================================
  2. // MOG_SceneOptions.js
  3. //=============================================================================
  4.  
  5. /*:
  6.  * @plugindesc (v1.0) 仿Mog创建Scene_Options.
  7.  * @author Moghunter
  8.  *
  9.  * @param Option LayoutX
  10.  * @desc 选项命令X坐标。
  11.  * @default 238
  12.  *
  13.  * @param Option LayoutY
  14.  * @desc 选项命令Y坐标。
  15.  * @default 190
  16.  *
  17.  * @param Option WLayoutX
  18.  * @desc 选项Layout偏移X坐标。
  19.  * @default -18
  20.  *
  21.  * @param Option WLayoutY
  22.  * @desc 选项Layout偏移Y坐标。
  23.  * @default -37
  24.  *
  25.  * @help  
  26.  * =============================================================================
  27.  * +++ MOG拓展 - Scene Options (v1.0) +++
  28.  * By Ryosonic
  29.  * =============================================================================
  30.  * 仿Mog插件制作的Scene_Options。
  31.  * 将Layout.png与OptionsLayout.png放入下面的文件夹
  32.  * /img/menus/options/
  33.  *
  34.  */
  35.  
  36. //=============================================================================
  37. // ** PLUGIN PARAMETERS
  38. //=============================================================================
  39.   var Imported = Imported || {};
  40.    Imported.MOG_SceneFile = true;
  41.    var Moghunter = Moghunter || {};
  42.    Moghunter.parameters = PluginManager.parameters('MOG_SceneOptions');
  43.    Moghunter.scOptions_layoutX = Number(Moghunter.parameters['Option LayoutX'] || 238);
  44.    Moghunter.scOptions_layoutY = Number(Moghunter.parameters['Option LayoutY'] || 190);
  45.    Moghunter.scOptions_WlayoutX = Number(Moghunter.parameters['Option WLayoutX'] || -18);
  46.    Moghunter.scOptions_WlayoutY = Number(Moghunter.parameters['Option WLayoutY'] || -37);
  47.  
  48. //=============================================================================
  49. // ** ImageManager
  50. //=============================================================================
  51.  
  52. //==============================
  53. // * Menus
  54. //==============================
  55. ImageManager.loadMenusOptions = function(filename) {
  56.     return this.loadBitmap('img/menus/options/', filename, 0, true);
  57. };
  58.  
  59. //==============================
  60. // * create
  61. //==============================
  62. var _mog_scOptions_create = Scene_Options.prototype.create;
  63. Scene_Options.prototype.create = function() {
  64.     _mog_scOptions_create.call(this);
  65.     this.loadBitmaps();
  66.     this._optionsWindow.opacity = 0;
  67.     this._optionsWindow.x = Moghunter.scOptions_layoutX;
  68.     this._optionsWindow.y = 624;
  69.     this.createSprites();
  70. };
  71.  
  72. //==============================
  73. // * create Background
  74. //==============================
  75. var _mog_scOptions_createBackground = Scene_Options.prototype.createBackground;
  76. Scene_Options.prototype.createBackground = function() {
  77.         _mog_scOptions_createBackground.call(this);
  78.         this._field = new Sprite();
  79.         this.addChild(this._field);       
  80. }
  81.  
  82. //==============================
  83. // * loadBitmaps
  84. //==============================
  85. Scene_Options.prototype.loadBitmaps = function() {
  86.         this._layImg = (ImageManager.loadMenusOptions("Layout"));
  87.         this._layOptionsImg = (ImageManager.loadMenusOptions("OptionsLayout"));
  88. };
  89.  
  90. //==============================
  91. // * create Sprites
  92. //==============================
  93. Scene_Options.prototype.createSprites = function() {
  94.         this.createLayout();
  95.         this.createOptionsLayout();
  96. };
  97.  
  98. //==============================
  99. // * create Sprites
  100. //==============================
  101. Scene_Options.prototype.createLayout = function() {
  102.         this._layout = new Sprite(this._layImg);
  103.         this._field.addChild(this._layout);
  104. };
  105.  
  106. //==============================
  107. // * create Options Layout
  108. //==============================
  109. Scene_Options.prototype.createOptionsLayout = function() {
  110.         this._layoutOptions = new Sprite(this._layOptionsImg);
  111.         this._layoutOptions.opacity = 0;
  112.         this._layoutOptions.x = this._optionsWindow.x + Moghunter.scOptions_WlayoutX;
  113.         this._layoutOptions.y = 624 + Moghunter.scOptions_WlayoutY;
  114.         this._field.addChild(this._layoutOptions);
  115. };
  116.  
  117. //==============================
  118. // * update Slide
  119. //==============================
  120. Scene_Options.prototype.updateSlide = function() {
  121.         this._optionsWindow.opacity = 0;
  122.         this._optionsWindow.contentsOpacity += 5;
  123.         if (this._optionsWindow.y > Moghunter.scOptions_layoutY) {
  124.                 this._optionsWindow.y -= 10;
  125.                 this._layoutOptions.y -= 10;
  126.                 this._layoutOptions.opacity = this._optionsWindow.contentsOpacity;
  127.                 if (this._optionsWindow.y <= Moghunter.scOptions_layoutY){
  128.                 this._optionsWindow.y = Moghunter.scOptions_layoutY;
  129.                 this._layoutOptions.y = Moghunter.scOptions_layoutY + Moghunter.scOptions_WlayoutY
  130. };
  131.         };
  132. };
  133.  
  134. //==============================
  135. // * Update
  136. //==============================
  137. var _mog_scOptions_update = Scene_Options.prototype.update;
  138. Scene_Options.prototype.update = function() {
  139.         _mog_scOptions_update.call(this);
  140.          if(this._layImg.isReady()) this.updateSlide();
  141. };

Mog华丽菜单有menus、item、equip、skill、status与file,缺少了party、options与end。party可以通过放个背景达到美观效果、scene_end我直接删掉了改成了一按就退出,options就必须要动动手了。
Mog的插件特点是建立Window,然后设定透明度为0,然后配合贴图与移动效果达到美观的特点。
仿照Mog的风格写的,当然为了整齐直接盗用了Mog的名字作为参数{:2_258:} ,这样算是添加了一个小小的动画效果。
需要准备layout与OptionsLayout两个文件,放到img/menus/Options/文件夹下

评分

参与人数 2星屑 +200 收起 理由
月下耶鲁夫 + 190 造福社会
白嫩白嫩的 + 10 大神辛苦了

查看全部评分

Lv3.寻梦者

梦石
0
星屑
2577
在线时间
362 小时
注册时间
2015-8-15
帖子
80
2
发表于 2017-2-23 15:24:04 | 只看该作者
大神,能否发张效果图看看是怎样布局的
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
440
在线时间
679 小时
注册时间
2014-3-15
帖子
292

开拓者

3
 楼主| 发表于 2017-2-23 17:00:03 | 只看该作者
本帖最后由 sonicdonggua 于 2017-2-23 17:01 编辑
梦幻のLoli塔 发表于 2017-2-23 15:24
大神,能否发张效果图看看是怎样布局的


代码写的太仓促,稍微改了一下。不好意思。
最后的效果是optionwindow停到了屏幕中间

屏幕快照 2017-02-23 下午4.58.55.png (2.49 MB, 下载次数: 146)

屏幕快照 2017-02-23 下午4.58.55.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
105 小时
注册时间
2011-8-14
帖子
60
4
发表于 2017-2-24 19:57:40 | 只看该作者
希望有一天能把Yanfly的界面全部美化。
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

梦石
0
星屑
1847
在线时间
2677 小时
注册时间
2010-6-26
帖子
3197

开拓者整合系统大赛RMVX达人剧作品鉴家

5
发表于 2017-2-24 22:23:54 | 只看该作者
感谢楼主的无私共享,很赞~

      情人怨遥夜,竟夕起相思
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2577
在线时间
362 小时
注册时间
2015-8-15
帖子
80
6
发表于 2019-8-26 17:15:10 | 只看该作者
这个插件启动不了啊,请问要写什么东西吗?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
416
在线时间
72 小时
注册时间
2019-7-30
帖子
33
7
发表于 2019-8-29 16:32:00 | 只看该作者
谢谢分享,收下了
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
992
在线时间
108 小时
注册时间
2022-7-2
帖子
149
8
发表于 2022-7-6 15:47:21 | 只看该作者
6666666666
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-19 18:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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