Project1
标题:
数组问题
[打印本页]
作者:
chenjc0807
时间:
2012-8-20 17:25
标题:
数组问题
前面的定义部分:
# ■ Scene_Battle (分割定义 1)
#------------------------------------------------------------------------------
# 处理战斗画面的类。
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ● 主处理
#--------------------------------------------------------------------------
@a = [] #(H)定义循环己、敌方数组
@b = []
attr_accessor :maxspeed
attr_accessor :speedindex
def main
# 初始化战斗用的各种暂时数据
@maxspeed = 1 #(H)
@speedindex = 0
………………
后面的运行部分,同在一个类里:
if @maxspeed = 1
for i in 0..$game_party.actors.size - 1 #初始化
@a[i] = $game_party.actors[i].agi #本行出错!
end
@maxspeed = @a[i] #初始化maxspeed
elsif @maxspeed >= 5000
运行出错,错误类型是未定义的方法"[]=",请教出错原因。
另外,顺便问一下,数组(本例中的@a、@b)是否也分一般变量和实变量(即去掉@会不同)?数组定义时是否不需要注明元素名字、个数?
谢谢。
作者:
bbaugle
时间:
2012-8-20 18:45
将@a 和@b的初始化放在def main里
作者:
zxcgood2009
时间:
2012-8-20 19:23
@的意思,你在软件的帮助里搜,上面有详尽的解释。
作者:
灯笼菜刀王
时间:
2012-8-21 05:23
数组和各种实变量是一样的,赋值方法和调用都一样, 要定义数组需要在初始化里赋值后才能使用,如同变量,
你可以指定任何一个变量为数组( XX = []) 就可以了,这个变量也包括系统提供的公共变量
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1