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

Project1

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

[已经解决] 咨询脚本语法

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
跳转到指定楼层
1
发表于 2014-1-12 20:38:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在Window_Selectable这个类里,发现一种函数写法如下:
def xx1=(xx2)
比如def height=(height)、def active=(active)
问题如下:
1.  xx1=(xx2)中,xx1是否必须和xx2相等?例如def active=(active)能否改成def active1=(active2)
2.  def xx1=(xx2)这样代表什么意思?

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21626
在线时间
9413 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2014-1-12 20:46:17 | 只看该作者
类似attr_,让外部类能够修改这个实例变量的值,否则这个实例变量的值只能通过这个类的方法来修改:
类似下面这种感觉
@a = b.new
@a.c = 123
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
3
 楼主| 发表于 2014-1-12 22:03:24 | 只看该作者
喵呜喵5 发表于 2014-1-12 20:46
类似attr_,让外部类能够修改这个实例变量的值,否则这个实例变量的值只能通过这个类的方法来修改:
类似下 ...

那么,函数名是不是必须就等于变量名?
比如def height=(height),第一个height既是函数名,又必须是变量名(变量height)?后面那个height是参数值?

点评

不用啊,当成一个普通的方法来看就好了, 前面那个是方法名,括号里面是参数  发表于 2014-1-12 22:40
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21626
在线时间
9413 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

4
发表于 2014-1-12 22:56:28 | 只看该作者
本帖最后由 喵呜喵5 于 2014-1-12 22:58 编辑

class a
  def 载入
    @a=0
    @b=0
  end
  def a的值=(c)
    @a=c
  end
  def 输出
    p @a
    p @b
  end
end


@sample=a.new
@sample.a的值=2
@sample.输出
@sample.b=2 #报错
@sample.a=2 #报错

点评

谢谢喵大  发表于 2014-1-13 10:31

评分

参与人数 1梦石 +1 收起 理由
Sion + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3298
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
5
 楼主| 发表于 2014-1-12 23:25:49 | 只看该作者
喵呜喵5 发表于 2014-1-12 22:56
class a
  def 载入
    @a=0

如果当作普通函数,我明白,你写的例子,我也看明白了,但是我回到Window_Selectable里看第84行开始
  1. #--------------------------------------------------------------------------
  2.   # ● 设置高度
  3.   #--------------------------------------------------------------------------
  4.   def height=(height)
  5.     super
  6.     update_padding
  7.   end
复制代码
这种函数还有父类函数super?我查遍全工程没看到父类函数有定义啊……

点评

调整窗口大小位置时用的self.x啊self.height之类的就是调用windows_base的父类windows的方法  发表于 2014-1-12 23:34
父类在windows里面,写在dll中,请看F1  发表于 2014-1-12 23:30
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
帖子
5113

贵宾

6
发表于 2014-1-13 22:58:48 | 只看该作者
def a=(a)
  @a = a
end

def a=(rpgmaker)
  @a = rpgmaker
end

这两个效果一样……但或许后一种会看着更直观一些。
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 12:00

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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