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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 冰舞蝶恋
打印 上一主题 下一主题

[RMVX发布] 新人脚本入门·语法和常用语句(未完编辑中)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
110
在线时间
953 小时
注册时间
2007-4-25
帖子
805
11
发表于 2011-4-22 01:12:11 | 只看该作者
本帖最后由 苏小脉 于 2011-4-22 01:18 编辑

回复 一箭烂YiJL 的帖子

但无可否认,他们是TrueClass和FalseClass的实例。("`true' 和 `false' 是类"好像也说的通吧。)这个是一个实验:

`TrueClass' 和 `FalseClass' 是类,`true' 和 `false' 是实例。is-a 关系是面向对象思想中对象(实例)与类型的关系,即左手边属于右手边这个类型,或者说友手边的类型兼容左手边对象的类型,并不是左右相等。`true'、`false'、`nil' 都是 Ruby 中的直接值(immediate value),所以这三个实例都是唯一的,都是单一实例。同样是直接值的还有 Ruby 的符号和定点数,只不过并非是单一实例。

Ruby语法不是include Kernel么?

是的,这个就是 mixin。Matz 在去年 RubyConf 的讲座上曾说过要在 Ruby 2.0 中把真正的 mixin 接口改为 `Module#mix',而以前的 `Module#include' 则有别的作用,主要是区分了命名冲突的处理方式。

点评

虽然Fixnum、Symbol都是立即值,但感觉不像。不是include(module)么?那么新的语法是否Mix(module)?  发表于 2011-4-22 08:23
[email protected]:~> repeat 1 fortune
Matz is nice, so we are nice.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
12
发表于 2011-4-22 09:04:44 | 只看该作者
回复 一箭烂YiJL 的帖子
虽然Fixnum、Symbol都是立即值,但感觉不像。

有什么不像?
不是include(module)么?那么新的语法是否Mix(module)?

`Module#include' 这样的符号表示 `include' 是 `Module' 的实例方法。
新的确实是 Module#mix,接受的参数和 `include' 一样,但这只是草案,并非板上钉钉。如果有兴趣可以看看 DK 在 youku 上发布的 RubyConf 2010 的 Matz 的视频,就是音量有点小。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

弓箭手?剑兰

梦石
0
星屑
4849
在线时间
833 小时
注册时间
2010-11-17
帖子
1140
13
发表于 2011-4-22 10:30:21 | 只看该作者
回复 紫苏 的帖子
有什么不像?

只是感觉,被"值"字的概念影响了。


对于#的理解:Bitmap#width => bitmap_obj.width。
include不是module类的私有方法(class承继module)么?
`Module#include' 让我理解为module_obj.include。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
110
在线时间
953 小时
注册时间
2007-4-25
帖子
805
14
发表于 2011-4-22 11:13:04 | 只看该作者
一箭烂YiJL 发表于 2011-4-22 10:30
回复 紫苏 的帖子

`include' 是 `Module' 的私有实例方法,就和 attr_reader、attr_accessor 等方法一样。当你在一个 module/class 的上下文中调用 include 的时候,其接收者(self)就是该 module/class 本身,它们是 Module 或 Class 的实例,也就相当于你这里的 `module_obj'。只不过由于 Module#include 是私有方法,所以 module_obj.include 这样的写法会有访问上的障碍。

  1. p Module.private_instance_methods.include? :include # => true
  2. p Module.private_methods.include? :include          # => true

  3. M = Module.new
  4. # private method `include' called for #<Module:0x1d30e68> (NoMethodError)
  5. M.include Math

  6. M.method(:include).call Math                        # => OK
  7. Module.instance_method(:include).bind(M).call Math  # => OK
  8. M.send :include, Math                               # => OK
  9. M.module_eval { include Math }                      # => OK

  10. p M.foo
复制代码
如果方法是私有的,那么显式指定了接收者的方法调用就被不被允许。

点评

嗯~明白。  发表于 2011-4-22 17:06
[email protected]:~> repeat 1 fortune
Matz is nice, so we are nice.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
105 小时
注册时间
2009-7-25
帖子
201
15
发表于 2011-4-22 18:35:33 | 只看该作者
本帖最后由 killkill2298 于 2011-4-23 16:39 编辑

回复 冰舞蝶恋 的帖子

站在朋友立场支持下。

提出些意见:
感觉只是把你理解的一股脑倒出来了,介绍很乱,又是条件判断,又是变量,而且介绍不太基础,例如什么是判断语句,什么是变量?
对于学过其他语言的人来说,很好理解,不过,直接看F1更好,真乱。
对于没学过语言的人来说,看了判断、运算符、输出语句p、注释符、乱起八糟的各种变量(局部、全局),各种变量类型(整数、字符串),常量
说明文字中还使用了module(模块),说实话,能够看懂说明的基本上不是新人了。真正的新人想从一句话中学会这么多东西,智商没有180真的不行。

我这人想到什么说什么,不要介意,批评性的建议也是支持的一种。
希望完整版能够有更详细的用法,真正面向不懂脚本的新人。

好吧,我也不是光会指手画脚的人。冰舞~~~我写个参考目录和修改建议发给你。

点评

确实是,那帖子已经沉了  发表于 2011-4-23 16:33
那我就吐槽一句:抢冰舞的生意开的那个帖子我还真觉得不如冰舞的那个。  发表于 2011-4-22 21:55
我是好人

VX ARPG迷城的国度试玩版已经放出
后续版本紧张制作中

正在策划迷城的伊苏:以超难迷宫为主的中型游戏
回复 支持 反对

使用道具 举报

Lv2.观梦者

虚構歪曲

梦石
0
星屑
309
在线时间
1194 小时
注册时间
2010-12-18
帖子
3928

贵宾

16
发表于 2011-4-30 19:29:14 | 只看该作者
嘛,就是吐槽,data没有hp,$data_enemise[1].hp会报错的……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
2 小时
注册时间
2008-11-8
帖子
4
17
发表于 2012-6-17 01:24:16 | 只看该作者
这还叫入门啊?跟看天书似的。
我本将心向游戏,奈何止步于脚步啦。。。。。。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-30 14:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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