shattered 0.3.3 → 0.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/bin/console +3 -21
- data/lib/commands/console.rb +23 -0
- data/lib/game_loader.rb +10 -11
- data/lib/rails_generator/generators/applications/shattered_app/shattered_app_generator.rb +5 -6
- data/lib/rails_generator/generators/components/actor/actor_generator.rb +9 -10
- data/lib/rails_generator/generators/components/model/model_generator.rb +15 -9
- data/lib/rails_generator/generators/components/model/templates/model.rb +1 -1
- data/lib/rails_generator/generators/components/view/templates/view.rb +2 -1
- data/lib/rails_generator/generators/components/view/view_generator.rb +21 -11
- data/lib/templates/configs/boot.rb +10 -2
- data/lib/templates/media/default.mesh +0 -0
- data/lib/templates/media/default.png +0 -0
- metadata +10 -12
- data/lib/rails_generator/generators/components/controller/USAGE +0 -30
- data/lib/rails_generator/generators/components/controller/controller_generator.rb +0 -32
- data/lib/rails_generator/generators/components/controller/templates/controller.rb +0 -5
- data/lib/rails_generator/generators/components/controller/templates/functional_test.rb +0 -18
- data/lib/rails_generator/generators/components/controller/templates/view.rhtml +0 -2
data/bin/console
CHANGED
@@ -1,22 +1,4 @@
|
|
1
|
-
#!/usr/bin/
|
2
|
-
irb = RUBY_PLATFORM =~ /mswin32/ ? 'irb.bat' : 'irb'
|
1
|
+
#!/usr/bin/env ruby
|
3
2
|
|
4
|
-
require
|
5
|
-
|
6
|
-
OptionParser.new do |opt|
|
7
|
-
opt.on('-s', '--sandbox', 'Rollback database modifications on exit.') { |options[:sandbox]| }
|
8
|
-
opt.on("--irb=[#{irb}]", 'Invoke a different irb.') { |options[:irb]| }
|
9
|
-
opt.parse!(ARGV)
|
10
|
-
end
|
11
|
-
|
12
|
-
libs = " -r irb/completion"
|
13
|
-
libs << " -r #{File.dirname(__FILE__)}/../config/environment"
|
14
|
-
libs << " -r console_sandbox" if options[:sandbox]
|
15
|
-
|
16
|
-
if options[:sandbox]
|
17
|
-
puts "Loading #{ENV['RAILS_ENV']} environment in sandbox."
|
18
|
-
puts "Any modifications you make will be rolled back on exit."
|
19
|
-
else
|
20
|
-
puts "Loading #{ENV['RAILS_ENV']} environment."
|
21
|
-
end
|
22
|
-
exec "#{options[:irb]} #{libs} --prompt-mode simple"
|
3
|
+
require "#{File.dirname(__FILE__)}/../config/boot"
|
4
|
+
require "commands/console"
|
@@ -0,0 +1,23 @@
|
|
1
|
+
irb = RUBY_PLATFORM =~ /mswin32/ ? 'irb.bat' : 'irb'
|
2
|
+
|
3
|
+
require 'optparse'
|
4
|
+
options = { :sandbox => false, :irb => irb }
|
5
|
+
OptionParser.new do |opt|
|
6
|
+
opt.banner = "Usage: console [environment] [options]"
|
7
|
+
opt.on('-s', '--sandbox', 'Rollback database modifications on exit.') { |options[:sandbox]| }
|
8
|
+
opt.on("--irb=[#{irb}]", 'Invoke a different irb.') { |options[:irb]| }
|
9
|
+
opt.parse!(ARGV)
|
10
|
+
end
|
11
|
+
|
12
|
+
libs = " -r irb/completion"
|
13
|
+
libs << " -r #{SHATTERED_ROOT}/config/environment"
|
14
|
+
libs << " -r console_sandbox" if options[:sandbox]
|
15
|
+
|
16
|
+
ENV['SHATTERED_ENV'] = ARGV.first || ENV['SHATTERED_ENV'] || 'development'
|
17
|
+
if options[:sandbox]
|
18
|
+
puts "Loading #{ENV['SHATTER_ENV']} environment in sandbox."
|
19
|
+
puts "Any modifications you make will be rolled back on exit."
|
20
|
+
else
|
21
|
+
puts "Loading #{ENV['SHATTER_ENV']} environment."
|
22
|
+
end
|
23
|
+
exec "#{options[:irb]} #{libs} --simple-prompt"
|
data/lib/game_loader.rb
CHANGED
@@ -19,20 +19,19 @@ class GameLoader
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
def run
|
22
|
-
|
23
|
-
view.add_to_environment @environment
|
24
|
-
control = ShatteredController::Runner.new(@environment)
|
25
|
-
ShatteredPack::Configuration.environment=@environment
|
22
|
+
load_environment
|
26
23
|
load_all_sources(SHATTERED_ROOT)
|
27
24
|
|
28
|
-
begin
|
29
|
-
require "#{SHATTERED_ROOT}/app/states/#{@environment[:start_state].to_s}_state"
|
30
|
-
rescue StandardError => output
|
31
|
-
puts output.message
|
32
|
-
end
|
33
|
-
|
34
25
|
eval("#{@environment[:start_state].to_s.camelize}State").new
|
35
|
-
|
26
|
+
|
27
|
+
@control.start_game(@environment)
|
28
|
+
end
|
29
|
+
def load_environment
|
30
|
+
view = ShatteredView::Runner.new @environment
|
31
|
+
view.add_to_environment @environment
|
32
|
+
@control = ShatteredController::Runner.new(@environment)
|
33
|
+
ShatteredPack::Configuration.environment=@environment
|
34
|
+
return @environment
|
36
35
|
end
|
37
36
|
end
|
38
37
|
end
|
@@ -45,7 +45,7 @@ class ShatteredAppGenerator < Rails::Generator::Base #:nodoc:all
|
|
45
45
|
m.file "templates/configs/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/classes.nib", "config/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/classes.nib"
|
46
46
|
m.file "templates/configs/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/info.nib", "config/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/info.nib"
|
47
47
|
m.file "templates/configs/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib", "config/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib"
|
48
|
-
m.file "templates/configs/Mac/shattered.app/Contents/Resources/rb_main.rb", "config/Mac/shattered.app/Contents/Resources/rb_main.rb"
|
48
|
+
m.file "templates/configs/Mac/shattered.app/Contents/Resources/rb_main.rb", "config/Mac/shattered.app/Contents/Resources/rb_main.rb"
|
49
49
|
|
50
50
|
# Scripts
|
51
51
|
%w( generate runner console destroy ).each do |file|
|
@@ -63,8 +63,8 @@ class ShatteredAppGenerator < Rails::Generator::Base #:nodoc:all
|
|
63
63
|
}
|
64
64
|
|
65
65
|
# basic rmaterial
|
66
|
-
m.file "templates/media/basic.rmaterial", "media/templates/basic.rmaterial"
|
67
|
-
m.file "templates/media/offset_map.rmaterial", "media/templates/offset_map.rmaterial"
|
66
|
+
m.file "templates/media/basic.rmaterial", "app/media/common/templates/basic.rmaterial"
|
67
|
+
m.file "templates/media/offset_map.rmaterial", "app/media/common/templates/offset_map.rmaterial"
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
@@ -87,11 +87,10 @@ class ShatteredAppGenerator < Rails::Generator::Base #:nodoc:all
|
|
87
87
|
# Installation skeleton. Intermediate directories are automatically
|
88
88
|
# created so don't sweat their absence here.
|
89
89
|
BASEDIRS = %w(
|
90
|
-
app/controllers
|
91
90
|
app/models
|
92
91
|
app/views
|
93
|
-
media/programs
|
94
|
-
media/templates
|
92
|
+
app/media/common/programs
|
93
|
+
app/media/common/templates
|
95
94
|
config/Mac/shattered.app/Contents/MacOS
|
96
95
|
config/Mac/shattered.app/Contents/Resources/English.lproj/MainMenu.nib
|
97
96
|
doc
|
@@ -6,18 +6,17 @@
|
|
6
6
|
# Rails::Generator::Scripts::Generate.new.run(ARGV)
|
7
7
|
require File.dirname(__FILE__) + '/../model/model_generator'
|
8
8
|
require File.dirname(__FILE__) + '/../view/view_generator'
|
9
|
-
require File.dirname(__FILE__) + '/../controller/controller_generator'
|
10
9
|
|
11
10
|
class ActorGenerator < Rails::Generator::NamedBase #:nodoc:
|
12
11
|
def manifest
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
12
|
+
generators = [ModelGenerator, ViewGenerator]
|
13
|
+
record do |m|
|
14
|
+
generators.each do |generator|
|
15
|
+
generator.check_collisions(m, class_path, class_name)
|
16
|
+
end
|
17
|
+
generators.each do |generator|
|
18
|
+
generator.generate(m, class_path, file_name)
|
19
|
+
end
|
21
20
|
end
|
22
21
|
end
|
23
|
-
end
|
22
|
+
end
|
@@ -1,16 +1,22 @@
|
|
1
1
|
class ModelGenerator < Rails::Generator::NamedBase #:nodoc:
|
2
2
|
def manifest
|
3
3
|
record do |m|
|
4
|
-
|
4
|
+
self.class.check_collisions(m, class_path, class_name)
|
5
|
+
self.class.generate(m, class_path, file_name)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.check_collisions(m, class_path, class_name)
|
10
|
+
# Check for class naming collisions.
|
5
11
|
m.class_collisions class_path, class_name, "#{class_name}Test"
|
12
|
+
end
|
13
|
+
def self.generate(m, class_path, file_name)
|
14
|
+
# Model, test, and fixture directories.
|
15
|
+
m.directory File.join('app/models', class_path)
|
16
|
+
m.directory File.join('test/unit', class_path)
|
6
17
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
# Model class, unit test, and fixtures.
|
12
|
-
m.template 'model.rb', File.join('app/models', class_path, "#{file_name}_model.rb")
|
13
|
-
m.template 'unit_test.rb', File.join('test/unit', class_path, "#{file_name}_test.rb")
|
14
|
-
end
|
18
|
+
# Model class, unit test, and fixtures.
|
19
|
+
m.template '../../model/templates/model.rb', File.join('app/models', class_path, "#{file_name}.rb")
|
20
|
+
m.template '../../model/templates/unit_test.rb', File.join('test/unit', class_path, "#{file_name}_test.rb")
|
15
21
|
end
|
16
22
|
end
|
@@ -1,2 +1,2 @@
|
|
1
|
-
class <%= class_name %>
|
1
|
+
class <%= class_name %> < ShatteredModel::Base
|
2
2
|
end
|
@@ -1,18 +1,28 @@
|
|
1
1
|
class ViewGenerator < Rails::Generator::NamedBase #:nodoc:
|
2
2
|
def manifest
|
3
3
|
record do |m|
|
4
|
-
|
4
|
+
self.class.check_collisions(m, class_path, class_name)
|
5
|
+
self.class.generate(m, class_path, file_name)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.check_collisions(m, class_path, class_name)
|
10
|
+
# Check for class naming collisions.
|
5
11
|
m.class_collisions class_path, "#{class_name}View"
|
12
|
+
end
|
13
|
+
def self.generate(m, class_path, file_name)
|
14
|
+
# Controller, helper, views, and test directories.
|
15
|
+
m.directory File.join('app/views', class_path)
|
16
|
+
m.directory File.join('app/media', class_path, file_name)
|
6
17
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
end
|
18
|
+
# Controller class, functional test, and helper class.
|
19
|
+
m.template '../../view/templates/view.rb',
|
20
|
+
File.join('app/views',
|
21
|
+
class_path,
|
22
|
+
"#{file_name}_view.rb")
|
23
|
+
m.file "../../../../../templates/media/default.mesh",
|
24
|
+
File.join( 'app/media', class_path, file_name, "#{file_name}.mesh")
|
25
|
+
m.file "../../../../../templates/media/default.png",
|
26
|
+
File.join( 'app/media', class_path, file_name, "#{file_name}.png")
|
17
27
|
end
|
18
28
|
end
|
@@ -1,6 +1,15 @@
|
|
1
|
+
# Don't change this file. Configuration is done in config/environment.rb
|
1
2
|
|
2
|
-
|
3
|
+
unless defined?(SHATTERED_ROOT)
|
4
|
+
root_path = File.join(File.dirname(__FILE__), '..')
|
3
5
|
|
6
|
+
unless RUBY_PLATFORM =~ /mswin32/
|
7
|
+
require 'pathname'
|
8
|
+
root_path = Pathname.new(root_path).cleanpath(true).to_s
|
9
|
+
end
|
10
|
+
|
11
|
+
SHATTERED_ROOT = root_path
|
12
|
+
end
|
4
13
|
|
5
14
|
def load_shattered_edge(path)
|
6
15
|
shatter_path = "#{path}/shatter/lib"
|
@@ -9,7 +18,6 @@ def load_shattered_edge(path)
|
|
9
18
|
require 'shatter'
|
10
19
|
end
|
11
20
|
|
12
|
-
|
13
21
|
def load_plugins(path)
|
14
22
|
Dir.foreach(path) do |plugin|
|
15
23
|
next if plugin == ".." || plugin == "."
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
|
|
3
3
|
specification_version: 1
|
4
4
|
name: shattered
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.
|
7
|
-
date: 2006-
|
6
|
+
version: "0.4"
|
7
|
+
date: 2006-09-10 00:00:00 -06:00
|
8
8
|
summary: "Shattered: The main package tieing together controller, view, and model"
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -33,11 +33,13 @@ files:
|
|
33
33
|
- bin/generate
|
34
34
|
- bin/runner
|
35
35
|
- bin/shatter
|
36
|
+
- lib/commands
|
36
37
|
- lib/game_loader.rb
|
37
38
|
- lib/rails_generator
|
38
39
|
- lib/rails_generator.rb
|
39
40
|
- lib/shatter.rb
|
40
41
|
- lib/templates
|
42
|
+
- lib/commands/console.rb
|
41
43
|
- lib/rails_generator/base.rb
|
42
44
|
- lib/rails_generator/commands.rb
|
43
45
|
- lib/rails_generator/generators
|
@@ -54,17 +56,11 @@ files:
|
|
54
56
|
- lib/rails_generator/generators/applications/shattered_app/shattered_app_generator.rb
|
55
57
|
- lib/rails_generator/generators/applications/shattered_app/USAGE
|
56
58
|
- lib/rails_generator/generators/components/actor
|
57
|
-
- lib/rails_generator/generators/components/controller
|
58
59
|
- lib/rails_generator/generators/components/model
|
59
60
|
- lib/rails_generator/generators/components/state
|
60
61
|
- lib/rails_generator/generators/components/view
|
61
62
|
- lib/rails_generator/generators/components/actor/actor_generator.rb
|
62
|
-
- lib/rails_generator/generators/components/
|
63
|
-
- lib/rails_generator/generators/components/controller/templates
|
64
|
-
- lib/rails_generator/generators/components/controller/USAGE
|
65
|
-
- lib/rails_generator/generators/components/controller/templates/controller.rb
|
66
|
-
- lib/rails_generator/generators/components/controller/templates/functional_test.rb
|
67
|
-
- lib/rails_generator/generators/components/controller/templates/view.rhtml
|
63
|
+
- lib/rails_generator/generators/components/actor/templates
|
68
64
|
- lib/rails_generator/generators/components/model/model_generator.rb
|
69
65
|
- lib/rails_generator/generators/components/model/templates
|
70
66
|
- lib/rails_generator/generators/components/model/USAGE
|
@@ -118,6 +114,8 @@ files:
|
|
118
114
|
- lib/templates/doc/README_FOR_APP
|
119
115
|
- lib/templates/environments/environment.rb
|
120
116
|
- lib/templates/media/basic.rmaterial
|
117
|
+
- lib/templates/media/default.mesh
|
118
|
+
- lib/templates/media/default.png
|
121
119
|
- lib/templates/media/offset_map.rmaterial
|
122
120
|
- lib/templates/test/test_helper.rb
|
123
121
|
test_files: []
|
@@ -141,7 +139,7 @@ dependencies:
|
|
141
139
|
requirements:
|
142
140
|
- - ">="
|
143
141
|
- !ruby/object:Gem::Version
|
144
|
-
version: 0.
|
142
|
+
version: "0.4"
|
145
143
|
version:
|
146
144
|
- !ruby/object:Gem::Dependency
|
147
145
|
name: shattered_pack
|
@@ -150,7 +148,7 @@ dependencies:
|
|
150
148
|
requirements:
|
151
149
|
- - ">="
|
152
150
|
- !ruby/object:Gem::Version
|
153
|
-
version: 0.
|
151
|
+
version: "0.4"
|
154
152
|
version:
|
155
153
|
- !ruby/object:Gem::Dependency
|
156
154
|
name: shattered_support
|
@@ -159,5 +157,5 @@ dependencies:
|
|
159
157
|
requirements:
|
160
158
|
- - ">="
|
161
159
|
- !ruby/object:Gem::Version
|
162
|
-
version: 0.
|
160
|
+
version: "0.4"
|
163
161
|
version:
|
@@ -1,30 +0,0 @@
|
|
1
|
-
Description:
|
2
|
-
The controller generator creates stubs for a new controller and its views.
|
3
|
-
|
4
|
-
The generator takes a controller name and a list of views as arguments.
|
5
|
-
The controller name may be given in CamelCase or under_score and should
|
6
|
-
not be suffixed with 'Controller'. To create a controller within a
|
7
|
-
module, specify the controller name as 'module/controller'.
|
8
|
-
|
9
|
-
The generator creates a controller class in app/controllers with view
|
10
|
-
templates in app/views/controller_name, a helper class in app/helpers,
|
11
|
-
and a functional test suite in test/functional.
|
12
|
-
|
13
|
-
Example:
|
14
|
-
./script/generate controller CreditCard open debit credit close
|
15
|
-
|
16
|
-
Credit card controller with URLs like /credit_card/debit.
|
17
|
-
Controller: app/controllers/credit_card_controller.rb
|
18
|
-
Views: app/views/credit_card/debit.rhtml [...]
|
19
|
-
Helper: app/helpers/credit_card_helper.rb
|
20
|
-
Test: test/functional/credit_card_controller_test.rb
|
21
|
-
|
22
|
-
Modules Example:
|
23
|
-
./script/generate controller 'admin/credit_card' suspend late_fee
|
24
|
-
|
25
|
-
Credit card admin controller with URLs /admin/credit_card/suspend.
|
26
|
-
Controller: app/controllers/admin/credit_card_controller.rb
|
27
|
-
Views: app/views/admin/credit_card/debit.rhtml [...]
|
28
|
-
Helper: app/helpers/admin/credit_card_helper.rb
|
29
|
-
Test: test/functional/admin/credit_card_controller_test.rb
|
30
|
-
|
@@ -1,32 +0,0 @@
|
|
1
|
-
class ControllerGenerator < Rails::Generator::NamedBase #:nodoc:
|
2
|
-
def manifest
|
3
|
-
record do |m|
|
4
|
-
# Check for class naming collisions.
|
5
|
-
m.class_collisions class_path, "#{class_name}Controller", "#{class_name}ControllerTest", "#{class_name}Helper"
|
6
|
-
|
7
|
-
# Controller, helper, views, and test directories.
|
8
|
-
m.directory File.join('app/controllers', class_path)
|
9
|
-
#m.directory File.join('app/helpers', class_path)
|
10
|
-
#m.directory File.join('app/views', class_path, file_name)
|
11
|
-
#m.directory File.join('test/functional', class_path)
|
12
|
-
|
13
|
-
# Controller class, functional test, and helper class.
|
14
|
-
m.template 'controller.rb',
|
15
|
-
File.join('app/controllers',
|
16
|
-
class_path,
|
17
|
-
"#{file_name}_controller.rb")
|
18
|
-
|
19
|
-
# Functional tests are a good idea, but not yet encompassed
|
20
|
-
# m.template 'functional_test.rb',
|
21
|
-
# File.join('test/functional',
|
22
|
-
# class_path,
|
23
|
-
# "#{file_name}_controller_test.rb")
|
24
|
-
|
25
|
-
# m.template 'helper.rb',
|
26
|
-
# File.join('app/helpers',
|
27
|
-
# class_path,
|
28
|
-
# "#{file_name}_helper.rb")
|
29
|
-
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + '<%= '/..' * class_nesting_depth %>/../test_helper'
|
2
|
-
require '<%= file_path %>_controller'
|
3
|
-
|
4
|
-
# Re-raise errors caught by the controller.
|
5
|
-
class <%= class_name %>Controller; def rescue_action(e) raise e end; end
|
6
|
-
|
7
|
-
class <%= class_name %>ControllerTest < Test::Unit::TestCase
|
8
|
-
def setup
|
9
|
-
@controller = <%= class_name %>Controller.new
|
10
|
-
@request = ActionController::TestRequest.new
|
11
|
-
@response = ActionController::TestResponse.new
|
12
|
-
end
|
13
|
-
|
14
|
-
# Replace this with your real tests.
|
15
|
-
def test_truth
|
16
|
-
assert true
|
17
|
-
end
|
18
|
-
end
|