minigl 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 73063e68c52aec583e98389abe3d1334e8a33858
4
- data.tar.gz: 511d49a8cf23a537c0abf4ca2b35f5e290b11bc7
3
+ metadata.gz: 683014cfbecd482d631925ec45ee1326021e024a
4
+ data.tar.gz: ee579a15c9f2eaf33e5ebffd6349553299b5fdbd
5
5
  SHA512:
6
- metadata.gz: 28646ae5580a7df1b0a7488e2c227068c20c692614a385903040a16573451ebe891e1e222a5292db9fddac2a342a3bf398c10efb687584ef21781214953a95c4
7
- data.tar.gz: 8183695054e721eca9f52ccc4962348983a9e0964cafb430cffe3c2303377216ccc81383a43c035d76b70a70ac59bd48aa18b97a11c10af2e727ab4ce75beed5
6
+ metadata.gz: d3751ccd5c52458864578752a7f10a71db732e5ec0514a258e3cef6feece6e30df6d1563525a00ee4f2e4c1b017045eab0a9fb6818a48997c62a03f0b7ed914c
7
+ data.tar.gz: fda44bd25b989ffe54b2208f6883662c2baeeb8384d7453ecb6fa0edf8286d36020c81aa42bfd38d3998458617312b398fbe867147334041f0142026d3fcd162
data/README.md CHANGED
@@ -32,9 +32,9 @@ examples provided with the gem.
32
32
  * An auxiliary, tutorial-like documentation is under construction
