gamefic 4.0.1 → 4.1.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: dc53c7427d9e153ee3a41dfe297cf2c038733024a8d79c6feec8e648f6efd83a
4
- data.tar.gz: 88be2b8ba3d282e762692f39ce63fde315609d0b2f9a766f0a99ede59554ba30
3
+ metadata.gz: e5aaa5c2e7e709434b596c7bd216138ccc693d3893c56ed87ee54640e545d729
4
+ data.tar.gz: a7f12b8da551d9f97b279e6050333561e5d348940681cab7cf894f97a9eca085
5
5
  SHA512:
6
- metadata.gz: d97432e274e89b7202df2c5f1bebae60450db5c71813cf8f7c711997920fa1e41ca2a63e22bdb29b2e77b29b37174858e61e145004440b1dfa0c96403cd5d6b4
7
- data.tar.gz: 89023cc5765cabb26c86848ae73fd2871b22015aaeeadd48307ddbea004cb1ecb9a857d3e870b63497fc19405d7e07848643ede4bd80bf90336057ba2d9d49be
6
+ metadata.gz: b15fe4c2f586a9164a3166273c15638e548fbcf78d3f3e5bef41f55a8c054c06f1d5a16c62cbb13a252e635e0416c5fcb6da1f8574a1ac3323bb117d76f78fea
7
+ data.tar.gz: d26cb35d5a6fcae8f4c3511e2b22339491b5773d2288914c1125eeb38da4db51440e5780c28b1b4aec0344bb819f4abb97323d9ef5bcf21404667edf28705fe7
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 4.1.0 - February 1, 2025
2
+ - Correct Scenes#pause block
3
+
1
4
  ## 4.0.1 - January 26, 2025
2
5
  - Cue#prepare flushes messages
3
6
 
@@ -114,16 +114,26 @@ module Gamefic
114
114
  block Class.new(Scene::YesOrNo, &block), name
115
115
  end
116
116
 
117
+ # Create an active choice scene.
118
+ #
117
119
  # @param name [Symbol, nil]
118
120
  # @return [Class<Scene::ActiveChoice>]
119
121
  def active_choice(name = nil, &block)
120
122
  block Class.new(Scene::ActiveChoice, &block), name
121
123
  end
122
124
 
125
+ # Create a pause.
126
+ # The block will be executed at the start of the scene and the player
127
+ # will be prompted to press enter to continue.
128
+ #
123
129
  # @param name [Symbol, nil]
130
+ # @yieldparam [Actor]
131
+ # @yieldparam [Props::Default]
124
132
  # @return [Class<Scene::Pause>]
125
133
  def pause(name = nil, &block)
126
- block Class.new(Scene::Pause, &block), name
134
+ block(Class.new(Scene::Pause) do
135
+ on_start(&block)
136
+ end, name)
127
137
  end
128
138
 
129
139
  # Create a conclusion.
@@ -136,6 +146,8 @@ module Gamefic
136
146
  # end
137
147
  #
138
148
  # @param name [Symbol, nil]
149
+ # @yieldparam [Actor]
150
+ # @yieldparam [Props::Default]
139
151
  # @return [Class<Scene::Conclusion>]
140
152
  def conclusion(name = nil, &block)
141
153
  block(Class.new(Scene::Conclusion) do
@@ -3,10 +3,22 @@
3
3
  module Gamefic
4
4
  module Scriptable
5
5
  module Seeds
6
+ # @return [Array<Proc>]
6
7
  def seeds
7
8
  @seeds ||= []
8
9
  end
9
10
 
11
+ # Set methods and procs that get executed when a narrative gets initialized.
12
+ #
13
+ # @example
14
+ # class Example < Gamefic::Plot
15
+ # attr_reader :thing
16
+ #
17
+ # seed do
18
+ # @thing = make Entity, name: 'thing'
19
+ # end
20
+ # end
21
+ #
10
22
  def seed *methods, &block
11
23
  seeds.push(proc { methods.flatten.each { |method| send(method) } }) unless methods.empty?
12
24
  seeds.push block if block
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Gamefic
4
- VERSION = '4.0.1'
4
+ VERSION = '4.1.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gamefic
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.1
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fred Snyder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-01-26 00:00:00.000000000 Z
11
+ date: 2025-02-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opal