rubink 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ab222808a604806de4c3121da1aaa7b656a375eb
4
+ data.tar.gz: 9feb03d85db892bc70b6809f013840808d33374d
5
+ SHA512:
6
+ metadata.gz: bbfb75566934503d6a78d771fc0be7e7a23bfd5b6e8ae5b74a72af2aca78937032b659ddb090db5ff819b192a2f4a66f6e563fccf1caa5fa5f73972b5ce96894
7
+ data.tar.gz: e25d8d93bf9c7415e274af3710821b29301748af21a737f96e05191d8ad08eb9b5ad83d725cd004444f61fdf53a45decc24d97fe78d86be0434064012f1538ab
data/bin/rubink ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # load "lib/rubink.rb"
4
+ require "rubink"
5
+ Rubink.run
data/lib/app.rb ADDED
@@ -0,0 +1,91 @@
1
+ ####################################
2
+ # Author: Peter Lamber
3
+ # Rubink (Ruby Ink)
4
+ # Made with Opal and Processing
5
+ ####################################
6
+
7
+ require 'opal'
8
+ require 'native'
9
+
10
+
11
+ module Common
12
+ def ink_setup
13
+ $window = Native(`window`) # Get Page Window
14
+ $p = $window.p #Set global Processing hook
15
+
16
+ end
17
+
18
+ def alert(message)
19
+ $window.alert(message)
20
+ end
21
+
22
+ def black
23
+ $p.background(1)
24
+ end
25
+
26
+ # Check if point is over given rectangle
27
+ def over?(x,y,l,h)
28
+ true if $p.mouseX >= x &&
29
+ $p.mouseX <= l+x &&
30
+ $p.mouseY >= y &&
31
+ $p.mouseY <= h+y
32
+ end
33
+
34
+ end
35
+
36
+
37
+ class Rubink
38
+ include Common
39
+ attr_accessor :p, :window, :dragX, :dragY, :sprites
40
+ def initialize
41
+ ink_setup
42
+ @p = $p
43
+ @window = $window
44
+ @sprites = []
45
+ @m = 0
46
+ @sprite = 0
47
+ end
48
+
49
+
50
+ def renderSprite(milisec, x, y, w, h)
51
+ @p.image(@sprites[@sprite],x,y,w,h)
52
+ @sprite += 1 if passMili?(milisec)
53
+ @sprite = 0 if @sprites.length == @sprite
54
+ end
55
+
56
+ def pushSprite(sprite)
57
+ @sprites.push(@p.loadImage(sprite))
58
+ end
59
+
60
+ def drag(x,y)
61
+ @dragX,@dragY = x,y
62
+ end
63
+
64
+ def passMili?(time)
65
+ @m = @p.millis if @m == 0
66
+ @m2 = @p.millis
67
+ @m3 = @m2 - @m
68
+ if @m3 >= time
69
+ @m,@m2 = 0,0
70
+ return true
71
+ else
72
+ return false
73
+ end
74
+ end
75
+
76
+ def mousePressed
77
+ end
78
+
79
+ def mouseReleased
80
+ end
81
+
82
+ def mouseClicked
83
+ end
84
+
85
+ def mouseMoved
86
+ end
87
+
88
+ def keyPressed
89
+ end
90
+ end
91
+