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

Project1

 找回密码
 注册会员
搜索
123
返回列表 发新帖
楼主: 「旅」
打印 上一主题 下一主题

[讨论] 脚本学习~提问教程贴~~(更新:2月11日)

 关闭 [复制链接]

Lv3.寻梦者

小柯的徒弟

梦石
0
星屑
1530
在线时间
1157 小时
注册时间
2008-5-24
帖子
3085

贵宾

21
 楼主| 发表于 2011-2-11 09:22:03 | 只看该作者
话说上楼讲了@command_window.opacity = 120的奥秘~~但是其实呢不单是写入和读取,只要你定义了如下格式的:

  1.    def name
  2.     return @name
  3.   end
  4.   def name=(name)
  5.     @name = name
  6.   end
复制代码
那么就会附送一个功能哦~~~就是@command_window.opacity += 120或@command_window.opacity -= 120啦~~~
是不是很奇怪呢,其实这个东西是RGSS自动给的~~~具体怎么操作的我们没必要知道,反正只用知道如上代码那样定义的话,我们就可以仿真的制作出一个变量了。

p.s不过如果你不把实变量(例如上面的@name)初始化,那么是不能用+=或-=的~~因为那时@name是nil,而nil是没有这些操作的~~~必须把它初始化为整型,也就是整数哦(例如0或999之类)~~
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42414
在线时间
7603 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

22
发表于 2011-2-11 09:33:27 | 只看该作者
本帖最后由 fux2 于 2011-2-11 09:52 编辑

回复 「旅」 的帖子

内啥,这里错了,于是编辑掉了。

点评

啊列原来是这样喵><  发表于 2011-2-11 09:35
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv3.寻梦者

小柯的徒弟

梦石
0
星屑
1530
在线时间
1157 小时
注册时间
2008-5-24
帖子
3085

贵宾

23
 楼主| 发表于 2011-2-11 09:50:15 | 只看该作者
回复 fux2 的帖子

唔喵不过好像不是的说~~如果是整型的话,返回值是整型的clone值~~所以返回后操作不会影响原本的数值的说~~还有那两个方法是缺一不可的说,喵很奇怪的说><

点评

a += 1等同于a = a + 1,所以同时需要getter和setter  发表于 2011-2-11 12:28
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42414
在线时间
7603 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

24
发表于 2011-2-11 09:52:15 | 只看该作者
本帖最后由 fux2 于 2011-2-11 10:02 编辑

回复 「旅」 的帖子

果断删除错误言论,事实是
    ! 叹号结尾说明此方法很危险,有副作用 传入参数会被修改
    ? 问号结尾说明这是一个查询方法, 通常是返回布尔值的方法
    = 等号结尾说明此方法用于赋值

这才是RGSS的巨大黑手……


点评

那只是一般的命名习惯而已,并不是一定是这样的。!方法比较常用的叫法是“破坏性方法”  发表于 2011-2-14 20:03
><啊列凶手原来是RGSS……  发表于 2011-2-11 10:08
终于弄明白了= =  发表于 2011-2-11 10:02
母鸡哥好好加油哦~~~  发表于 2011-2-11 09:56
待咱去研究一下XD  发表于 2011-2-11 09:54
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
869 小时
注册时间
2009-3-13
帖子
782
25
发表于 2011-2-11 10:47:44 | 只看该作者
本帖最后由 认真的学 于 2011-2-11 10:47 编辑

嗯......讲解一下clone吧......具体的问题是:
1、原值和原值clone之后有什么区别?
2、clone和dup的区别......
另外什么是【整型(数?)的clone值】,整数不是没有clone方法么?

点评

整数和符号均为全局常量,不可以clone也不能设置单例方法  发表于 2011-2-11 12:39
我的寒假活动作品:http://rpg.blue/forum.php?mod=viewthread&tid=281065
咱的龙蛋,求点击:
回复 支持 反对

使用道具 举报

Lv2.观梦者

旅之愚者

梦石
0
星屑
275
在线时间
812 小时
注册时间
2007-7-28
帖子
2148

贵宾

26
发表于 2011-2-11 12:35:56 | 只看该作者
回复 认真的学 的帖子

clone是一种浅复制,只有被复制的对象本身会产生一个全新的拷贝,可以任意操作clone对象而对本对象无影响,但是注意:对象内部关联的对象仅仅是复制了引用
举例如下:
a=[1,2]
b=[a]
c=b.clone
b[0][1]=3   #这时a=[1,3]
p c            #[[1,3]]

clone可以复制单例类而dup不可以

点评

抄书的。不过刚才测试了一下,clone会复制对象的单例方法,而dup不会  发表于 2011-2-14 12:21
dup 和 clone 都会拷贝对象的污染状态,但 dup 不会拷贝对象的冻结状态,这就是区别。“clone可以复制单例类而dup不可以”这个何以见得?  发表于 2011-2-14 11:31
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-25 00:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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