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

Project1

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

[已经过期] 请问:窗口的参数为什么不能设置成实例变量

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3925
在线时间
254 小时
注册时间
2013-10-13
帖子
790
跳转到指定楼层
1
发表于 2022-8-9 22:40:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
class Window_Command < Window_Selectable
  def initialize(width,commands)
    super(0,0,width,commands.size*32+32)
    self.contents=Bitmap.new(width-32,height-32)
  end
end
我把参数width设置成@width,结果显示错误?为什么在$game_player里面的参数就可以用实例变量,如if passable?(@x,@y,4)?

另外,我把@command_window=Window_Command.new(192,["开始","继续","结束"],@a=192)加上@a=192,为什么显示参数错误?在initialize(width,commands)后面加参数@a=192可以啊,(width,commands,@a=192)没显示错误

Lv5.捕梦者 (版主)

梦石
1
星屑
23963
在线时间
3338 小时
注册时间
2011-7-8
帖子
3925

开拓者

2
发表于 2022-8-10 00:37:45 | 只看该作者
本帖最后由 guoxiaomi 于 2022-8-10 00:41 编辑

注意,Window是内部类。对于F1里提到的那些内部类,其各个属性并不是用实例变量实现的,读取要用self.xxx,赋值要用self.xxx = yyy。有一些带set方法的属性,赋值尽量用self.xxx.set(yyy, ...)

第二个问题,两者的区别在于前者是在调用方法,后者是在定义方法。你需要补充一下ruby的相关基础知识了。
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-26 07:25

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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