gamefic-sdk 2.3.0 → 2.4.0

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
  SHA256:
3
- metadata.gz: f10176e643c4b2c2d6cfaab7cc0e9ef02b5e1d2611663c3722b22fd26f8a19ff
4
- data.tar.gz: 8337ecbafa9ddfc546f1002bf176f507447640429ea110c96b544c046e52c205
3
+ metadata.gz: 76da51db81b6dc52df2c2c5e845f778ff9a9d71154f707b19ae387f391b8e6b2
4
+ data.tar.gz: 2ac813718878085ddf4480afea7b833aba67bf4f090729719d06b03f322a17ac
5
5
  SHA512:
6
- metadata.gz: 7e89c8edd366ac6e4a36b9edfa5bf7240ff344297e6ccfcef105ee92c3ee4f7ce7ac771498f32cf2bbdc69562a292bd1b4de9eeecc9ea3e06e54d0a646130ccb
7
- data.tar.gz: 241fbc39235327f6e03aefb68955650a73f17508212f5482ebb9bdaebb82e449fefd0aeb4f04198054aad49ea07505c2f080f4e3a526e3b6e22645803c22e6b8
6
+ metadata.gz: 59fdb821c8e7fc454182c69b91bc9915b0086e4aaa2048de90c22b5cbf74c62ef216a7ca25a972e3c1786170ed1c5a1ca46fac668bb6ebf9eeff6c0aade26f07
7
+ data.tar.gz: 6646a38f8a8bd6dcf0c50fccc48cdad108adf5122a2c6a047ecc1ae675d95d5ce1d6f3a153df72b0962c322e9b9973e60e9fb7536a9e7c37e4095686e5f9006e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ ## 2.4.0 - September 9, 2021
2
+ - Update dependencies
3
+ - README template formatting
4
+ - Fix /restore in development server
5
+
6
+ ## 2.3.3 - July 3, 2021
7
+ - Rename READMEs in scaffolds so they get rendered
8
+ - Update gamefic dependency
9
+ - Fix bundle install in scaffold build
10
+
11
+ ## 2.3.2 - March 11, 2021
12
+ - Add READMEs to project scaffolds
13
+ - Disable css-loader esModule option in webpack config
14
+
15
+ ## 2.3.1 - March 3, 2021
16
+ - Update opal dependency
17
+
1
18
  ## 2.3.0 - December 14, 2020
2
19
  - Update package dependencies for web builds
3
20
 
data/gamefic-sdk.gemspec CHANGED
@@ -24,17 +24,17 @@ Gem::Specification.new do |s|
24
24
 
25
25
  s.required_ruby_version = '>= 2.3.0'
26
26
 
27
- s.add_runtime_dependency 'gamefic', '~> 2.0', '>= 2.0.2'
27
+ s.add_runtime_dependency 'gamefic', '~> 2.0', '>= 2.1.1'
28
28
  s.add_runtime_dependency 'gamefic-standard', '~> 2.0'
29
- s.add_runtime_dependency 'gamefic-tty', '~> 2.0', '>= 2.0.1'
29
+ s.add_runtime_dependency 'gamefic-tty', '~> 2.0', '>= 2.0.2'
30
30
  s.add_runtime_dependency 'listen', '~> 3.0'
31
- s.add_runtime_dependency 'opal', '~> 1.0'
31
+ s.add_runtime_dependency 'opal', '~> 1.1'
32
32
  s.add_runtime_dependency 'sinatra', '~> 2'
33
33
  s.add_runtime_dependency 'thor', '~> 1.0'
34
34
 
35
35
  s.add_development_dependency 'bundler', '~> 2.0'
36
36
  s.add_development_dependency 'capybara', '~> 3.3'
37
- s.add_development_dependency 'puma', '~> 3'
37
+ s.add_development_dependency 'puma', '~> 4'
38
38
  s.add_development_dependency 'rake', '~> 13.0'
39
39
  s.add_development_dependency 'rspec', '~> 3.0'
40
40
  s.add_development_dependency 'selenium-webdriver', '~> 3.13'
@@ -47,7 +47,7 @@ module Gamefic
47
47
  end
48
48
  end
49
49
  map.each_pair { |src, dst| custom_copy src, dst, data }
