Class: Reight::R8
- Inherits:
-
Object
- Object
- Reight::R8
- Defined in:
- lib/reight/reight.rb
Instance Attribute Summary collapse
-
#current ⇒ Object
Returns the value of attribute current.
Instance Method Summary collapse
- #apps ⇒ Object
- #control_change ⇒ Object
- #double_clicked ⇒ Object
- #draw ⇒ Object
- #edit? ⇒ Boolean
- #flash ⇒ Object
- #icons ⇒ Object
-
#initialize(path, edit: false) ⇒ R8
constructor
A new instance of R8.
- #key_pressed ⇒ Object
- #key_released ⇒ Object
- #key_typed ⇒ Object
- #mouse_clicked ⇒ Object
- #mouse_dragged ⇒ Object
- #mouse_moved ⇒ Object
- #mouse_pressed ⇒ Object
- #mouse_released ⇒ Object
- #mouse_wheel ⇒ Object
- #note_pressed ⇒ Object
- #note_released ⇒ Object
- #project ⇒ Object
- #setup ⇒ Object
- #touch_ended ⇒ Object
- #touch_moved ⇒ Object
- #touch_started ⇒ Object
- #window_moved ⇒ Object
- #window_resized ⇒ Object
Constructor Details
#initialize(path, edit: false) ⇒ R8
Returns a new instance of R8.
6 7 8 9 10 11 12 |
# File 'lib/reight/reight.rb', line 6 def initialize(path, edit: false) raise if $r8__ $r8__ = self @path, @edit = path, edit self.current = apps.first end |
Instance Attribute Details
#current ⇒ Object
Returns the value of attribute current.
14 15 16 |
# File 'lib/reight/reight.rb', line 14 def current @current end |
Instance Method Details
#apps ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/reight/reight.rb', line 22 def apps() @apps ||= [].tap {|a| a << Reight::Runner .new(project) a << Reight::SpriteEditor.new(project) if edit? a << Reight::MapEditor .new(project) if edit? a << Reight::SoundEditor .new(project) if edit? } end |
#control_change ⇒ Object
78 |
# File 'lib/reight/reight.rb', line 78 def control_change() = current.control_change |
#double_clicked ⇒ Object
71 |
# File 'lib/reight/reight.rb', line 71 def double_clicked() = current.double_clicked |
#draw ⇒ Object
62 |
# File 'lib/reight/reight.rb', line 62 def draw() = current.draw |
#edit? ⇒ Boolean
16 |
# File 'lib/reight/reight.rb', line 16 def edit? = @edit |
#flash ⇒ Object
31 |
# File 'lib/reight/reight.rb', line 31 def flash(...) = current.flash(...) |
#icons ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/reight/reight.rb', line 33 def icons() @icons ||= loadImage(File.('../../res/icons.png', __dir__)).tap do |img| transp = color '#FF77A8' img.load_pixels img.pixels.map! {|c| c == transp ? color(0, 0, 0, 0) : c} img.update_pixels end end |
#key_pressed ⇒ Object
63 |
# File 'lib/reight/reight.rb', line 63 def key_pressed() = current.key_pressed |
#key_released ⇒ Object
64 |
# File 'lib/reight/reight.rb', line 64 def key_released() = current.key_released |
#key_typed ⇒ Object
65 |
# File 'lib/reight/reight.rb', line 65 def key_typed() = current.key_typed |
#mouse_clicked ⇒ Object
70 |
# File 'lib/reight/reight.rb', line 70 def mouse_clicked() = current.mouse_clicked |
#mouse_dragged ⇒ Object
69 |
# File 'lib/reight/reight.rb', line 69 def mouse_dragged() = current.mouse_dragged |
#mouse_moved ⇒ Object
68 |
# File 'lib/reight/reight.rb', line 68 def mouse_moved() = current.mouse_moved |
#mouse_pressed ⇒ Object
66 |
# File 'lib/reight/reight.rb', line 66 def mouse_pressed() = current.mouse_pressed |
#mouse_released ⇒ Object
67 |
# File 'lib/reight/reight.rb', line 67 def mouse_released() = current.mouse_released |
#mouse_wheel ⇒ Object
72 |
# File 'lib/reight/reight.rb', line 72 def mouse_wheel() = current.mouse_wheel |
#note_pressed ⇒ Object
76 |
# File 'lib/reight/reight.rb', line 76 def note_pressed() = current.note_pressed |
#note_released ⇒ Object
77 |
# File 'lib/reight/reight.rb', line 77 def note_released() = current.note_released |
#project ⇒ Object
18 19 20 |
# File 'lib/reight/reight.rb', line 18 def project() @project ||= Reight::Project.new @path end |
#setup ⇒ Object
55 56 57 58 59 60 |
# File 'lib/reight/reight.rb', line 55 def setup() w, h = Reight::App::SCREEN_WIDTH, Reight::App::SCREEN_HEIGHT createCanvas w, h window_resize(*[w, h].map {_1 * 3}) text_font r8.project.font, r8.project.font_size end |
#touch_ended ⇒ Object
74 |
# File 'lib/reight/reight.rb', line 74 def touch_ended() = current.touch_ended |
#touch_moved ⇒ Object
75 |
# File 'lib/reight/reight.rb', line 75 def touch_moved() = current.touch_moved |
#touch_started ⇒ Object
73 |
# File 'lib/reight/reight.rb', line 73 def touch_started() = current.touch_started |
#window_moved ⇒ Object
79 |
# File 'lib/reight/reight.rb', line 79 def window_moved() = apps.each {_1.window_moved} |
#window_resized ⇒ Object
80 |
# File 'lib/reight/reight.rb', line 80 def window_resized() = apps.each {_1.window_resized} |