class Rubink
Attributes
dragX[RW]
dragY[RW]
p[RW]
sprites[RW]
window[RW]
Public Class Methods
build(script)
click to toggle source
# File lib/rubink.rb, line 25 def build(script) @script = script return if invalid @app_name = File.basename(script,"rb") root = File.expand_path '../..', __FILE__ Opal.append_path "." Opal.append_path root+"/lib" src = "" #Adding Libraries first src << IO.binread(root+"/lib/processing.js") src << IO.binread(root+"/lib/hammer.js") #Compile Rubink, script and wire it up src << Opal::Builder.build("app").to_s src << Opal::Builder.build(script).to_s src << Opal::Builder.build("start").to_s File.binwrite "app_#{@app_name}js", src File.binwrite "main_#{@app_name}html", main_html_template puts "main_#{@app_name}html was generated" end
invalid()
click to toggle source
# File lib/rubink.rb, line 53 def invalid if @script.nil? puts "Stopping, no script given, provide script path" return true end unless File.exist?(@script) puts "Stopping, invalid filename" return true end end
main_html_template()
click to toggle source
# File lib/rubink.rb, line 65 def main_html_template "<meta charset='utf-8'> <canvas style='outline:none' id='canvas'></canvas> <script src='app_#{@app_name}js'></script>" end
new()
click to toggle source
# File lib/app.rb, line 40 def initialize ink_setup @p = $p @window = $window @sprites = [] @m = 0 @sprite = 0 end
run()
click to toggle source
# File lib/rubink.rb, line 69 def run opal_v = %x( opal -v ) if opal_v puts "Rubink is working on it" build(ARGV[0]) else puts "Stopping, Opal not found. Please first run:" puts "gem insall opal" end end
Public Instance Methods
drag(x,y)
click to toggle source
# File lib/app.rb, line 60 def drag(x,y) @dragX,@dragY = x,y end
keyPressed()
click to toggle source
# File lib/app.rb, line 88 def keyPressed end
mouseClicked()
click to toggle source
# File lib/app.rb, line 82 def mouseClicked end
mouseMoved()
click to toggle source
# File lib/app.rb, line 85 def mouseMoved end
mousePressed()
click to toggle source
# File lib/app.rb, line 76 def mousePressed end
mouseReleased()
click to toggle source
# File lib/app.rb, line 79 def mouseReleased end
passMili?(time)
click to toggle source
# File lib/app.rb, line 64 def passMili?(time) @m = @p.millis if @m == 0 @m2 = @p.millis @m3 = @m2 - @m if @m3 >= time @m,@m2 = 0,0 return true else return false end end
pushSprite(sprite)
click to toggle source
# File lib/app.rb, line 56 def pushSprite(sprite) @sprites.push(@p.loadImage(sprite)) end
renderSprite(milisec, x, y, w, h)
click to toggle source
# File lib/app.rb, line 50 def renderSprite(milisec, x, y, w, h) @p.image(@sprites[@sprite],x,y,w,h) @sprite += 1 if passMili?(milisec) @sprite = 0 if @sprites.length == @sprite end