Как вы получаете Gosu - Ruby для сохранения координат x и y спрайта?

Я занимаюсь перетаскиванием с помощью Gosu - Ruby, и мне нужно знать, как заставить компьютер сохранять координаты x и y спрайта. Это сделано для того, чтобы я мог проверить, перетащил ли пользователь спрайт в нужное место.

1 ответ

По сути, вы должны добавить координаты @x и @y в класс Sprite и вызывать этот спрайт из своего оконного класса. Так это будет выглядеть примерно так:

class Player 
    attr_accessor :x, :y #this will allow you to both read x,y and write to (save) x, y
    def initialize x, y
        @tiles = Image.new(...) #load your images for your sprite
        @x = x
        @y = y
    end
    (...other methodds...)
end

затем в #update вашего класса GameWindow вы делаете что угодно с @x и @y, здесь:

class GameWindow < Gosu::Window
    def initialize
         ....window init code....
        @sprite = Player.new(width/2, height/2)
        ...other vars...
    end

    def update
        #this is where your game physics will go, and where you will store your x and y coords for the sprite 
        @sprite.y+= 1
        @sprite.x+= 1
    end

конец

Очевидно, что это приблизительное, чтобы дать вам представление. Не копируйте вставьте это непосредственно, потому что это не будет работать:P

Другие вопросы по тегам