summaryrefslogtreecommitdiffhomepage
path: root/app/lib/helpers/01_component.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/lib/helpers/01_component.rb')
-rw-r--r--app/lib/helpers/01_component.rb76
1 files changed, 0 insertions, 76 deletions
diff --git a/app/lib/helpers/01_component.rb b/app/lib/helpers/01_component.rb
deleted file mode 100644
index 4937ec9..0000000
--- a/app/lib/helpers/01_component.rb
+++ /dev/null
@@ -1,76 +0,0 @@
-class Helper
- class BaseComponent
- class <<self
- def id
- @id ||= ID.send(Helper::ComponentHelper.underscore(ancestors[0].name.split('::').last))
- end
-
- def data
- @data ||= {}
- end
-
- def add(entity_id)
- data[entity_id] = new
- end
-
- def delete(entity_id)
- data.delete entity_id
- end
- end
- end
-
- class Level < Helper::BaseComponent
- class <<self
- def data
- @data ||= { add: [], remove: [], grid: Helper::Array2D.new }
- end
-
- def add(entity_id)
- super
- data[:add].push entity_id
- end
-
- def remove(entity_id)
- data[:remove].push entity_id
- super
- end
- end
- end
-
- class Array2D < Array
- def [](val)
- unless val.nil?
- return self[val] = [] if super.nil?
- end
- super
- end
- end
-
-
- module ComponentHelper
- class <<self
- def up? char
- char == char.upcase
- end
-
- def down? char
- char == char.downcase
- end
-
- def underscore(input)
- output = input[0].downcase
- (1...(input.length - 1)).each do |iter|
- if down?(input[iter]) && up?(input[iter + 1])
- output += "#{input[iter].downcase}_"
- elsif up?(input[iter - 1]) && up?(input[iter]) && down?(input[iter + 1])
- output += "_#{input[iter].downcase}"
- else
- output += input[iter].downcase
- end
- end
- output += input[-1].downcase unless input.length == 1
- output
- end
- end
- end
-end