Module Joyau::TypedCollision
In: ruby/site_ruby/joyau/typed_collision.rb

This mixin allows to use Joyau’s CollisionType class in yours.

Methods

collide  

Attributes

collision_type  [W] 

Public Instance methods

[Source]

# File ruby/site_ruby/joyau/typed_collision.rb, line 18
    def collide(obj)
      if @collision_type.content
        DrawableRect rect(x, y, w, h)
        return rect.collide(obj)
      end

      line = Line.new
      if @collision_type.right
        line.setPos(x + w, y)
        line.setPoint(x + w, y + h)
        return true if line.collide(obj)
      end

      if @collision_type.left
        line.setPos(x, y)
        line.setPoint(x, y + h)
        return true if line.collide(obj)
      end

      if @collision_type.up
        line.setPos(x, y)
        line.setPoint(x + w, y)
        return true if line.collide(obj)
      end
       
      if @collision_type.down
        line.setPos(x, y + h)
        line.setPoint(x + w, y + h)
        return true if line.collide(obj)
      end

      return false
    end

[Validate]