Sha256: b06cf68c642bf02a61d5a119789d249ffa17636cc0b5edeac7d54be876b2e211
Contents?: true
Size: 665 Bytes
Versions: 1
Compression:
Stored size: 665 Bytes
Contents
require 'pbox2d' require 'forwardable' require_relative 'lib/custom_listener' require_relative 'lib/particle' require_relative 'lib/boundary' attr_reader :box2d, :particles, :wall Vect = Struct.new(:x, :y) def settings size 400, 400 end def setup sketch_title 'Collision Listening' @box2d = Box2D.new(self) box2d.create_world box2d.add_listener(CustomListener.new) @particles = [] @wall = Boundary.new(box2d, Vect.new(width / 2, height - 5), Vect.new(width, 10)) end def draw background(255) particles << Particle.new(self, rand(width), 20, rand(4..8)) if rand < 0.1 particles.each(&:display) particles.reject!(&:done) wall.display end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pbox2d-0.5.0-java | examples/collision_listening.rb |