gamebox 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -0
- data/History.txt +6 -0
- data/Rakefile +25 -23
- data/TODO.txt +5 -3
- data/VERSION +1 -0
- data/bin/gamebox +2 -2
- data/docs/CODE_REVIEW +48 -0
- data/docs/getting_started.rdoc +30 -14
- data/gamebox.gemspec +184 -0
- data/lib/gamebox/actor.rb +29 -37
- data/lib/gamebox/actor_factory.rb +7 -24
- data/lib/gamebox/actors/curtain.rb +57 -0
- data/lib/gamebox/actors/label.rb +23 -0
- data/lib/gamebox/actors/score.rb +9 -5
- data/lib/gamebox/arbiter.rb +75 -0
- data/lib/gamebox/backstage.rb +17 -0
- data/lib/gamebox/behavior.rb +24 -1
- data/lib/gamebox/behaviors/animated.rb +2 -0
- data/lib/gamebox/behaviors/audible.rb +34 -0
- data/lib/gamebox/behaviors/collidable.rb +41 -0
- data/lib/gamebox/class_finder.rb +29 -0
- data/lib/gamebox/data/config/objects.yml +0 -1
- data/lib/gamebox/director.rb +13 -0
- data/lib/gamebox/gamebox_application.rb +2 -0
- data/lib/gamebox/input_manager.rb +58 -36
- data/lib/gamebox/{templates/template_app/lib → lib}/code_statistics.rb +0 -0
- data/lib/gamebox/lib/platform.rb +1 -0
- data/lib/gamebox/lib/surface_ext.rb +1 -1
- data/lib/gamebox/sound_manager.rb +11 -5
- data/lib/gamebox/spec/helper.rb +25 -0
- data/lib/gamebox/stage.rb +69 -2
- data/lib/gamebox/stage_manager.rb +6 -5
- data/lib/gamebox/tasks/gamebox_tasks.rb +18 -0
- data/lib/gamebox/templates/template_app/.gitignore +6 -0
- data/lib/gamebox/templates/template_app/README +3 -9
- data/lib/gamebox/templates/template_app/Rakefile +0 -13
- data/lib/gamebox/templates/template_app/spec/helper.rb +1 -1
- data/lib/gamebox/templates/template_app/src/demo_stage.rb +1 -1
- data/lib/gamebox/version.rb +1 -1
- data/lib/gamebox/views/graphical_actor_view.rb +13 -21
- data/spec/actor_spec.rb +12 -4
- data/spec/actor_view_spec.rb +16 -0
- data/spec/animated_spec.rb +1 -0
- data/spec/backstage_spec.rb +45 -0
- data/spec/behavior_spec.rb +11 -0
- data/spec/collidable_spec.rb +15 -0
- data/spec/label_spec.rb +11 -0
- data/spec/resource_manager_spec.rb +14 -0
- data/spec/stage_spec.rb +65 -0
- metadata +66 -34
- data/Manifest.txt +0 -97
- data/lib/gamebox/ftor.rb +0 -2
- data/lib/gamebox/templates/template_app/lib/platform.rb +0 -16
data/.gitignore
ADDED
data/History.txt
CHANGED
@@ -61,3 +61,9 @@
|
|
61
61
|
* new major ruby platformer example
|
62
62
|
* merged Mode/Level into Stage
|
63
63
|
* added curtain transitions
|
64
|
+
|
65
|
+
=== 0.0.8 / 2010-02-05
|
66
|
+
|
67
|
+
* Cleaning up APIs
|
68
|
+
* Adding basic collision detection system
|
69
|
+
* added timers to stage for calling blocks on an interval
|
data/Rakefile
CHANGED
@@ -1,25 +1,27 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require '
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
1
|
+
begin
|
2
|
+
require 'jeweler'
|
3
|
+
require File.dirname(__FILE__)+'/lib/gamebox/version'
|
4
|
+
Jeweler::Tasks.new do |gem|
|
5
|
+
gem.name = "gamebox"
|
6
|
+
gem.executables = "gamebox"
|
7
|
+
gem.rubyforge_project = "gamebox"
|
8
|
+
gem.summary = %Q{Framework for building and distributing games using Rubygame}
|
9
|
+
gem.description = %Q{Framework for building and distributing games using Rubygame}
|
10
|
+
gem.email = "shawn42@gmail.com"
|
11
|
+
gem.homepage = "http://shawn42.github.com/gamebox"
|
12
|
+
gem.authors = ["Shawn Anderson","Jason Roelofs","Karlin Fox"]
|
13
|
+
gem.add_development_dependency "rspec"
|
14
|
+
gem.add_development_dependency "jeweler"
|
15
|
+
gem.add_dependency 'rubygame'
|
16
|
+
gem.add_dependency 'constructor'
|
17
|
+
gem.add_dependency 'publisher'
|
18
|
+
gem.files.exclude 'examples'
|
19
|
+
gem.test_files = FileList['{spec,test}/**/*.rb']
|
20
|
+
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
21
21
|
end
|
22
|
-
|
22
|
+
Jeweler::GemcutterTasks.new
|
23
|
+
rescue LoadError
|
24
|
+
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
|
23
25
|
end
|
24
26
|
|
25
27
|
STATS_DIRECTORIES = [
|
@@ -34,9 +36,10 @@ end
|
|
34
36
|
|
35
37
|
require 'spec/rake/spectask'
|
36
38
|
desc "Run all rspecs"
|
37
|
-
Spec::Rake::SpecTask.new(
|
39
|
+
Spec::Rake::SpecTask.new(:spec) do |t|
|
38
40
|
t.spec_files = FileList['spec/*_spec.rb']
|
39
41
|
end
|
42
|
+
task :default => :spec
|
40
43
|
|
41
44
|
desc "Run rcov rspecs"
|
42
45
|
Spec::Rake::SpecTask.new('rcov_rspec') do |t|
|
@@ -44,6 +47,5 @@ Spec::Rake::SpecTask.new('rcov_rspec') do |t|
|
|
44
47
|
t.rcov = true
|
45
48
|
t.rcov_opts = ['--exclude', 'examples']
|
46
49
|
end
|
47
|
-
task :default => :rspec
|
48
50
|
|
49
51
|
# vim: syntax=Ruby
|
data/TODO.txt
CHANGED
@@ -1,9 +1,11 @@
|
|
1
1
|
planned features:
|
2
2
|
add network manager stub
|
3
3
|
highscore upload system (use from chingu)
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
|
5
|
+
change update system to
|
6
|
+
on_update do |time|
|
7
|
+
# do stuff?
|
8
|
+
end
|
7
9
|
|
8
10
|
allow easy pausing of game and physics
|
9
11
|
- fire :pause event w/ a new Director of actors?
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.0.8
|
data/bin/gamebox
CHANGED
@@ -51,13 +51,13 @@ Dir.mkdir(TARGET_DIR) unless File.exist?(TARGET_DIR) && File.directory?(TARGET_D
|
|
51
51
|
Dir.mkdir(TARGET_DIR + "/config")
|
52
52
|
Dir.mkdir(TARGET_DIR + "/data")
|
53
53
|
Dir.mkdir(TARGET_DIR + "/data/graphics")
|
54
|
-
Dir.mkdir(TARGET_DIR + "/data/
|
54
|
+
Dir.mkdir(TARGET_DIR + "/data/sounds")
|
55
55
|
Dir.mkdir(TARGET_DIR + "/data/music")
|
56
56
|
Dir.mkdir(TARGET_DIR + "/doc")
|
57
57
|
Dir.mkdir(TARGET_DIR + "/lib")
|
58
58
|
Dir.mkdir(TARGET_DIR + "/script")
|
59
59
|
Dir.mkdir(TARGET_DIR + "/src")
|
60
|
-
Dir.mkdir(TARGET_DIR + "/
|
60
|
+
Dir.mkdir(TARGET_DIR + "/spec")
|
61
61
|
|
62
62
|
Dir.chdir(SOURCE_DIR + "/template_app")
|
63
63
|
Dir.glob("**/*").each do |file|
|
data/docs/CODE_REVIEW
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
1) Lots more documentation. All public methods and All classes need rdoc, including example usage where applicable
|
2
|
+
|
3
|
+
2) Other non-code documentation:
|
4
|
+
- Gamebox convensions (data dir is the big one)
|
5
|
+
- High level: what is a Stage, Actor, Director, etc, the description of the concepts Gamebox uses
|
6
|
+
- update / render loop
|
7
|
+
- Parallax and view layers
|
8
|
+
- Publisher usage. how why and where
|
9
|
+
|
10
|
+
actor.rb
|
11
|
+
* visibility should be a part of graphical
|
12
|
+
|
13
|
+
behavior.rb
|
14
|
+
* To reiterate the documentation point, given that Behaviors are the core of Gamebox, this class will need a
|
15
|
+
lot of documentation on what they are, why it's done this way, how to make your own, etc.
|
16
|
+
|
17
|
+
physics.rb
|
18
|
+
* Potential confusion with #add_collision_func. The comment implies that :foo and :bar won't be registerd to collide, nor will :baz or :yar. Would it make more sense to change the signature to:
|
19
|
+
|
20
|
+
add_collision_func(*these_things, *can_collide_with)
|
21
|
+
|
22
|
+
or make it just a straight *args and Gamebox will register all permutations of the given arguments?
|
23
|
+
|
24
|
+
resource_manager.rb
|
25
|
+
* Potentially doing too much? Split out font, sound, image loading into seperate manager subclasses?
|
26
|
+
|
27
|
+
stage.rb
|
28
|
+
* create_actors_from_svg sounds more like a resource manager job than the stage
|
29
|
+
|
30
|
+
views/graphical_actor_view.rb
|
31
|
+
* seems to handle too much. This class shouldn't care about physics, possibly have a PhysicalActorView instead for rendering according to Chipmunk?
|
32
|
+
|
33
|
+
|
34
|
+
notes:
|
35
|
+
|
36
|
+
- Auto dependency detection and resolution for behaviors
|
37
|
+
|
38
|
+
- Possible implementation for dynamic behavior parameters (see mjr_ruby background.rb)
|
39
|
+
* In line w/ procs that get evaluated later:
|
40
|
+
has_behaviors :graphical => {:tiled => true, :num_x_tiles => proc{|alksjdfla| alkdjfasd }
|
41
|
+
* Can set later
|
42
|
+
has_behaviors :graphical => {:tiled => true}
|
43
|
+
|
44
|
+
def setup
|
45
|
+
self.graphical.num_x_tiles = ...
|
46
|
+
...
|
47
|
+
end
|
48
|
+
|
data/docs/getting_started.rdoc
CHANGED
@@ -18,7 +18,7 @@ The reason I wrote Gamebox is twofold: first, to aid in 48 hour game writing com
|
|
18
18
|
- rubygame (all of its dependencies)
|
19
19
|
- constructor
|
20
20
|
- publisher
|
21
|
-
-
|
21
|
+
- rspec for unit tests
|
22
22
|
|
23
23
|
== Game Creation
|
24
24
|
|
@@ -31,6 +31,7 @@ The reason I wrote Gamebox is twofold: first, to aid in 48 hour game writing com
|
|
31
31
|
| |-- boot.rb
|
32
32
|
| |-- environment.rb
|
33
33
|
| |-- game.yml
|
34
|
+
| |-- gamebox_generator_version.yml
|
34
35
|
| `-- stage_config.yml
|
35
36
|
|-- data
|
36
37
|
| |-- fonts
|
@@ -46,13 +47,16 @@ The reason I wrote Gamebox is twofold: first, to aid in 48 hour game writing com
|
|
46
47
|
|-- lib
|
47
48
|
| |-- code_statistics.rb
|
48
49
|
| `-- platform.rb
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
50
|
+
|-- script
|
51
|
+
| `-- generate
|
52
|
+
|-- spec
|
53
|
+
| `-- helper.rb
|
54
|
+
`-- src
|
55
|
+
|-- app.rb
|
56
|
+
|-- demo_stage.rb
|
57
|
+
|-- game.rb
|
58
|
+
`-- my_actor.rb
|
59
|
+
|
56
60
|
- you now have a runnable gamebox game
|
57
61
|
|
58
62
|
cd zapper
|
@@ -64,7 +68,7 @@ An Actor is the base class for any game object. A building, the player, the scor
|
|
64
68
|
|
65
69
|
So Actors sound fun, how do I get one? That's where the ActorFactory comes in. In your Level class (demo_level.rb by default) you can use the create_actor helper method as shown below.
|
66
70
|
|
67
|
-
@score =
|
71
|
+
@score = spawn :score, :x => 10, :y => 10
|
68
72
|
|
69
73
|
This call will return an instance of the Score class (the first arg is the symbolized version of the classname). The ActorFactory will try to require the symbolized class name for you. It will also create the view for the actor and register it to be drawn. Which view is instantiated depends on the actor requested. The factory will always look for a class named the same as the actor with View on the end. So the actor Score will look for ScoreView. If ScoreView does not exist, a generic view class will be used based on the behaviors of the actor. Each ActorView class is constructed with a reference to the actor it is displaying. See ActorFactor#build for more details.
|
70
74
|
|
@@ -76,7 +80,7 @@ That's great, but how do I tell my actors what to do? They can register for eve
|
|
76
80
|
|
77
81
|
== Sound
|
78
82
|
|
79
|
-
There are two ways to play sounds in Gamebox. From your
|
83
|
+
There are two ways to play sounds in Gamebox. From your stage you can simple access the SoundManager via the sound_manager method. From your actors, you can play sounds via the play_sound helper method in the audible behavior.
|
80
84
|
|
81
85
|
# music
|
82
86
|
sound_manager.play_music :overworld
|
@@ -87,6 +91,7 @@ There are two ways to play sounds in Gamebox. From your level you can simple acc
|
|
87
91
|
or
|
88
92
|
|
89
93
|
# from an actor
|
94
|
+
has_behavior :audible
|
90
95
|
play_sound :jump
|
91
96
|
|
92
97
|
== Resources
|
@@ -113,8 +118,7 @@ This snippet show us that our Actor wants to be updated on every gameloop and th
|
|
113
118
|
| |-- 2.png
|
114
119
|
| |-- ...
|
115
120
|
| `-- 8.png
|
116
|
-
|-- idle
|
117
|
-
| `-- 1.png
|
121
|
+
|-- idle.png
|
118
122
|
`-- walking
|
119
123
|
|-- 1.png
|
120
124
|
`-- 2.png
|
@@ -129,9 +133,21 @@ The animation will cycle through all the numbered png files for the current acti
|
|
129
133
|
batman.stop_animating
|
130
134
|
|
131
135
|
|
132
|
-
Animated and Updatable are just two behaviors available in Gamebox. Other include graphical, layered, and physical. You can easily add your own game specific behaviors by extending Behavior. (see Wanderer in rague example).
|
136
|
+
Animated and Updatable are just two behaviors available in Gamebox. Other include graphical, audible, layered, and physical. You can easily add your own game specific behaviors by extending Behavior. (see Wanderer in rague example for a simple behavior).
|
133
137
|
|
134
|
-
== Levels
|
135
138
|
== Stages
|
139
|
+
|
140
|
+
A Stage is where all the magic happens. A Stage can be any gameplay mode in your game. The main menu has a different interactions than the _real_ game. In Gamebox, each should have their own Stage. Stages are configured via the stage_config.yml file in config. Listing :demo there will create DemoStage for you. Game.rb decides which stage to start on.
|
141
|
+
|
142
|
+
== StageManager
|
143
|
+
|
144
|
+
So how do these actors end up on the screen? The StageManager. The stage manager handles contruction of new stages and drawing their actors too. Gamebox has built-in support for parallaxing. Parallax layers denote this distance from the audience an Actor should be. The clouds in the sky that are really far away can be set to INFINITY to have them not move at all as the viewport moves. Each parallax layer has layers to allow Actors to be on top of one another, but have the same distance from the audience. The StageManager respects Actor's layered behaviors, if specified. If no layer is specified, the StageManager puts the Actor on parallax layer one of layer one. Example layered behavior:
|
145
|
+
|
146
|
+
has_behavior :layered => {:parallax => 30, :layer => 2}
|
147
|
+
|
148
|
+
This Actor will be 30 layers away from the audience, and will sit on top of anything in parallax layer 30 that has layer less than 2.
|
149
|
+
|
150
|
+
|
151
|
+
== Publisher
|
136
152
|
== Physics
|
137
153
|
== SVG Levels
|
data/gamebox.gemspec
ADDED
@@ -0,0 +1,184 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{gamebox}
|
8
|
+
s.version = "0.0.8"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Shawn Anderson", "Jason Roelofs", "Karlin Fox"]
|
12
|
+
s.date = %q{2010-02-18}
|
13
|
+
s.default_executable = %q{gamebox}
|
14
|
+
s.description = %q{Framework for building and distributing games using Rubygame}
|
15
|
+
s.email = %q{shawn42@gmail.com}
|
16
|
+
s.executables = ["gamebox"]
|
17
|
+
s.extra_rdoc_files = [
|
18
|
+
"README.txt"
|
19
|
+
]
|
20
|
+
s.files = [
|
21
|
+
".gitignore",
|
22
|
+
"History.txt",
|
23
|
+
"README.txt",
|
24
|
+
"Rakefile",
|
25
|
+
"TODO.txt",
|
26
|
+
"VERSION",
|
27
|
+
"bin/gamebox",
|
28
|
+
"docs/CODE_REVIEW",
|
29
|
+
"docs/getting_started.rdoc",
|
30
|
+
"docs/logo.png",
|
31
|
+
"gamebox.gemspec",
|
32
|
+
"lib/gamebox.rb",
|
33
|
+
"lib/gamebox/actor.rb",
|
34
|
+
"lib/gamebox/actor_factory.rb",
|
35
|
+
"lib/gamebox/actor_view.rb",
|
36
|
+
"lib/gamebox/actors/curtain.rb",
|
37
|
+
"lib/gamebox/actors/label.rb",
|
38
|
+
"lib/gamebox/actors/logo.rb",
|
39
|
+
"lib/gamebox/actors/score.rb",
|
40
|
+
"lib/gamebox/actors/svg_actor.rb",
|
41
|
+
"lib/gamebox/ai/line_of_site.rb",
|
42
|
+
"lib/gamebox/ai/polaris.rb",
|
43
|
+
"lib/gamebox/ai/two_d_grid_location.rb",
|
44
|
+
"lib/gamebox/ai/two_d_grid_map.rb",
|
45
|
+
"lib/gamebox/arbiter.rb",
|
46
|
+
"lib/gamebox/backstage.rb",
|
47
|
+
"lib/gamebox/behavior.rb",
|
48
|
+
"lib/gamebox/behaviors/animated.rb",
|
49
|
+
"lib/gamebox/behaviors/audible.rb",
|
50
|
+
"lib/gamebox/behaviors/collidable.rb",
|
51
|
+
"lib/gamebox/behaviors/graphical.rb",
|
52
|
+
"lib/gamebox/behaviors/layered.rb",
|
53
|
+
"lib/gamebox/behaviors/physical.rb",
|
54
|
+
"lib/gamebox/behaviors/updatable.rb",
|
55
|
+
"lib/gamebox/class_finder.rb",
|
56
|
+
"lib/gamebox/config_manager.rb",
|
57
|
+
"lib/gamebox/console_app.rb",
|
58
|
+
"lib/gamebox/data/config/objects.yml",
|
59
|
+
"lib/gamebox/data/fonts/Asimov.ttf",
|
60
|
+
"lib/gamebox/data/fonts/GAMEBOX_FONTS_GO_HERE",
|
61
|
+
"lib/gamebox/data/graphics/GAMEBOX_GRAPHICS_GO_HERE",
|
62
|
+
"lib/gamebox/data/graphics/logo.png",
|
63
|
+
"lib/gamebox/data/music/GAMEBOX_MUSIC_GOES_HERE",
|
64
|
+
"lib/gamebox/data/sounds/GAMEBOX_SOUND_FX_GO_HERE",
|
65
|
+
"lib/gamebox/director.rb",
|
66
|
+
"lib/gamebox/event_compat.rb",
|
67
|
+
"lib/gamebox/gamebox_application.rb",
|
68
|
+
"lib/gamebox/gamebox_generator.rb",
|
69
|
+
"lib/gamebox/generators/actor_generator.rb",
|
70
|
+
"lib/gamebox/generators/view_generator.rb",
|
71
|
+
"lib/gamebox/input_manager.rb",
|
72
|
+
"lib/gamebox/lib/aliasing.rb",
|
73
|
+
"lib/gamebox/lib/code_statistics.rb",
|
74
|
+
"lib/gamebox/lib/diy.rb",
|
75
|
+
"lib/gamebox/lib/inflections.rb",
|
76
|
+
"lib/gamebox/lib/inflector.rb",
|
77
|
+
"lib/gamebox/lib/linked_list.rb",
|
78
|
+
"lib/gamebox/lib/metaclass.rb",
|
79
|
+
"lib/gamebox/lib/numbers_ext.rb",
|
80
|
+
"lib/gamebox/lib/platform.rb",
|
81
|
+
"lib/gamebox/lib/publisher_ext.rb",
|
82
|
+
"lib/gamebox/lib/sorted_list.rb",
|
83
|
+
"lib/gamebox/lib/surface_ext.rb",
|
84
|
+
"lib/gamebox/physical_director.rb",
|
85
|
+
"lib/gamebox/physical_stage.rb",
|
86
|
+
"lib/gamebox/physics.rb",
|
87
|
+
"lib/gamebox/resource_manager.rb",
|
88
|
+
"lib/gamebox/sound_manager.rb",
|
89
|
+
"lib/gamebox/spec/helper.rb",
|
90
|
+
"lib/gamebox/stage.rb",
|
91
|
+
"lib/gamebox/stage_manager.rb",
|
92
|
+
"lib/gamebox/svg_document.rb",
|
93
|
+
"lib/gamebox/tasks/gamebox_tasks.rb",
|
94
|
+
"lib/gamebox/templates/actor.erb",
|
95
|
+
"lib/gamebox/templates/actor_spec.erb",
|
96
|
+
"lib/gamebox/templates/actor_view.erb",
|
97
|
+
"lib/gamebox/templates/actor_view_spec.erb",
|
98
|
+
"lib/gamebox/templates/template_app/.gitignore",
|
99
|
+
"lib/gamebox/templates/template_app/README",
|
100
|
+
"lib/gamebox/templates/template_app/Rakefile",
|
101
|
+
"lib/gamebox/templates/template_app/config/boot.rb",
|
102
|
+
"lib/gamebox/templates/template_app/config/environment.rb",
|
103
|
+
"lib/gamebox/templates/template_app/config/game.yml",
|
104
|
+
"lib/gamebox/templates/template_app/config/stage_config.yml",
|
105
|
+
"lib/gamebox/templates/template_app/data/fonts/FONTS_GO_HERE",
|
106
|
+
"lib/gamebox/templates/template_app/data/graphics/GRAPHICS_GO_HERE",
|
107
|
+
"lib/gamebox/templates/template_app/data/music/MUSIC_GOES_HERE",
|
108
|
+
"lib/gamebox/templates/template_app/data/sounds/SOUND_FX_GO_HERE",
|
109
|
+
"lib/gamebox/templates/template_app/doc/README_FOR_APP",
|
110
|
+
"lib/gamebox/templates/template_app/script/generate",
|
111
|
+
"lib/gamebox/templates/template_app/spec/helper.rb",
|
112
|
+
"lib/gamebox/templates/template_app/src/app.rb",
|
113
|
+
"lib/gamebox/templates/template_app/src/demo_stage.rb",
|
114
|
+
"lib/gamebox/templates/template_app/src/game.rb",
|
115
|
+
"lib/gamebox/templates/template_app/src/my_actor.rb",
|
116
|
+
"lib/gamebox/version.rb",
|
117
|
+
"lib/gamebox/viewport.rb",
|
118
|
+
"lib/gamebox/views/graphical_actor_view.rb",
|
119
|
+
"lib/gamebox/wrapped_screen.rb",
|
120
|
+
"script/perf_polaris.rb",
|
121
|
+
"spec/actor_spec.rb",
|
122
|
+
"spec/actor_view_spec.rb",
|
123
|
+
"spec/animated_spec.rb",
|
124
|
+
"spec/backstage_spec.rb",
|
125
|
+
"spec/behavior_spec.rb",
|
126
|
+
"spec/collidable_spec.rb",
|
127
|
+
"spec/helper.rb",
|
128
|
+
"spec/label_spec.rb",
|
129
|
+
"spec/line_of_site_spec.rb",
|
130
|
+
"spec/physical_spec.rb",
|
131
|
+
"spec/polaris_spec.rb",
|
132
|
+
"spec/resource_manager_spec.rb",
|
133
|
+
"spec/stage_spec.rb",
|
134
|
+
"spec/viewport_spec.rb"
|
135
|
+
]
|
136
|
+
s.homepage = %q{http://shawn42.github.com/gamebox}
|
137
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
138
|
+
s.require_paths = ["lib"]
|
139
|
+
s.rubyforge_project = %q{gamebox}
|
140
|
+
s.rubygems_version = %q{1.3.5}
|
141
|
+
s.summary = %q{Framework for building and distributing games using Rubygame}
|
142
|
+
s.test_files = [
|
143
|
+
"spec/actor_spec.rb",
|
144
|
+
"spec/actor_view_spec.rb",
|
145
|
+
"spec/animated_spec.rb",
|
146
|
+
"spec/backstage_spec.rb",
|
147
|
+
"spec/behavior_spec.rb",
|
148
|
+
"spec/collidable_spec.rb",
|
149
|
+
"spec/helper.rb",
|
150
|
+
"spec/label_spec.rb",
|
151
|
+
"spec/line_of_site_spec.rb",
|
152
|
+
"spec/physical_spec.rb",
|
153
|
+
"spec/polaris_spec.rb",
|
154
|
+
"spec/resource_manager_spec.rb",
|
155
|
+
"spec/stage_spec.rb",
|
156
|
+
"spec/viewport_spec.rb"
|
157
|
+
]
|
158
|
+
|
159
|
+
if s.respond_to? :specification_version then
|
160
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
161
|
+
s.specification_version = 3
|
162
|
+
|
163
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
164
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
165
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
166
|
+
s.add_runtime_dependency(%q<rubygame>, [">= 0"])
|
167
|
+
s.add_runtime_dependency(%q<constructor>, [">= 0"])
|
168
|
+
s.add_runtime_dependency(%q<publisher>, [">= 0"])
|
169
|
+
else
|
170
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
171
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
172
|
+
s.add_dependency(%q<rubygame>, [">= 0"])
|
173
|
+
s.add_dependency(%q<constructor>, [">= 0"])
|
174
|
+
s.add_dependency(%q<publisher>, [">= 0"])
|
175
|
+
end
|
176
|
+
else
|
177
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
178
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
179
|
+
s.add_dependency(%q<rubygame>, [">= 0"])
|
180
|
+
s.add_dependency(%q<constructor>, [">= 0"])
|
181
|
+
s.add_dependency(%q<publisher>, [">= 0"])
|
182
|
+
end
|
183
|
+
end
|
184
|
+
|