| 赞 | 0 |
| VIP | 133 |
| 好人卡 | 5 |
| 积分 | 1 |
| 经验 | 15036 |
| 最后登录 | 2017-9-12 |
| 在线时间 | 190 小时 |
Lv1.梦旅人 彩色的银子
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 190 小时
- 注册时间
- 2006-6-13
- 帖子
- 1361

|
[quote]请问一个脚本构造是怎样的?
class类
def 方法
end
end
就完成了吗?
基本上是这样..基本就是..
类.方法.变量
[/quote]
[quote]为什么有的class类下面是def main #主处理
而有的却要是def initialize 初始化呢?
他们的不同和相同是什么呢?
只有initialize是内置的私有方法...
在new的时候会运行initialize里的内容.
注意在脚本的最下面Main里有这样一句
while $scene != nil
$scene.main
end
就是如果$scene这个东东不为nil的时候就一直运行$scene的main方法...
所以可以这样理解
$scene = Scene_Title.new
先把$scene代入了Scene_Title这个东东
然后
while $scene != nil
$scene.main
end
因为$scene不为nil
所以就运行$scene的main方法...
然后在main里有这样一个东东
就是只要不中断就一直循环运行XXX
loop do
XXXX
end
在里面都会有个跳出循环的分歧
那就是
if $scene != self
break
end啦
当$scene不等于当前的类后...比如变成了Scene_Map
因为循环中断后跳回到了Main那里去
又因为
while $scene != nil
$scene.main
end
所以现在又开始运行Scene_Map的main方法了
......
大概来说.....
main之所以叫main是因为在Main那里有这样一句
while $scene != nil
$scene.main
end
[/quote]
[quote]update刷新一般在什么情况下会用到呢?
loop do
XXX
YYY
update
end
loop 就是如果不中断就一直循环里的内容
默认的每个循环里都有update这个方法........[/quote]
[quote].dispose释放是什么意思呢?它是使用在update的前面还是后面呢?一般是什么地方使用?
就比如说场景处于菜单的时候回到地图``就肯定要把窗口什么的都释放掉吧`..orz[/quote]
[quote]-------------------------------------------------------------------------------
比如:
class Window_1
def main
@window_1=Window_1.new
上面的@window_1=Window_1.new 这一句是什么意思呢?为什么要写成@window_1=Window_1.new 呢?如果写成@wwwwww=Window_1.new 可以吗?为什么呢?
@window_1-________-只是一个变量而已...叫啥有关系吗.....???[/quote]
[quote]-------------------------------------------------------------------------------
地图事件中的第3页的脚本和F11的脚本有什么区别吗?
有``如果在事件里的脚本里写的话他还要通过Interpreter这个类的处理然后eval..
而写在F11里的话会少一些处理[/quote]
[quote]外挂脚本里在事件脚本中写的$scene = XXXX_XXXX.new意思是调查此事件时调出XXXX_XXXX
的场景,
那么有没有$game = XXXX_XXXX.new这样的写法呢?如果有,是什么意思呢?
有...囧....不解释....[/quote]
[quote]-------------------------------------------------------------------------------
为什么主循环都要是这样的格式呢?缺少里面其中一样可以吗?为什么?
loop do
# 刷新游戏画面
Graphics.update
# 刷新输入信息
Input.update
# 刷新画面情报
update
# 如果画面被切换的话就中断循环
if $scene != self
break
end
end
请参考第二个回答 [/quote]
[quote]-------------------------------------------------------------------------------
有的类里定义了很多个def方法 这些方法都只能在这个类里使用吗?
不.比如
class Yuu
def orz
return 'orz'
end
end
class FF
def initialize
@yuu = Yuu.new
end
def orz
return @yuu.orz * 2
end
end
print FF.new.orz
[/quote]
[quote]只能在class
end之间使用呢还是class里面的任何地方包括def里在调用其他def方法或者一个if条件分歧里也可以调用这些方法吗?
这些方法如果在别的类里可以调用吗?
没看明白@ @![/quote]
可以
[/quote] 系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~ 系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~ |
|