50
- system "bundle install --gemfile=#{Shellwords.escape(File.join(destination, 'Gemfile'))}"
50
+ system "cd #{Shellwords.escape(destination)} && bundle install"
51
51
  end
52
52
  end
53
53
  end
@@ -13,12 +13,7 @@ module Gamefic
13
13
 
14
14
  post '/start' do
15
15
  content_type :json
16
- reset_features
17
- load File.join(settings.source_dir, 'main.rb')
18
- @@plot = Gamefic::Plot.new
19
- @@character = @@plot.get_player_character
20
- @@plot.introduce @@character
21
- @@plot.ready
16
+ start_plot
22
17
  @@character.output.to_json
23
18
  end
24
19
 
@@ -42,6 +37,7 @@ module Gamefic
42
37
 
43
38
  post '/restore' do
44
39
  content_type :json
40
+ start_plot
45
41
  # The snapshot needs to be received as a JSON string because of issues
46
42
  # with IndifferentHash malforming arrays.
47
43
  snapshot = JSON.parse(params['snapshot'])
@@ -52,6 +48,15 @@ module Gamefic
52
48
  @@character.output.to_json
53
49
  end
54
50
 
51
+ def start_plot
52
+ reset_features
53
+ load File.join(settings.source_dir, 'main.rb')
54
+ @@plot = Gamefic::Plot.new
55
+ @@character = @@plot.get_player_character
56
+ @@plot.introduce @@character
57
+ @@plot.ready
58
+ end
59
+
55
60
  def reset_features
56
61
  @@old_features ||= $LOADED_FEATURES.clone
57
62
  @@old_constants ||= Object.constants(false)
@@ -1,5 +1,5 @@
1
1
  module Gamefic
2
2
  module Sdk
3
- VERSION = '2.3.0'
3
+ VERSION = '2.4.0'
4
4
  end
5
5
  end
@@ -0,0 +1,19 @@
1
+ # <%= name %>
2
+
3
+ An extension library for Gamefic
4
+
5
+ ## Installation
6
+
7
+ Add this line to your Gamefic project's Gemfile:
8
+
9
+ ```ruby
10
+ gem '<%= name %>'
11
+ ```
12
+
13
+ And then execute:
14
+
15
+ $ bundle install
16
+
17
+ ## Usage
18
+
19
+ TODO: Write usage instructions here
@@ -0,0 +1,44 @@
1
+ # <%= name %>
2
+
3
+ A Gamefic game project
4
+
5
+ ## Installation
6
+
7
+ $ bundle install
8
+
9
+ ## Running on the Command Line
10
+
11
+ $ rake ruby:run
12
+
13
+ ## Building a CLI Game
14
+
15
+ $ rake ruby:build
16
+
17
+ The script will be saved in the `builds/ruby` directory.
18
+
19
+ ## Web-Based Games
20
+
21
+ The Gamefic SDK also supports web-based versions of games. The project gets built into a single-page application with the Ruby game code compiled into JavaScript.
22
+
23
+ First you need to install the web project scaffold:
24
+
25
+ $ rake web:generate
26
+ $ npm install
27
+
28
+ ## Running a Web Game
29
+
30
+ To run the app in debug mode:
31
+
32
+ $ rake web:run
33
+
34
+ Open http://localhost:4342 in a browser.
35
+
36
+ ## Building a Web Game
37
+
38
+ $ rake web:build
39
+
40
+ The application will be saved in the `builds/web/production` directory.
41
+
42
+ ## More Information
43
+
44
+ Go to https://gamefic.com for documentation.
@@ -23,27 +23,30 @@ module.exports = (_env, argv) => {
23
23
  })
24
24
  ],
