rong-client 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/rong/client/window.rb +18 -9
- metadata +72 -10
data/lib/rong/client/window.rb
CHANGED
@@ -29,12 +29,11 @@ module Rong
|
|
29
29
|
super(WINDOW_WIDTH, WINDOW_HEIGHT, false)
|
30
30
|
self.caption = "Rong: Ruby Pong"
|
31
31
|
|
32
|
-
self.game = Rong::Elements::Game.new
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
self.winner_image = Gosu::Image.from_text(self, "#{winner.name} wins!", SCORE_FONT, SCORE_HEIGHT)
|
32
|
+
self.game = Rong::Elements::Game.new do |g|
|
33
|
+
g.on_score {|left, right| update_scores(left, right) }
|
34
|
+
g.on_hit { paddle_blip.play }
|
35
|
+
g.on_bounce { wall_blip.play }
|
36
|
+
g.on_win {|winner| create_winner_banner(winner) }
|
38
37
|
end
|
39
38
|
|
40
39
|
self.paddle_boxes = game.paddles.map {|p| DrawableElement.new(self, p) }
|
@@ -75,9 +74,7 @@ module Rong
|
|
75
74
|
draw_background
|
76
75
|
paddle_boxes.each {|p| p.draw }
|
77
76
|
ball_box.draw
|
78
|
-
if
|
79
|
-
winner_image.draw(WINDOW_CENTER_X - (winner_image.width / 2), WINDOW_CENTER_Y, Window::ZIndex::HUD)
|
80
|
-
end
|
77
|
+
draw_winner_banner if winner?
|
81
78
|
end
|
82
79
|
|
83
80
|
def draw_background
|
@@ -100,6 +97,18 @@ module Rong
|
|
100
97
|
right_score_image.draw(WINDOW_CENTER_X + SCORE_X_OFFSET, SCORE_Y_OFFSET, Window::ZIndex::BACKGROUND)
|
101
98
|
end
|
102
99
|
|
100
|
+
def create_winner_banner(winner)
|
101
|
+
self.winner_image = Gosu::Image.from_text(self, "#{winner.name} wins!", SCORE_FONT, SCORE_HEIGHT)
|
102
|
+
end
|
103
|
+
|
104
|
+
def draw_winner_banner
|
105
|
+
winner_image.draw(WINDOW_CENTER_X - (winner_image.width / 2), WINDOW_CENTER_Y, Window::ZIndex::HUD)
|
106
|
+
end
|
107
|
+
|
108
|
+
def winner?
|
109
|
+
winner_image
|
110
|
+
end
|
111
|
+
|
103
112
|
def update_scores(left_score, right_score)
|
104
113
|
left_score_text = left_score > 9 ? left_score.to_s : "0#{left_score}"
|
105
114
|
right_score_text = right_score > 9 ? right_score.to_s : "0#{right_score}"
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 2
|
8
|
-
-
|
9
|
-
version: 0.2.
|
8
|
+
- 4
|
9
|
+
version: 0.2.4
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Matt Yoho
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-
|
17
|
+
date: 2011-08-20 00:00:00 -05:00
|
18
18
|
default_executable: rong
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -43,8 +43,8 @@ dependencies:
|
|
43
43
|
segments:
|
44
44
|
- 0
|
45
45
|
- 2
|
46
|
-
-
|
47
|
-
version: 0.2.
|
46
|
+
- 2
|
47
|
+
version: 0.2.2
|
48
48
|
type: :runtime
|
49
49
|
version_requirements: *id002
|
50
50
|
- !ruby/object:Gem::Dependency
|
@@ -57,24 +57,86 @@ dependencies:
|
|
57
57
|
- !ruby/object:Gem::Version
|
58
58
|
segments:
|
59
59
|
- 2
|
60
|
-
-
|
60
|
+
- 6
|
61
61
|
- 0
|
62
|
-
version: 2.
|
62
|
+
version: 2.6.0
|
63
63
|
type: :development
|
64
64
|
version_requirements: *id003
|
65
65
|
- !ruby/object:Gem::Dependency
|
66
|
-
name:
|
66
|
+
name: guard
|
67
67
|
prerelease: false
|
68
68
|
requirement: &id004 !ruby/object:Gem::Requirement
|
69
69
|
none: false
|
70
70
|
requirements:
|
71
|
-
- -
|
71
|
+
- - ~>
|
72
72
|
- !ruby/object:Gem::Version
|
73
73
|
segments:
|
74
74
|
- 0
|
75
|
-
|
75
|
+
- 6
|
76
|
+
- 1
|
77
|
+
version: 0.6.1
|
76
78
|
type: :development
|
77
79
|
version_requirements: *id004
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: guard-rspec
|
82
|
+
prerelease: false
|
83
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ~>
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
segments:
|
89
|
+
- 0
|
90
|
+
- 4
|
91
|
+
- 2
|
92
|
+
version: 0.4.2
|
93
|
+
type: :development
|
94
|
+
version_requirements: *id005
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: rb-fsevent
|
97
|
+
prerelease: false
|
98
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
99
|
+
none: false
|
100
|
+
requirements:
|
101
|
+
- - ~>
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
segments:
|
104
|
+
- 0
|
105
|
+
- 4
|
106
|
+
- 3
|
107
|
+
version: 0.4.3
|
108
|
+
type: :development
|
109
|
+
version_requirements: *id006
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: growl
|
112
|
+
prerelease: false
|
113
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
114
|
+
none: false
|
115
|
+
requirements:
|
116
|
+
- - ~>
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
segments:
|
119
|
+
- 1
|
120
|
+
- 0
|
121
|
+
- 3
|
122
|
+
version: 1.0.3
|
123
|
+
type: :development
|
124
|
+
version_requirements: *id007
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: growl_notify
|
127
|
+
prerelease: false
|
128
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ~>
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
segments:
|
134
|
+
- 0
|
135
|
+
- 0
|
136
|
+
- 1
|
137
|
+
version: 0.0.1
|
138
|
+
type: :development
|
139
|
+
version_requirements: *id008
|
78
140
|
description: Rong-client is the catch-all Rong client package, and in the future will hopefully be replaced with platform-specifc implementations.
|
79
141
|
email: mby@mattyoho.com
|
80
142
|
executables:
|