Chingu:如何在游戏中添加自定义鼠标光标?

时间:2013-08-01 20:16:53

标签: ruby

使用Chingu,创建自定义鼠标光标图像的最佳方法是什么?我能够在屏幕上获得自定义光标,但看起来很尴尬。相关代码:

class Game < Chingu::Window
    def initialize
        super
        self.input = { :escape => :exit }
        #@cursor = false
        @cursor = Gosu::Image.new(self, 'media/mouse.png')
    end

    def draw
        super
        @cursor.draw(self.mouse_x, self.mouse_y, 100)
    end

    def needs_cursor?
        false
    end 
end

对此的感知问题......

  1. 我需要使用Gosu needs_cursor?隐藏系统光标的方法,@ cursor = false似乎不起作用。
  2. 使用Gosu :: Image。我似乎不对。
  3. 有更好的方法吗?如果是这样,它是什么?

1 个答案:

答案 0 :(得分:1)

据我所知,没有专门的机制。 这也就是在其他2D游戏引擎中完成的方式。

请记住偏移图像,使点击位于鼠标位置(例如狙击手十字架的中间位置)

  1. 我用这个:

    Game < Chingu::Window
      def initialize
        super(640,480,false)              
        self.cursor = false
      end
    end
    

    因此设置cursor变量可以正常工作。您使用的是Chingu版本?我也无法想象会有变化。

  2. 实际上Gosu::Image是一个不错的选择,因为Chingu的其他所有内容都使用该类。