33
33
  [here](https://github.com/victords/minigl/wiki/How-To).
34
34
 
35
- **Version 2.0.1**
35
+ **Version 2.0.2**
36
36
 
37
- * Adjustment in the ramp slip system. Parameterized the force applied by steep
38
- ramps (`G.ramp_slip_force`).
39
- * Adjustment in the methods that change the prefix and directories used by
40
- `Res`, allowing empty prefixes/directory names.
37
+ * Small adjustment in `GameWindow#clear`, changing the format of the color
38
+ parameter from AARRGGBB to RRGGBB (as the alpha would have no effect).
39
+ * Addition of the `flip` parameter to the `draw` method of `Sprite` and
40
+ `GameObject`.
@@ -83,20 +83,22 @@ module MiniGL
83
83
  # will be darkened, for example.
84
84
  # [angle] A rotation, in degrees, to be applied to the image, relative to
85
85
  # its center.
86
+ # [flip] Specify +:horiz+ to draw the image horizontally flipped or +:vert+
87
+ # to draw it vertically flipped.
86
88
  # [z_index] The z-order to draw the object. Objects with larger z-orders
87
89
  # will be drawn on top of the ones with smaller z-orders.
88
- def draw(map = nil, scale_x = 1, scale_y = 1, alpha = 0xff, color = 0xffffff, angle = nil, z_index = 0)
90
+ def draw(map = nil, scale_x = 1, scale_y = 1, alpha = 0xff, color = 0xffffff, angle = nil, flip = nil, z_index = 0)
89
91
  color = (alpha << 24) | color
90
- if map
91
- if angle
92
- @img[@img_index].draw_rot @x.round - map.cam.x, @y.round - map.cam.y, z_index, angle, 0.5, 0.5, scale_x, scale_y, color
93
- else
94
- @img[@img_index].draw @x.round - map.cam.x, @y.round - map.cam.y, z_index, scale_x, scale_y, color
95
- end
96
- elsif angle
97
- @img[@img_index].draw_rot @x.round, @y.round, z_index, angle, 0.5, 0.5, scale_x, scale_y, color
92
+ if angle
93
+ @img[@img_index].draw_rot @x.round - (map ? map.cam.x : 0) + (flip == :horiz ? scale_x * @img[0].width : 0),
94
+ @y.round - (map ? map.cam.y : 0) + (flip == :vert ? scale_y * @img[0].height : 0),
95
+ z_index, angle, 0.5, 0.5, (flip == :horiz ? -scale_x : scale_x),
96
+ (flip == :vert ? -scale_y : scale_y), color
98
97
  else
99
- @img[@img_index].draw @x.round, @y.round, z_index, scale_x, scale_y, color
98
+ @img[@img_index].draw @x.round - (map ? map.cam.x : 0) + (flip == :horiz ? scale_x * @img[0].width : 0),
99
+ @y.round - (map ? map.cam.y : 0) + (flip == :vert ? scale_y * @img[0].height : 0),
100
+ z_index, (flip == :horiz ? -scale_x : scale_x),
101
+ (flip == :vert ? -scale_y : scale_y), color
100
102
  end
101
103
  end
102
104
 
@@ -180,22 +182,22 @@ module MiniGL
180
182
  # will be darkened, for example.
181
183
  # [angle] A rotation, in degrees, to be applied to the image, relative to
182
184
  # its center.
185
+ # [flip] Specify +:horiz+ to draw the image horizontally flipped or +:vert+
186
+ # to draw it vertically flipped.
183
187
  # [z_index] The z-order to draw the object. Objects with larger z-orders
184
188
  # will be drawn on top of the ones with smaller z-orders.
185
- def draw(map = nil, scale_x = 1, scale_y = 1, alpha = 0xff, color = 0xffffff, angle = nil, z_index = 0)
189
+ def draw(map = nil, scale_x = 1, scale_y = 1, alpha = 0xff, color = 0xffffff, angle = nil, flip = nil, z_index = 0)
186
190
  color = (alpha << 24) | color
187
- if map
188
- if angle
189
- @img[@img_index].draw_rot @x.round + @img_gap.x - map.cam.x,
190
- @y.round + @img_gap.y - map.cam.y,
191
- z_index, angle, 0.5, 0.5, scale_x, scale_y, color
192
- else
193
- @img[@img_index].draw @x.round + @img_gap.x - map.cam.x, @y.round + @img_gap.y - map.cam.y, z_index, scale_x, scale_y, color
194
- end
195
- elsif angle
196
- @img[@img_index].draw_rot @x.round + @img_gap.x, @y.round + @img_gap.y, z_index, angle, 0.5, 0.5, scale_x, scale_y, color
191
+ if angle
192
+ @img[@img_index].draw_rot @x.round + (flip == :horiz ? -1 : 1) * @img_gap.x - (map ? map.cam.x : 0) + (flip == :horiz ? scale_x * @w : 0),
193
+ @y.round + (flip == :vert ? -1 : 1) * @img_gap.y - (map ? map.cam.y : 0) + (flip == :vert ? scale_y * @h : 0),
194
+ z_index, angle, 0.5, 0.5, (flip == :horiz ? -scale_x : scale_x),
195
+ (flip == :vert ? -scale_y : scale_y), color
197
196
  else
198
- @img[@img_index].draw @x.round + @img_gap.x, @y.round + @img_gap.y, z_index, scale_x, scale_y, color
197
+ @img[@img_index].draw @x.round + (flip == :horiz ? -1 : 1) * @img_gap.x - (map ? map.cam.x : 0) + (flip == :horiz ? scale_x * @w : 0),
198
+ @y.round + (flip == :vert ? -1 : 1) * @img_gap.y - (map ? map.cam.y : 0) + (flip == :vert ? scale_y * @h : 0),
199
+ z_index, (flip == :horiz ? -scale_x : scale_x),
200
+ (flip == :vert ? -scale_y : scale_y), color
199
201
  end
200
202
  end
201
203
 
data/lib/minigl/global.rb CHANGED
@@ -215,8 +215,9 @@ module MiniGL
215
215
  # Draws a rectangle with the size of the entire screen, in the given color.
216
216
  #
217
217
  # Parameters:
218
- # [color] Color of the rectangle to be drawn.
218
+ # [color] Color of the rectangle to be drawn, in hexadecimal RRGGBB format.
219
219
  def clear(color)
220
+ color |= 0xff000000
220
221
  draw_quad 0, 0, color,
221
222
  width, 0, color,
222
223
  width, height, color,
@@ -375,7 +376,7 @@ module MiniGL
375
376
 
376
377
  k1 = [Gosu::MsLeft, Gosu::MsMiddle, Gosu::MsRight]
377
378
  k2 = [:left, :middle, :right]
378
- for i in 0..2
379
+ (0..2).each do |i|
379
380
  if G.window.button_down? k1[i]
380
381
  @down[k2[i]] = true
381
382
  @dbl_click[k2[i]] = true if @dbl_click_timer[k2[i]]
data/test/game.rb CHANGED
@@ -7,6 +7,9 @@ class MyGame < GameWindow
7
7
 
8
8
  @obj1 = GameObject.new 10, 10, 80, 80, :img1, Vector.new(-10, -10)
9
9
  @obj2 = Sprite.new 400, 0, :img1
10
+ @obj3 = GameObject.new 4, 50, 24, 24, :check, Vector.new(-4, -4), 2, 4
11
+ @obj3.set_animation 1
12
+ @flip = nil
10
13
 
11
14
  @font1 = Res.font :font1, 20
12
15
  @font2 = Res.font :font1, 50
@@ -63,6 +66,10 @@ class MyGame < GameWindow
63
66
  @obj1.x = Mouse.x + 10
64
67
  @obj1.y = Mouse.y + 10
65
68
  end
69
+ if Mouse.button_released? :right
70
+ if @flip.nil?; @flip = :horiz
71
+ else; @flip = nil; end
72
+ end
66
73
 
67
74
  @btn.update
68
75
  @chk.update
@@ -73,10 +80,11 @@ class MyGame < GameWindow
73
80
  end
74
81
 
75
82
  def draw
76
- clear 0xffabcdef
83
+ clear 0xabcdef
77
84
 
78
85
  @obj1.draw nil, 1, 1, 255, 0x33ff33, 30, 1
79
- @obj2.draw nil, 0.6, 1.4, 0x99
86
+ @obj2.draw nil, 0.6, 1.4, 0x99, 0xffffff, nil, :vert
87
+ @obj3.draw nil, 1, 1, 255, 0xffffff, nil, @flip
80
88
  @writer1.write_line 'Testing effect 1', 400, 260, :center, 0xffffff, :border
81
89
  @writer2.write_line 'Second effect test', 400, 280, :center, 0xffffff, :border, 0xff0000, 2
82
90
  @writer2.write_line 'Text with shadow!!', 400, 340, :center, 0xffff00, :shadow, 0, 2, 0x80
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: minigl
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor David Santos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-07 00:00:00.000000000 Z
11
+ date: 2015-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gosu