25
25
  module: {
26
- rules: [
27
- {
28
- test: /\.css$/,
29
- use: ['style-loader', 'css-loader']
30
- },
31
- {
32
- test: /\.(png|jp(e*)g|svg)$/,
33
- use: [{
34
- loader: 'url-loader',
35
- options: {
36
- limit: 8000, // Convert images < 8kb to base64 strings
37
- name: 'images/[hash]-[name].[ext]'
38
- }
39
- }]
40
- },
41
- {
42
- test: /\.jsx?/,
43
- include: path.resolve(__dirname, 'web'),
44
- use: 'babel-loader'
26
+ rules: [
27
+ {
28
+ test: /\.css$/,
29
+ use: [
30
+ 'style-loader',
31
+ { loader: 'css-loader', options: { esModule: false } }
32
+ ]
33
+ },
34
+ {
35
+ test: /\.(png|jp(e*)g|svg)$/,
36
+ use: [{
37
+ loader: 'url-loader',
38
+ options: {
39
+ limit: 8000, // Convert images < 8kb to base64 strings
40
+ name: 'images/[hash]-[name].[ext]'
45
41
  }
46
- ]
42
+ }]
43
+ },
44
+ {
45
+ test: /\.jsx?/,
46
+ include: path.resolve(__dirname, 'web'),
47
+ use: 'babel-loader'
48
+ }
49
+ ]
47
50
  }
48
51
  }
49
52
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gamefic-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fred Snyder
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-14 00:00:00.000000000 Z
11
+ date: 2021-09-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gamefic
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '2.0'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 2.0.2
22
+ version: 2.1.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '2.0'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 2.0.2
32
+ version: 2.1.1
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: gamefic-standard
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -53,7 +53,7 @@ dependencies:
53
53
  version: '2.0'
54
54
  - - ">="
55
55
  - !ruby/object:Gem::Version
56
- version: 2.0.1
56
+ version: 2.0.2
57
57
  type: :runtime
58
58
  prerelease: false
59
59
  version_requirements: !ruby/object:Gem::Requirement
@@ -63,7 +63,7 @@ dependencies:
63
63
  version: '2.0'
64
64
  - - ">="
65
65
  - !ruby/object:Gem::Version
66
- version: 2.0.1
66
+ version: 2.0.2
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: listen
69
69
  requirement: !ruby/object:Gem::Requirement
@@ -84,14 +84,14 @@ dependencies:
84
84
  requirements:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
- version: '1.0'
87
+ version: '1.1'
88
88
  type: :runtime
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: '1.0'
94
+ version: '1.1'
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: sinatra
97
97
  requirement: !ruby/object:Gem::Requirement
@@ -154,14 +154,14 @@ dependencies:
154
154
  requirements:
155
155
  - - "~>"
156
156
  - !ruby/object:Gem::Version
157
- version: '3'
157
+ version: '4'
158
158
  type: :development
159
159
  prerelease: false
160
160
  version_requirements: !ruby/object:Gem::Requirement
161
161
  requirements:
162
162
  - - "~>"
163
163
  - !ruby/object:Gem::Version
164
- version: '3'
164
+ version: '4'
165
165
  - !ruby/object:Gem::Dependency
166
166
  name: rake
167
167
  requirement: !ruby/object:Gem::Requirement
@@ -248,10 +248,12 @@ files:
248
248
  - lib/gamefic-sdk/tasks/web.rb
249
249
  - lib/gamefic-sdk/version.rb
250
250
  - scaffolds/library/Gemfile
251
+ - scaffolds/library/README.md.gf.erb
251
252
  - scaffolds/library/__name__.gemspec.gf.erb
252
253
  - scaffolds/library/lib/__name__.rb
253
254
  - scaffolds/project/.gitignore
254
255
  - scaffolds/project/Gemfile
256
+ - scaffolds/project/README.md.gf.erb
255
257
  - scaffolds/project/Rakefile
256
258
  - scaffolds/project/main.rb.gf.erb
257
259
  - scaffolds/react/.babelrc
@@ -272,7 +274,7 @@ homepage: http://gamefic.com
272
274
  licenses:
273
275
  - MIT
274
276
  metadata: {}
275
- post_install_message:
277
+ post_install_message:
276
278
  rdoc_options: []
277
279
  require_paths:
278
280
  - lib
@@ -287,8 +289,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
287
289
  - !ruby/object:Gem::Version
288
290
  version: '0'
289
291
  requirements: []
290
- rubygems_version: 3.1.2
291
- signing_key:
292
+ rubygems_version: 3.1.6
293
+ signing_key:
292
294
  specification_version: 4
293
295
  summary: Gamefic SDK
294
296
  test_files: []