本帖最后由 OCTSJimmy 于 2014-11-9 20:48 编辑
kvkv97 发表于 2014-11-9 19:21
继续我的问题(回去看了下,还有疑惑,所以继续 下来了):
1,Window_MenuStatus类里面有:
actor = $gam ...
首先问题1:@actors = [] 中 []表示数组。
数组举例:
比如现在我有三个数字要放在变量中,可以a=1,b=2,c=3但是使用的时候,就只能使用 x=a, x=b, x=c这样子,可万一在循环中就完蛋了,例如:
for i in 1..3
p a
p b
p c
end
可这样子,循环的时候a、b、c全都被打印了三遍。
假如换成数组的话:
a[ 0 ] = 1
a[ 1 ] = 2
a[ 2 ] = 3
for i in 0 ..2
p a[ i]
end
a[ 0 ] = 1
a[ 1 ] = 2
a[ 2 ] = 3
for i in 0 ..2
p a[ i]
end
这样子就会a[0]至a[2]每个数字各打印一遍了。
问题二:
楼主或许没有太理解方法/函数/过程(它们指的是一个东东,只是叫法不同)的概念。
函数的定义:
def 函数名称([传入参数1变量名], [传入参数2变量名], [传入参数3变量名]...)
#代码段
end
例如:
def a(canshu1)
p canshu1#这里就用到了传入的参数1
end
还是建议楼主多看F1,不行就照抄,觉得该抄什么就抄,抄下来不合用就自己改,改完了就直接运行,挂了就知道没改对,去找找有没有类似的代码片段,与要改的这节有什么不同,不同的地方差不多就是可以改的,继续试。
为了避免连帖,我就在这里编辑吧。
在F1中有说明各个系统自带类的来龙去脉的。
(以下脱离RM环境,纯解释类的概念)
另外Game_Party可以认为是一个队伍类,那么可以这样思考:
队伍类中需要包含什么?
1、队员,队员由角色组成,因此每位队员就是一个Game_Actor
2、队伍需要在地图的任意一个点显示,因此哪个点就很关键了,这就是坐标
3、队伍有一个包裹,用来装每个角色用不到的装备,以及大家都能使用的物品、药剂等
4、队伍里有一个钱袋,放着大家所有的钱钱
5、……等等等等……
如此封装后,就成了队伍类,需要队伍中的数据,就可以通过队伍类中的方法或成员获取到了。
类中可以引用其他类,作为成员封装进该类中。
比如角色,它也是一个类,那么怎样描述一位角色呢?
1、角色有一个炫酷的外形
2、角色有生命值、魔法值、经验值
3、角色有各个部位的装备
4、角色有它的成名绝技,各种技能
5、角色有它的攻击力、防御力、躲避率
6、角色的各种状态
7、……等等……
还比如,生命值,它也可以封装为一个类,例如:
1、当前生命值
2、最大生命值
3、最小生命值,低于这个数就死亡啦。
4、生命值回复周期
5、上一次生命值回复的时间
6、生命值的成长比例
7、变更生命值的方法
这里为什么把变更生命值的方法放在生命值的类中呢?因为生命值最大不能超过最大生命值,最小不能小于最小生命值(否则返回死亡状态)。
这样在其他地方应用的时候,就不需要再判定最大生命值、最小生命值等等东西了,直接使用这个方法,是不是轻松得多?
8、……等等……