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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: xjzsq
打印 上一主题 下一主题

[已经解决] 关于JS脚本学习的疑问

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1232
在线时间
1017 小时
注册时间
2011-4-30
帖子
1516
11
发表于 2016-5-14 17:07:19 | 只看该作者
xjzsq 发表于 2016-5-13 19:57
1.是不是在JS里面向Scene_Map.prototype.createDisplayObjects里添加方法,需要把方法里的内容重新再写一 ...

1,这只是一种写法,
Scene_Map.prototype.createDisplayObjects =function() {}
这种是把一个function 赋予 Scene_Map.prototype.createDisplayObjects  ,这样原本的  Scene_Map.prototype.createDisplayObjects 所代表的方法就被替代了,
解决方法有二,
一,在新的方法里把原来的方法里的内容重新写一遍
二,把原来的方法赋与一个变量 , 在新的方法里调用这个方法,
因为这个变量 和 新方法 的this 是不同的 ,所以需要 .call(this)


2  是不是场景的方法可以直接使用,而不用再定义类?
额,场景是指Scene_Map 吗? 已经被定义了吧

3,Window_Help的那个行数为“1”是怎么回事?
这个是Window_Help的一个参数,控制窗口的行数(行数就是高发变化)
Window_Base 的参数与之不同,你应该看原版mv的相应脚本
(可以参考我的机翻mv)
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
31195
在线时间
608 小时
注册时间
2014-7-18
帖子
729

开拓者

12
 楼主| 发表于 2016-5-14 17:12:40 | 只看该作者
taroxd 发表于 2016-5-13 21:15
1. 不用。方法类似 ruby 的 alias,你可以参考 MV 自带的那些插件
2. 没看懂问题
3. 没看懂问题

对不起,我完善一下问题:
2.在VA中,想要重新定义场景中的一个方法,例如我想在地图中显示一个窗口,我必须更改Scene_Map中的start方法,那样我必须先写上
class Scene_Map < Scene_Base
end
然后在中间重新定义start,
但是在8L的回答中,直接用的是Scene_Map.prototype,createDisplayObjects = fuction(){
}
然后把该方法的内容都加了进去,
是不是不用再重新定义一次场景了?(fuction Scene_Map...之类的代码)
3.8L的
this._nameWindow = new Window_Help(1)
这行代码中,参数“1”是怎么回事?
为什么我在Window_Help中没有找到需要加参数的标志?
如果改成
this._nameWindow = new Window_Base(1)
的话,还需要加上参数“1”吗?
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

13
发表于 2016-5-14 19:54:42 | 只看该作者
xjzsq 发表于 2016-5-14 17:12
对不起,我完善一下问题:
2.在VA中,想要重新定义场景中的一个方法,例如我想在地图中显示一个窗口,我 ...

2. VA 中 class Scene_Map < Scene_Base 也不是类定义,只是打开类(open a class)
无论 VA 还是 MV 都不需要重新定义

3. 找对应类的构造函数(通常是调用 initialize 方法)

点评

MV 中没有打开类这一说法  发表于 2016-5-15 07:34
是不是mv中不用打开类?  发表于 2016-5-14 22:17
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-24 04:13

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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