查看: 2291|回复: 5

[已经解决] 【脚本学习】::Sprite.new(viewport) 的两个冒号是什么意思

[复制链接]
梦石
0
星屑
50
在线时间
210 小时
注册时间
2012-7-19
回帖
207
发表于 2016-11-19 10:43:31 | 显示全部楼层 |阅读模式

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

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

×
[pre lang="ruby"]def make_animation_sprites
    @ani_sprites = []
    if @use_sprite && !@@ani_spr_checker.include?(@animation)
      16.times do
        sprite = ::Sprite.new(viewport)
        sprite.visible = false
        @ani_sprites.push(sprite)
      end
      if @animation.position == 3
        @@ani_spr_checker.push(@animation)
      end
    end
    @ani_duplicated = @@ani_checker.include?(@animation)
    if !@ani_duplicated && @animation.position == 3
      @@ani_checker.push(@animation)
    end
  end[/pre]

就是在游戏内看见了这样一个方法 然后里面用到了::Sprite.new  Sprite.new 我是知道啦,
但是:: 这两个冒号是什么意思?

评分

参与人数 2星屑 +60 收起 理由
RaidenInfinity + 50 结帖
QQ蚊子湯 + 10 清流

查看全部评分

梦石
0
星屑
4623
在线时间
1207 小时
注册时间
2016-4-7
回帖
944

开拓者

发表于 2016-11-19 11:15:01 | 显示全部楼层
可能他自己在哪里定义了一个Sprite类吧
::用来回到顶层的namespace
具体可以参考这里:https://ruby-china.org/topics/7932

点评

已读完,受益匪浅 感谢  发表于 2016-11-19 23:10

评分

参与人数 1星屑 +250 收起 理由
RaidenInfinity + 250 认可答案

查看全部评分

附庸的附庸不是我的附庸,女儿的女儿还是我的女儿。CK2沉迷ing
回复

使用道具 举报

无限の剣制

梦石
0
星屑
10445
在线时间
5019 小时
注册时间
2013-2-28
回帖
4942

开拓者贵宾

发表于 2016-11-19 12:05:40 | 显示全部楼层
本帖最后由 VIPArcher 于 2016-11-19 12:07 编辑

感觉默认脚本这里用::和不用都是一样的
访问的都是 Sprite
  1. class B
  2.   def ab
  3.     p self.class
  4.   end
  5. end
  6. module A
  7.   class B
  8.     def ab
  9.       p self.class
  10.     end
  11.   end
  12.   B.new.ab    #=> A::B
  13.   ::B.new.ab  #=> B
  14. end
  15. B.new.ab      #=> B
  16. A::B.new.ab   #=> A::B
复制代码

点评

已经了解了 谢谢  发表于 2016-11-19 23:11
嘛 毕竟给出的不是完整代码,如果他在哪里自己定义了Sprite的话,就不一样了。  发表于 2016-11-19 14:15

评分

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

查看全部评分

回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部