Class: Bomp::ColliderSystem

Inherits:
Object
  • Object
show all
Defined in:
lib/bomp.rb

Direct Known Subclasses

Lineal, QuadTree

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeColliderSystem

Create collision system



12
13
14
# File 'lib/bomp.rb', line 12

def initialize
  @items = []
end

Instance Attribute Details

#itemsObject (readonly)

Returns the value of attribute items.



9
10
11
# File 'lib/bomp.rb', line 9

def items
  @items
end

Instance Method Details

#add(item) ⇒ Object

Parameters:

  • item (Rect)

    Add item



17
18
19
# File 'lib/bomp.rb', line 17

def add(item)
  @items.push item unless @items.include? item
end

#clear!Object

Clean



32
33
34
# File 'lib/bomp.rb', line 32

def clear!
  @items&.clear
end

#reload!Object

Reload

Raises:

  • (NotImplementedError)


37
38
39
# File 'lib/bomp.rb', line 37

def reload!
  raise NotImplementedError.new
end

#remove(item) ⇒ Object

Parameters:

  • item (Rect)

    Remove item



22
23
24
# File 'lib/bomp.rb', line 22

def remove(item)
  @items -= [item]
end

#restart!Object

Restart

Raises:

  • (NotImplementedError)


42
43
44
# File 'lib/bomp.rb', line 42

def restart!
  raise NotImplementedError.new
end

#sort(group = nil, reload = true) ⇒ Object

Sort all items

Raises:

  • (NotImplementedError)


27
28
29
# File 'lib/bomp.rb', line 27

def sort(group = nil, reload = true)
  raise NotImplementedError.new
end

#to_aArray

Cast to array

Returns:

  • (Array)


48
49
50
# File 'lib/bomp.rb', line 48

def to_a
  self.sort
end