gamefic 4.0.1 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/gamefic/scriptable/scenes.rb +13 -1
- data/lib/gamefic/scriptable/seeds.rb +12 -0
- data/lib/gamefic/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e5aaa5c2e7e709434b596c7bd216138ccc693d3893c56ed87ee54640e545d729
|
4
|
+
data.tar.gz: a7f12b8da551d9f97b279e6050333561e5d348940681cab7cf894f97a9eca085
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b15fe4c2f586a9164a3166273c15638e548fbcf78d3f3e5bef41f55a8c054c06f1d5a16c62cbb13a252e635e0416c5fcb6da1f8574a1ac3323bb117d76f78fea
|
7
|
+
data.tar.gz: d26cb35d5a6fcae8f4c3511e2b22339491b5773d2288914c1125eeb38da4db51440e5780c28b1b4aec0344bb819f4abb97323d9ef5bcf21404667edf28705fe7
|
data/CHANGELOG.md
CHANGED
@@ -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
|
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
|
data/lib/gamefic/version.rb
CHANGED
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
|
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
|
11
|
+
date: 2025-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: opal
|