gamefic-sdk 2.3.0 → 2.4.0

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.
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: []