diff options
Diffstat (limited to 'signatures.rb')
| -rw-r--r-- | signatures.rb | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/signatures.rb b/signatures.rb new file mode 100644 index 0000000..c11c048 --- /dev/null +++ b/signatures.rb @@ -0,0 +1,54 @@ +class ID + class <<self + @next_id = 0b0_010_000_000_000 + + def create_new_id(name) + temp = @next_id + @next_id *= 2 + define_singleton_method(name) do + temp + end + send(name) + end + + def renderable + 0b0_001 + end + + def sprite + 0b0_010 + end + + def label + 0b0_100 + end + + def player_control + 0b0_001_000 + end + + def map + 0b0_010_000 + end + + def interactable + 0b0_100_000 + end + + def collidable + 0b0_001_000_000 + end + + def overworld + 0b0_010_000_000 + end + + def indoor + 0b0_100_000_000 + end + + def battle + 0b0_001_000_000_000 + end + end +end |
