diff options
| author | realtradam <[email protected]> | 2021-05-26 01:24:30 -0400 |
|---|---|---|
| committer | realtradam <[email protected]> | 2021-05-26 01:24:30 -0400 |
| commit | 7bec71db2680e0503f39c31047f5f90ca89433df (patch) | |
| tree | 4d987b479b0670256af5c1a4ffe5ab7b75fb23b4 /signatures.rb | |
| download | FelECS-7bec71db2680e0503f39c31047f5f90ca89433df.tar.gz FelECS-7bec71db2680e0503f39c31047f5f90ca89433df.zip | |
init
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 |
