ippa-chingu 0.5 → 0.5.1
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/Manifest.txt +69 -0
- data/benchmarks/README.txt +1 -0
- data/benchmarks/benchmark.rb +6 -0
- data/benchmarks/benchmark3.rb +23 -0
- data/benchmarks/benchmark4.rb +71 -0
- data/benchmarks/meta_benchmark.rb +67 -0
- data/benchmarks/meta_benchmark2.rb +39 -0
- data/chingu.gemspec +3 -3
- data/games/triangle_wars/NOT_DONE_YET.txt +1 -0
- data/games/triangle_wars/media/1up.png +0 -0
- data/games/triangle_wars/media/33487__CosmicD__006.wav +0 -0
- data/games/triangle_wars/media/Thumbs.db +0 -0
- data/games/triangle_wars/media/autofire.png +0 -0
- data/games/triangle_wars/media/backgrounds/GPN-2000-000933.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/Thumbs.db +0 -0
- data/games/triangle_wars/media/backgrounds/background10.png +0 -0
- data/games/triangle_wars/media/backgrounds/background10.svg +94 -0
- data/games/triangle_wars/media/backgrounds/background2.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/background2.png +0 -0
- data/games/triangle_wars/media/backgrounds/hubble_deep_field.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/hubble_deep_field.png +0 -0
- data/games/triangle_wars/media/backgrounds/intro_bg.png +0 -0
- data/games/triangle_wars/media/backgrounds/star_4.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/star_5.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/star_6.jpg +0 -0
- data/games/triangle_wars/media/backgrounds/supernova_1.jpg +0 -0
- data/games/triangle_wars/media/bigbomb.png +0 -0
- data/games/triangle_wars/media/bullets.svg +223 -0
- data/games/triangle_wars/media/enemy.png +0 -0
- data/games/triangle_wars/media/enemy.svg +194 -0
- data/games/triangle_wars/media/enemy_dying.png +0 -0
- data/games/triangle_wars/media/enemy_small.svg +195 -0
- data/games/triangle_wars/media/explosion.wav +0 -0
- data/games/triangle_wars/media/hit.wav +0 -0
- data/games/triangle_wars/media/hit2.wav +0 -0
- data/games/triangle_wars/media/hit3.wav +0 -0
- data/games/triangle_wars/media/laser.png +0 -0
- data/games/triangle_wars/media/laser.svg +166 -0
- data/games/triangle_wars/media/laser_up.png +0 -0
- data/games/triangle_wars/media/plasma.png +0 -0
- data/games/triangle_wars/media/plasma.wav +0 -0
- data/games/triangle_wars/media/plasma_up.png +0 -0
- data/games/triangle_wars/media/powerup_bg.png +0 -0
- data/games/triangle_wars/media/powerups.svg +885 -0
- data/games/triangle_wars/media/rocket_up.png +0 -0
- data/games/triangle_wars/media/spaceship.png +0 -0
- data/games/triangle_wars/media/spaceship.svg +318 -0
- data/games/triangle_wars/media/triangle_logo.svg +335 -0
- data/games/triangle_wars/media/triangle_wars.png +0 -0
- data/games/triangle_wars/media/triangle_wars_intro.mp3 +0 -0
- data/games/triangle_wars/media/triangle_wars_intro.ogg +0 -0
- data/games/triangle_wars/src/enemy.rb +117 -0
- data/games/triangle_wars/src/game_over_state.rb +18 -0
- data/games/triangle_wars/src/level_state.rb +114 -0
- data/games/triangle_wars/src/menu_state.rb +67 -0
- data/games/triangle_wars/src/my_game_object.rb +46 -0
- data/games/triangle_wars/src/pause_state.rb +16 -0
- data/games/triangle_wars/src/player.rb +136 -0
- data/games/triangle_wars/src/power_up.rb +67 -0
- data/games/triangle_wars/triangle_wars.rb +69 -0
- data/lib/chingu.rb +2 -2
- data/lib/chingu/actor.rb +8 -8
- data/lib/chingu/animation.rb +2 -2
- data/lib/chingu/basic_game_object.rb +36 -29
- data/lib/chingu/particle.rb +5 -8
- data/lib/chingu/traits/collision_detection.rb +1 -1
- data/lib/chingu/traits/deprecated_module_visual.rb +1 -1
- data/lib/chingu/traits/deprecated_visual.rb +1 -1
- data/lib/chingu/traits/effect.rb +1 -1
- data/lib/chingu/traits/input.rb +1 -1
- data/lib/chingu/traits/velocity.rb +1 -1
- metadata +62 -3
data/Manifest.txt
CHANGED
@@ -2,6 +2,12 @@ History.txt
|
|
2
2
|
Manifest.txt
|
3
3
|
README.rdoc
|
4
4
|
Rakefile
|
5
|
+
benchmarks/README.txt
|
6
|
+
benchmarks/benchmark.rb
|
7
|
+
benchmarks/benchmark3.rb
|
8
|
+
benchmarks/benchmark4.rb
|
9
|
+
benchmarks/meta_benchmark.rb
|
10
|
+
benchmarks/meta_benchmark2.rb
|
5
11
|
chingu.gemspec
|
6
12
|
examples/example1.rb
|
7
13
|
examples/example2.rb
|
@@ -10,6 +16,8 @@ examples/example4.rb
|
|
10
16
|
examples/example5.rb
|
11
17
|
examples/example6.rb
|
12
18
|
examples/example7.rb
|
19
|
+
examples/example8.rb
|
20
|
+
examples/example9.rb
|
13
21
|
examples/media/Parallax-scroll-example-layer-0.png
|
14
22
|
examples/media/Parallax-scroll-example-layer-1.png
|
15
23
|
examples/media/Parallax-scroll-example-layer-2.png
|
@@ -23,15 +31,70 @@ examples/media/spaceship.png
|
|
23
31
|
examples/media/stickfigure.bmp
|
24
32
|
examples/media/stickfigure.png
|
25
33
|
examples/media/video_games.png
|
34
|
+
games/triangle_wars/NOT_DONE_YET.txt
|
35
|
+
games/triangle_wars/media/1up.png
|
36
|
+
games/triangle_wars/media/33487__CosmicD__006.wav
|
37
|
+
games/triangle_wars/media/Thumbs.db
|
38
|
+
games/triangle_wars/media/autofire.png
|
39
|
+
games/triangle_wars/media/backgrounds/GPN-2000-000933.jpg
|
40
|
+
games/triangle_wars/media/backgrounds/Thumbs.db
|
41
|
+
games/triangle_wars/media/backgrounds/background10.png
|
42
|
+
games/triangle_wars/media/backgrounds/background10.svg
|
43
|
+
games/triangle_wars/media/backgrounds/background2.jpg
|
44
|
+
games/triangle_wars/media/backgrounds/background2.png
|
45
|
+
games/triangle_wars/media/backgrounds/hubble_deep_field.jpg
|
46
|
+
games/triangle_wars/media/backgrounds/hubble_deep_field.png
|
47
|
+
games/triangle_wars/media/backgrounds/intro_bg.png
|
48
|
+
games/triangle_wars/media/backgrounds/star_4.jpg
|
49
|
+
games/triangle_wars/media/backgrounds/star_5.jpg
|
50
|
+
games/triangle_wars/media/backgrounds/star_6.jpg
|
51
|
+
games/triangle_wars/media/backgrounds/supernova_1.jpg
|
52
|
+
games/triangle_wars/media/bigbomb.png
|
53
|
+
games/triangle_wars/media/bullets.svg
|
54
|
+
games/triangle_wars/media/enemy.png
|
55
|
+
games/triangle_wars/media/enemy.svg
|
56
|
+
games/triangle_wars/media/enemy_dying.png
|
57
|
+
games/triangle_wars/media/enemy_small.svg
|
58
|
+
games/triangle_wars/media/explosion.wav
|
59
|
+
games/triangle_wars/media/hit.wav
|
60
|
+
games/triangle_wars/media/hit2.wav
|
61
|
+
games/triangle_wars/media/hit3.wav
|
62
|
+
games/triangle_wars/media/laser.png
|
63
|
+
games/triangle_wars/media/laser.svg
|
64
|
+
games/triangle_wars/media/laser_up.png
|
65
|
+
games/triangle_wars/media/plasma.png
|
66
|
+
games/triangle_wars/media/plasma.wav
|
67
|
+
games/triangle_wars/media/plasma_up.png
|
68
|
+
games/triangle_wars/media/powerup_bg.png
|
69
|
+
games/triangle_wars/media/powerups.svg
|
70
|
+
games/triangle_wars/media/rocket_up.png
|
71
|
+
games/triangle_wars/media/spaceship.png
|
72
|
+
games/triangle_wars/media/spaceship.svg
|
73
|
+
games/triangle_wars/media/triangle_logo.svg
|
74
|
+
games/triangle_wars/media/triangle_wars.png
|
75
|
+
games/triangle_wars/media/triangle_wars_intro.mp3
|
76
|
+
games/triangle_wars/media/triangle_wars_intro.ogg
|
77
|
+
games/triangle_wars/src/enemy.rb
|
78
|
+
games/triangle_wars/src/game_over_state.rb
|
79
|
+
games/triangle_wars/src/level_state.rb
|
80
|
+
games/triangle_wars/src/menu_state.rb
|
81
|
+
games/triangle_wars/src/my_game_object.rb
|
82
|
+
games/triangle_wars/src/pause_state.rb
|
83
|
+
games/triangle_wars/src/player.rb
|
84
|
+
games/triangle_wars/src/power_up.rb
|
85
|
+
games/triangle_wars/triangle_wars.rb
|
26
86
|
lib/chingu.rb
|
87
|
+
lib/chingu/actor.rb
|
27
88
|
lib/chingu/animation.rb
|
28
89
|
lib/chingu/assets.rb
|
90
|
+
lib/chingu/basic_game_object.rb
|
29
91
|
lib/chingu/core_extensions.rb
|
30
92
|
lib/chingu/effects.rb
|
31
93
|
lib/chingu/fpscounter.rb
|
32
94
|
lib/chingu/game_object.rb
|
33
95
|
lib/chingu/game_state.rb
|
34
96
|
lib/chingu/game_state_manager.rb
|
97
|
+
lib/chingu/game_states/debug.rb
|
35
98
|
lib/chingu/game_states/fade_to.rb
|
36
99
|
lib/chingu/game_states/pause.rb
|
37
100
|
lib/chingu/gfx_helpers.rb
|
@@ -42,4 +105,10 @@ lib/chingu/parallax.rb
|
|
42
105
|
lib/chingu/particle.rb
|
43
106
|
lib/chingu/rect.rb
|
44
107
|
lib/chingu/text.rb
|
108
|
+
lib/chingu/traits/collision_detection.rb
|
109
|
+
lib/chingu/traits/deprecated_module_visual.rb
|
110
|
+
lib/chingu/traits/deprecated_visual.rb
|
111
|
+
lib/chingu/traits/effect.rb
|
112
|
+
lib/chingu/traits/input.rb
|
113
|
+
lib/chingu/traits/velocity.rb
|
45
114
|
lib/chingu/window.rb
|
@@ -0,0 +1 @@
|
|
1
|
+
Various chingu / gamedev related benchmark tests.. pretty sloppy but answers some questions.
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'benchmark'
|
2
|
+
|
3
|
+
class A
|
4
|
+
attr_reader :variable
|
5
|
+
def initialize
|
6
|
+
@variable = "hello"
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
a = A.new
|
11
|
+
# number of iterations
|
12
|
+
n = 1000000
|
13
|
+
|
14
|
+
Benchmark.bm(22) do |x|
|
15
|
+
x.report('getter') do
|
16
|
+
for i in 1..n; a.variable; end
|
17
|
+
end
|
18
|
+
|
19
|
+
x.report('direct access') do
|
20
|
+
@variable = "hello"
|
21
|
+
for i in 1..n; @variable; end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'benchmark'
|
2
|
+
require 'rubygems'
|
3
|
+
require 'randomr'
|
4
|
+
|
5
|
+
a = Array.new
|
6
|
+
n = 1000000
|
7
|
+
Benchmark.bm(22) do |x|
|
8
|
+
x.report('is_a?') do
|
9
|
+
n.times do
|
10
|
+
a.is_a?(Array)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
x.report('kind_of?') do
|
15
|
+
n.times do
|
16
|
+
a.kind_of?(Array)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
x.report('respond_to?') do
|
21
|
+
n.times do
|
22
|
+
a.respond_to?(:size)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
arr = [:a, :b, :c]
|
30
|
+
n = 1000000
|
31
|
+
Benchmark.bm(22) do |x|
|
32
|
+
x.report('arr.each') do
|
33
|
+
n.times do
|
34
|
+
arr.each { |item| item; }
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
x.report('for item in arr') do
|
39
|
+
n.times do
|
40
|
+
for item in arr; item; end;
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
n = 1000000
|
47
|
+
Benchmark.bm(22) do |x|
|
48
|
+
x.report('randomr(100)') do
|
49
|
+
for i in 1..n; Randomr.randomr; end
|
50
|
+
end
|
51
|
+
|
52
|
+
x.report('rand(100)') do
|
53
|
+
for i in 1..n; rand(100); end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
|
58
|
+
n = 1000000
|
59
|
+
Benchmark.bm(12) do |test|
|
60
|
+
test.report("normal:") do
|
61
|
+
n.times do |x|
|
62
|
+
y = x + 1
|
63
|
+
end
|
64
|
+
end
|
65
|
+
test.report("predefine:") do
|
66
|
+
x = y = 0
|
67
|
+
n.times do |x|
|
68
|
+
y = x + 1
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require 'benchmark'
|
2
|
+
|
3
|
+
class A; def meth1; true; end; end
|
4
|
+
|
5
|
+
# defining using eval/class/instance
|
6
|
+
str = "def meth2; true; end"
|
7
|
+
a_binding = A.send(:binding)
|
8
|
+
|
9
|
+
# proc for class/instance
|
10
|
+
proc1 = Proc.new { def meth2; true; end }
|
11
|
+
|
12
|
+
# proc for define_method
|
13
|
+
$proc2 = Proc.new { true }
|
14
|
+
|
15
|
+
# unbound method for bind
|
16
|
+
um = A.instance_method(:meth1)
|
17
|
+
|
18
|
+
# number of iterations
|
19
|
+
n = 12000 * 600
|
20
|
+
n = 12000
|
21
|
+
|
22
|
+
Benchmark.bm(22) do |x|
|
23
|
+
|
24
|
+
x.report('instance_eval/str') do
|
25
|
+
for i in 1..n; A.instance_eval(str); end
|
26
|
+
end
|
27
|
+
|
28
|
+
x.report('class_eval/str') do
|
29
|
+
for i in 1..n; A.class_eval(str); end
|
30
|
+
end
|
31
|
+
|
32
|
+
x.report('eval/str') do
|
33
|
+
for i in 1..n; eval(str, a_binding); end
|
34
|
+
end
|
35
|
+
|
36
|
+
x.report('define_method/class') do
|
37
|
+
for i in 1..n; class A; define_method(:meth2, &$proc2); end; end
|
38
|
+
end
|
39
|
+
|
40
|
+
x.report('define_method/send') do
|
41
|
+
for i in 1..n; A.send(:define_method, :meth2, &$proc2); end
|
42
|
+
end
|
43
|
+
|
44
|
+
x.report('def/unbind/bind') do
|
45
|
+
for i in 1..n
|
46
|
+
class A; def meth2; true; end; end
|
47
|
+
A.instance_method(:meth2).bind(A.new)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
x.report('instance_eval/proc') do
|
52
|
+
for i in 1..n; A.instance_eval(&proc1); end
|
53
|
+
end
|
54
|
+
|
55
|
+
x.report('class_eval/proc') do
|
56
|
+
for i in 1..n; A.class_eval(&proc1); end
|
57
|
+
end
|
58
|
+
|
59
|
+
x.report('def') do
|
60
|
+
for i in 1..n; class A; def meth2; true; end; end; end
|
61
|
+
end
|
62
|
+
|
63
|
+
x.report('method/bind') do
|
64
|
+
for i in 1..n; um.bind(A.new); end
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'benchmark'
|
2
|
+
|
3
|
+
class A; def meth1; true; end; end
|
4
|
+
|
5
|
+
# defining using eval/class/instance
|
6
|
+
str = "@var = 1"
|
7
|
+
a_binding = A.send(:binding)
|
8
|
+
|
9
|
+
# proc for class/instance
|
10
|
+
proc1 = Proc.new { def meth2; true; end }
|
11
|
+
|
12
|
+
# proc for define_method
|
13
|
+
$proc2 = Proc.new { true }
|
14
|
+
|
15
|
+
# unbound method for bind
|
16
|
+
um = A.instance_method(:meth1)
|
17
|
+
|
18
|
+
# number of iterations
|
19
|
+
n = 5 * 60 * 10
|
20
|
+
|
21
|
+
Benchmark.bm(22) do |x|
|
22
|
+
|
23
|
+
x.report('straight set') do
|
24
|
+
for i in 1..n; @var = 1; end
|
25
|
+
end
|
26
|
+
|
27
|
+
x.report('instance_eval/str') do
|
28
|
+
for i in 1..n; A.instance_eval(str); end
|
29
|
+
end
|
30
|
+
|
31
|
+
x.report('class_eval/str') do
|
32
|
+
for i in 1..n; A.class_eval(str); end
|
33
|
+
end
|
34
|
+
|
35
|
+
x.report('eval/str') do
|
36
|
+
for i in 1..n; eval(str, a_binding); end
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
data/chingu.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{chingu}
|
5
|
-
s.version = "0.5"
|
5
|
+
s.version = "0.5.1"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["ippa"]
|
@@ -10,8 +10,8 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.description = %q{Game framework built on top of the OpenGL accelerated game lib Gosu.
|
11
11
|
It adds simple yet powerful game states, prettier input handling, deployment safe asset-handling, a basic re-usable game object and automation of common task.}
|
12
12
|
s.email = ["ippa@rubylicio.us"]
|
13
|
-
s.extra_rdoc_files = ["History.txt", "Manifest.txt"]
|
14
|
-
s.files = ["History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "chingu.gemspec", "examples/example1.rb", "examples/example2.rb", "examples/example3.rb", "examples/example4.rb", "examples/example5.rb", "examples/example6.rb", "examples/example7.rb", "examples/example8.rb", "examples/example9.rb", "examples/media/Parallax-scroll-example-layer-0.png", "examples/media/Parallax-scroll-example-layer-1.png", "examples/media/Parallax-scroll-example-layer-2.png", "examples/media/Parallax-scroll-example-layer-3.png", "examples/media/background1.png", "examples/media/fire_bullet.png", "examples/media/fireball.png", "examples/media/particle.png", "examples/media/ruby.png", "examples/media/spaceship.png", "examples/media/stickfigure.bmp", "examples/media/stickfigure.png", "examples/media/video_games.png", "lib/chingu.rb", "lib/chingu/actor.rb", "lib/chingu/animation.rb", "lib/chingu/assets.rb", "lib/chingu/basic_game_object.rb", "lib/chingu/core_extensions.rb", "lib/chingu/effects.rb", "lib/chingu/fpscounter.rb", "lib/chingu/game_object.rb", "lib/chingu/game_state.rb", "lib/chingu/game_state_manager.rb", "lib/chingu/game_states/debug.rb", "lib/chingu/game_states/fade_to.rb", "lib/chingu/game_states/pause.rb", "lib/chingu/gfx_helpers.rb", "lib/chingu/helpers.rb", "lib/chingu/input.rb", "lib/chingu/named_resource.rb", "lib/chingu/parallax.rb", "lib/chingu/particle.rb", "lib/chingu/rect.rb", "lib/chingu/text.rb", "lib/chingu/traits/collision_detection.rb", "lib/chingu/traits/deprecated_module_visual.rb", "lib/chingu/traits/deprecated_visual.rb", "lib/chingu/traits/effect.rb", "lib/chingu/traits/input.rb", "lib/chingu/traits/velocity.rb", "lib/chingu/window.rb"]
|
13
|
+
s.extra_rdoc_files = ["History.txt", "Manifest.txt", "benchmarks/README.txt", "games/triangle_wars/NOT_DONE_YET.txt"]
|
14
|
+
s.files = ["History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "benchmarks/README.txt", "benchmarks/benchmark.rb", "benchmarks/benchmark3.rb", "benchmarks/benchmark4.rb", "benchmarks/meta_benchmark.rb", "benchmarks/meta_benchmark2.rb", "chingu.gemspec", "examples/example1.rb", "examples/example2.rb", "examples/example3.rb", "examples/example4.rb", "examples/example5.rb", "examples/example6.rb", "examples/example7.rb", "examples/example8.rb", "examples/example9.rb", "examples/media/Parallax-scroll-example-layer-0.png", "examples/media/Parallax-scroll-example-layer-1.png", "examples/media/Parallax-scroll-example-layer-2.png", "examples/media/Parallax-scroll-example-layer-3.png", "examples/media/background1.png", "examples/media/fire_bullet.png", "examples/media/fireball.png", "examples/media/particle.png", "examples/media/ruby.png", "examples/media/spaceship.png", "examples/media/stickfigure.bmp", "examples/media/stickfigure.png", "examples/media/video_games.png", "games/triangle_wars/NOT_DONE_YET.txt", "games/triangle_wars/media/1up.png", "games/triangle_wars/media/33487__CosmicD__006.wav", "games/triangle_wars/media/Thumbs.db", "games/triangle_wars/media/autofire.png", "games/triangle_wars/media/backgrounds/GPN-2000-000933.jpg", "games/triangle_wars/media/backgrounds/Thumbs.db", "games/triangle_wars/media/backgrounds/background10.png", "games/triangle_wars/media/backgrounds/background10.svg", "games/triangle_wars/media/backgrounds/background2.jpg", "games/triangle_wars/media/backgrounds/background2.png", "games/triangle_wars/media/backgrounds/hubble_deep_field.jpg", "games/triangle_wars/media/backgrounds/hubble_deep_field.png", "games/triangle_wars/media/backgrounds/intro_bg.png", "games/triangle_wars/media/backgrounds/star_4.jpg", "games/triangle_wars/media/backgrounds/star_5.jpg", "games/triangle_wars/media/backgrounds/star_6.jpg", "games/triangle_wars/media/backgrounds/supernova_1.jpg", "games/triangle_wars/media/bigbomb.png", "games/triangle_wars/media/bullets.svg", "games/triangle_wars/media/enemy.png", "games/triangle_wars/media/enemy.svg", "games/triangle_wars/media/enemy_dying.png", "games/triangle_wars/media/enemy_small.svg", "games/triangle_wars/media/explosion.wav", "games/triangle_wars/media/hit.wav", "games/triangle_wars/media/hit2.wav", "games/triangle_wars/media/hit3.wav", "games/triangle_wars/media/laser.png", "games/triangle_wars/media/laser.svg", "games/triangle_wars/media/laser_up.png", "games/triangle_wars/media/plasma.png", "games/triangle_wars/media/plasma.wav", "games/triangle_wars/media/plasma_up.png", "games/triangle_wars/media/powerup_bg.png", "games/triangle_wars/media/powerups.svg", "games/triangle_wars/media/rocket_up.png", "games/triangle_wars/media/spaceship.png", "games/triangle_wars/media/spaceship.svg", "games/triangle_wars/media/triangle_logo.svg", "games/triangle_wars/media/triangle_wars.png", "games/triangle_wars/media/triangle_wars_intro.mp3", "games/triangle_wars/media/triangle_wars_intro.ogg", "games/triangle_wars/src/enemy.rb", "games/triangle_wars/src/game_over_state.rb", "games/triangle_wars/src/level_state.rb", "games/triangle_wars/src/menu_state.rb", "games/triangle_wars/src/my_game_object.rb", "games/triangle_wars/src/pause_state.rb", "games/triangle_wars/src/player.rb", "games/triangle_wars/src/power_up.rb", "games/triangle_wars/triangle_wars.rb", "lib/chingu.rb", "lib/chingu/actor.rb", "lib/chingu/animation.rb", "lib/chingu/assets.rb", "lib/chingu/basic_game_object.rb", "lib/chingu/core_extensions.rb", "lib/chingu/effects.rb", "lib/chingu/fpscounter.rb", "lib/chingu/game_object.rb", "lib/chingu/game_state.rb", "lib/chingu/game_state_manager.rb", "lib/chingu/game_states/debug.rb", "lib/chingu/game_states/fade_to.rb", "lib/chingu/game_states/pause.rb", "lib/chingu/gfx_helpers.rb", "lib/chingu/helpers.rb", "lib/chingu/input.rb", "lib/chingu/named_resource.rb", "lib/chingu/parallax.rb", "lib/chingu/particle.rb", "lib/chingu/rect.rb", "lib/chingu/text.rb", "lib/chingu/traits/collision_detection.rb", "lib/chingu/traits/deprecated_module_visual.rb", "lib/chingu/traits/deprecated_visual.rb", "lib/chingu/traits/effect.rb", "lib/chingu/traits/input.rb", "lib/chingu/traits/velocity.rb", "lib/chingu/window.rb"]
|
15
15
|
s.homepage = %q{http://github.com/ippa/chingu/tree/master}
|
16
16
|
s.rdoc_options = ["--main", "README.rdoc"]
|
17
17
|
s.require_paths = ["lib"]
|
@@ -0,0 +1 @@
|
|
1
|
+
This game isn't finished, so.. dont play it :P
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,94 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
+
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
3
|
+
<svg
|
4
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
5
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
6
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
7
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
8
|
+
xmlns="http://www.w3.org/2000/svg"
|
9
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
10
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
11
|
+
width="800px"
|
12
|
+
height="600px"
|
13
|
+
id="svg3191"
|
14
|
+
sodipodi:version="0.32"
|
15
|
+
inkscape:version="0.46"
|
16
|
+
inkscape:export-filename="C:\Dev\projects\triangle wars\media\background1.png"
|
17
|
+
inkscape:export-xdpi="90"
|
18
|
+
inkscape:export-ydpi="90"
|
19
|
+
sodipodi:docname="background1.svg"
|
20
|
+
inkscape:output_extension="org.inkscape.output.svg.inkscape">
|
21
|
+
<defs
|
22
|
+
id="defs3193">
|
23
|
+
<inkscape:perspective
|
24
|
+
sodipodi:type="inkscape:persp3d"
|
25
|
+
inkscape:vp_x="0 : 300 : 1"
|
26
|
+
inkscape:vp_y="0 : 1000 : 0"
|
27
|
+
inkscape:vp_z="800 : 300 : 1"
|
28
|
+
inkscape:persp3d-origin="400 : 200 : 1"
|
29
|
+
id="perspective3199" />
|
30
|
+
<filter
|
31
|
+
inkscape:collect="always"
|
32
|
+
id="filter3838">
|
33
|
+
<feGaussianBlur
|
34
|
+
inkscape:collect="always"
|
35
|
+
stdDeviation="10.482757"
|
36
|
+
id="feGaussianBlur3840" />
|
37
|
+
</filter>
|
38
|
+
</defs>
|
39
|
+
<sodipodi:namedview
|
40
|
+
id="base"
|
41
|
+
pagecolor="#ffffff"
|
42
|
+
bordercolor="#666666"
|
43
|
+
borderopacity="1.0"
|
44
|
+
inkscape:pageopacity="0.0"
|
45
|
+
inkscape:pageshadow="2"
|
46
|
+
inkscape:zoom="0.6"
|
47
|
+
inkscape:cx="400"
|
48
|
+
inkscape:cy="300"
|
49
|
+
inkscape:current-layer="layer1"
|
50
|
+
inkscape:document-units="px"
|
51
|
+
showgrid="false" />
|
52
|
+
<metadata
|
53
|
+
id="metadata3196">
|
54
|
+
<rdf:RDF>
|
55
|
+
<cc:Work
|
56
|
+
rdf:about="">
|
57
|
+
<dc:format>image/svg+xml</dc:format>
|
58
|
+
<dc:type
|
59
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
60
|
+
</cc:Work>
|
61
|
+
</rdf:RDF>
|
62
|
+
</metadata>
|
63
|
+
<g
|
64
|
+
id="layer1"
|
65
|
+
inkscape:label="Layer 1"
|
66
|
+
inkscape:groupmode="layer">
|
67
|
+
<rect
|
68
|
+
style="opacity:1;fill:#1a1a1a;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.52199996000000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
69
|
+
id="rect3201"
|
70
|
+
width="1130"
|
71
|
+
height="723.33331"
|
72
|
+
x="-158.33333"
|
73
|
+
y="-38.333332"
|
74
|
+
inkscape:export-xdpi="18"
|
75
|
+
inkscape:export-ydpi="18"
|
76
|
+
inkscape:export-filename="C:\Dev\projects\triangle wars\media\background1.png" />
|
77
|
+
<path
|
78
|
+
sodipodi:type="spiral"
|
79
|
+
style="opacity:1;fill:#225500;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter3838)"
|
80
|
+
id="path3203"
|
81
|
+
sodipodi:cx="368.33334"
|
82
|
+
sodipodi:cy="255"
|
83
|
+
sodipodi:expansion="1"
|
84
|
+
sodipodi:revolution="29.6"
|
85
|
+
sodipodi:radius="526.65082"
|
86
|
+
sodipodi:argument="-30.693226"
|
87
|
+
sodipodi:t0="0"
|
88
|
+
d="M 368.33334,255 C 370.34057,256.77009 366.93759,258.579 365.39134,258.33615 C 361.20108,257.67802 360.20441,252.42631 361.66105,249.11599 C 364.26664,243.1946 371.92559,242.03924 377.15936,244.99156 C 384.84014,249.3242 386.17744,259.66825 381.67793,266.76802 C 375.68079,276.23091 362.56891,277.74912 353.62331,271.68073 C 342.3662,264.0443 340.66805,248.12981 348.31646,237.34796 C 357.57972,224.2897 376.31466,222.41207 388.92739,231.64697 C 403.79104,242.52998 405.84795,264.0958 395.02252,278.53605 C 382.52413,295.20788 358.12082,297.44399 341.85529,285.02532 C 323.37336,270.91444 320.95808,243.66919 334.97187,225.57994 C 350.69323,205.28654 380.78359,202.69209 400.69541,218.30238 C 422.8013,235.63277 425.57492,268.57055 408.36711,290.30407 C 389.42879,314.22322 353.64182,317.17604 330.08727,298.36991 C 304.35425,277.82449 301.22222,239.18699 321.62729,213.81192 C 343.77917,186.26456 385.26827,182.9533 412.46343,204.9578 C 441.82551,228.71561 445.31602,273.05718 421.7117,302.0721 C 396.34837,333.24922 349.15362,336.91898 318.31924,311.7145 C 285.32682,284.746 281.47779,234.6975 308.2827,202.04389 C 336.85607,167.23595 389.75883,163.20763 424.23146,191.61321 C 460.8551,221.79122 465.06272,277.54863 435.05628,313.84012 C 403.27384,352.27962 344.66142,356.66655 306.55122,325.05909 C 266.29572,291.67238 261.72948,230.20466 294.93811,190.27587 C 329.92892,148.20426 394.25222,143.45869 435.99948,178.26862 C 479.88731,214.8634 484.81221,282.0425 448.40087,325.60814 C 410.20223,371.31227 340.16713,376.41651 294.78319,338.40367 C 247.26268,298.60127 241.97909,225.71 281.59352,178.50784 C 322.99959,129.17088 398.7472,123.70794 447.7675,164.92403 C 498.92099,207.93369 504.56329,286.53777 461.74546,337.37617 C 417.13228,390.34622 335.67161,396.16788 283.01517,351.74826 C 228.22849,305.53162 222.22747,221.21425 268.24893,166.73982 C 316.06897,110.13647 403.24315,103.95608 459.53553,151.57944 C 517.95558,201.00283 524.31535,291.03391 475.09005,349.14419 C 424.06336,409.38099 331.1753,415.92014 271.24715,365.09285 C 209.19357,312.46291 202.47504,216.71779 254.90435,154.9718 C 309.13751,91.101408 407.73975,84.203494 471.30355,138.23486 C 536.99078,194.0712 544.06808,295.53064 488.43463,360.91222 C 430.99514,428.41631 326.67846,435.673 259.47912,378.43744 C 190.15814,319.39482 182.72206,212.22084 241.55976,143.20377 C 302.20547,72.065886 412.2368,64.45041 483.07158,124.89027 C 556.02639,187.13905 563.82127,300.02777 501.77922,372.68024 C 437.92739,447.452 322.18123,455.42627 247.7111,391.78203 C 171.12237,326.32717 162.9687,207.72354 228.21517,131.43575 C 295.27303,53.030036 416.73417,44.696965 494.8396,111.54568 C 575.06231,180.20653 583.57478,304.52521 515.12381,384.44826 C 444.85999,466.48798 317.68373,475.17986 235.94307,405.12661 C 152.08633,333.25984 143.21504,203.22598 214.87058,119.66773 C 288.34029,33.993944 421.23178,24.943252 506.60762,98.201092 C 594.09845,173.27373 603.32855,309.02287 528.4684,396.21629 C 451.79286,485.52417 313.18603,494.93368 224.17505,418.4712 C 133.05009,340.19276 123.46117,198.72823 201.52599,107.8997 C 281.40732,14.957667 425.72958,5.189334 518.37565,84.856504 C 613.13477,166.34071 623.08252,313.52071 541.81299,407.98431 C 458.72592,504.56053 308.68815,514.68769 212.40703,431.81579 C 114.01371,347.12587 103.70713,194.23032 188.18141,96.131677 C 274.47417,-4.0787534 430.22752,-14.564744 530.14367,71.511916 C 632.17122,159.40752 642.83663,318.01868 555.15757,419.75233 C 465.65914,523.59701 304.19015,534.44183 200.639,445.16038 C 94.977198,354.05912 83.952957,189.73229 174.83682,84.363653 C 267.54089,-23.115288 434.72558,-34.318948 541.9117,58.167328 C 651.20778,152.4742 662.59086,322.51676 568.50216,431.52036 C 472.59249,542.63359 299.69205,554.19609 188.87098,458.50497 C 75.940592,360.9925 64.198673,185.23416 161.49223,72.595629 C 260.60748,-42.151916 439.22373,-54.073256 553.67972,44.82274 C 670.24443,145.54078 682.34519,327.01493 581.84675,443.28838 C 479.52594,561.67026 295.19386,573.95044 177.10296,471.84955 C 56.903907,367.92597 44.4443,180.73596 148.14764,60.827606 C 253.67399,-61.188618 443.72195,-73.827648 565.44774,31.478152 C 689.28115,138.60726 702.0996,331.51317 595.19134,455.05641 C 486.45947,580.70699 290.6956,593.70487 165.33493,485.19414 C 37.867156,374.85952 24.689855,176.23768 134.80305,49.059582 C 246.74042,-80.225384 448.22024,-93.58211 577.21577,18.133564 C 708.31793,131.67367 721.85408,336.01148 608.53593,466.82443 C 493.39308,599.74379 286.19728,613.45936 153.56691,498.53873 C 18.83035,381.79314 4.9353473,171.73935 121.45847,37.291558 C 239.80678,-99.262202 452.71858,-113.33663 588.98379,4.7889762 C 727.35476,124.74002 741.60861,340.50983 621.88051,478.59245 C 500.32674,618.78063 281.69891,633.21391 141.79888,511.88332 C -0.20650193,388.72682 -14.819212,167.24097 108.11388,25.523534 C 232.8731,-118.29906 457.21697,-133.0912 600.75182,-8.5556118 C 746.39163,117.80632 761.3632,345.00823 635.2251,490.36048 C 507.26045,637.81751 277.20051,652.9685 130.03086,525.22791 C -19.243394,395.66055 -34.573816,162.74255 94.769291,13.75551 C 225.93936,-137.33597 461.7154,-152.84582 612.51984,-21.9002 C 765.42854,110.87258 781.11782,349.50667 648.56969,502.1285 C 514.19421,656.85443 272.70206,672.72314 118.26284,538.57249 C -38.280319,402.59431 -54.328457,158.2441 81.424703,1.9874861 C 219.00558,-156.3729 466.21386,-172.60047 624.28786,-35.244788 C 784.46548,103.93879 800.87248,354.00514 661.91428,513.89653 C 521.128,675.89138 268.20358,692.4778 106.49481,551.91708 C -57.317275,409.52811 -74.083132,153.74562 68.080115,-9.7805378 C 212.07177,-175.40986 470.71235,-192.35515 636.05589,-48.589376 C 803.50245,97.004973 820.62717,358.50363 675.25887,525.66455 C 528.06183,694.92835 263.70508,712.2325 94.726788,565.26167 C -76.354255,416.46195 -93.837836,149.24711 54.735527,-21.548562 C 205.13793,-194.44685 475.21087,-212.10986 647.82391,-61.933964 C 822.53944,90.071126 840.38188,363.00216 688.60345,537.43257 C 534.99568,713.96535 259.20655,731.98722 82.958764,578.60626 C -95.391259,423.39581 -113.59256,144.74857 41.390939,-33.316586 C 198.20407,-213.48386 479.70941,-231.86459 659.59194,-75.278551 C 841.57645,83.137254 860.13662,367.5007 701.94804,549.2006 C 541.92956,733.00237 254.708,751.74197 71.19074,591.95085 C -114.42828,430.32969 -133.34732,140.25002 28.046351,-45.08461 C 191.27018,-232.52088 484.20796,-251.61935 671.35996,-88.623139 C 860.61349,76.203358 879.89139,371.99926 715.29263,560.96862 C 548.86346,752.0394 250.20944,771.49674 59.422716,605.29543 C -133.46532,437.2636 -153.10209,135.75145 14.701763,-56.852633 C 184.33627,-251.55793 488.70654,-271.37413 683.12798,-101.96773 C 879.65054,69.269443 899.64617,376.49784 728.63722,572.73665 C 555.79738,771.07646 245.71085,791.25152 47.654692,618.64002 C -152.50238,444.19752 -172.85688,131.25286 1.3571752,-68.620657 C 177.40234,-270.59499 493.20513,-291.12892 694.89601,-115.31232 C 898.6876,62.33551 919.40096,380.99644 741.98181,584.50467 C 562.73132,790.11352 241.21226,811.00632 35.886668,631.98461 C -171.53945,451.13146 -192.61168,126.75426 -11.987413,-80.388681 C 170.46839,-289.63206 497.70374,-310.88373 706.66403,-128.6569 C 917.72468,55.40156 939.15577,385.49505 755.32639,596.27269 C 569.66527,809.1506 236.71364,830.76114 24.118644,645.3292 C -190.57653,458.06542 -212.3665,122.25565 -25.332001,-92.156705 C 47.272402,-175.38884 145.8648,-234.32666 253.51832,-258.98307"
|
89
|
+
inkscape:export-filename="C:\Dev\projects\enemies at the surface\media\background1.png"
|
90
|
+
inkscape:export-xdpi="18"
|
91
|
+
inkscape:export-ydpi="18"
|
92
|
+
transform="translate(35,23.333333)" />
|
93
|
+
</g>
|
94
|
+
</svg>
|