Sha256: 7d43640f0c6982f2efa87c7fbd0e214795c166795d8e1fbb722dd2ec2b2a913a
Contents?: true
Size: 1.92 KB
Versions: 3
Compression:
Stored size: 1.92 KB
Contents
require 'gosu' require_relative '../lib/minigl' include MiniGL class MyGame < GameWindow def initialize super 800, 600, false @obj = GameObject.new(0, 0, 50, 50, :square) # @obj.max_speed.x = 3 @obsts = [ Block.new(0, 600, 800, 1, false), Block.new(-1, 0, 1, 600, false), Block.new(800, 0, 1, 600, false), # Block.new(375, 550, 50, 50, true), # Block.new(150, 200, 20, 300, false), # Block.new(220, 300, 100, 20, true), # Block.new(485, 490, 127, 10, false), ] @ramps = [ Ramp.new(200, 550, 200, 50, true), Ramp.new(0, 200, 150, 300, false), Ramp.new(150, 500, 150, 100, false), Ramp.new(500, 500, 150, 100, true), Ramp.new(650, 300, 150, 200, true), # Ramp.new(650, 500, 150, 100, true), ] @cyc_obj = GameObject.new(0, 0, 50, 50, :square) @cycle = [Vector.new(0, 0), Vector.new(430, 107), Vector.new(265, 324)] end def update KB.update forces = Vector.new(0, 0) if @obj.bottom forces.y -= 15 if KB.key_pressed?(Gosu::KbSpace) if KB.key_down?(Gosu::KbLeft) forces.x -= 0.5 end if KB.key_down?(Gosu::KbRight) forces.x += 0.5 end forces.x -= @obj.speed.x * 0.1 else forces.x -= 0.2 if KB.key_down?(Gosu::KbLeft) forces.x += 0.2 if KB.key_down?(Gosu::KbRight) end @obj.move(forces, @obsts, @ramps) # puts @obj.x @cyc_obj.cycle(@cycle, 5, [@obj]) # puts @obj.bottom end def draw @obj.draw @cyc_obj.draw @obsts.each do |o| draw_quad o.x, o.y, 0xffffffff, o.x + o.w, o.y, 0xffffffff, o.x + o.w, o.y + o.h, 0xffffffff, o.x, o.y + o.h, 0xffffffff, 0 end @ramps.each do |r| draw_triangle r.left ? r.x + r.w : r.x, r.y, 0xffffffff, r.x + r.w, r.y + r.h, 0xffffffff, r.x, r.y + r.h, 0xffffffff, 0 end end end MyGame.new.show
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
minigl-2.0.3 | test/mov_game.rb |
minigl-2.0.2 | test/mov_game.rb |
minigl-2.0.1 | test/mov_game.rb |