cyross-ruby-miyako 2.0.0 → 2.0.5.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.
Files changed (102) hide show
  1. data/README +106 -154
  2. data/defines.h +144 -0
  3. data/{miyako_no_katana/extconf.rb → extconf.rb} +10 -0
  4. data/extern.h +29 -0
  5. data/install_miyako.rb +26 -14
  6. data/lib/Miyako/API/audio.rb +2 -2
  7. data/lib/Miyako/API/basic_data.rb +183 -41
  8. data/lib/Miyako/API/bitmap.rb +474 -2
  9. data/lib/Miyako/API/choices.rb +215 -48
  10. data/lib/Miyako/API/collision.rb +267 -251
  11. data/lib/Miyako/API/diagram.rb +58 -70
  12. data/lib/Miyako/API/drawing.rb +93 -52
  13. data/lib/Miyako/API/fixedmap.rb +233 -120
  14. data/lib/Miyako/API/font.rb +59 -40
  15. data/lib/Miyako/API/input.rb +34 -27
  16. data/lib/Miyako/API/layout.rb +154 -172
  17. data/lib/Miyako/API/map.rb +285 -159
  18. data/lib/Miyako/API/map_event.rb +4 -4
  19. data/lib/Miyako/API/modules.rb +1 -1
  20. data/lib/Miyako/API/movie.rb +8 -5
  21. data/lib/Miyako/API/parts.rb +44 -9
  22. data/lib/Miyako/API/plane.rb +37 -2
  23. data/lib/Miyako/API/screen.rb +90 -22
  24. data/lib/Miyako/API/shape.rb +118 -37
  25. data/lib/Miyako/API/sprite.rb +475 -61
  26. data/lib/Miyako/API/sprite_animation.rb +83 -63
  27. data/lib/Miyako/API/spriteunit.rb +47 -13
  28. data/lib/Miyako/API/story.rb +123 -47
  29. data/lib/Miyako/API/textbox.rb +361 -132
  30. data/lib/Miyako/API/utility.rb +388 -0
  31. data/lib/Miyako/API/viewport.rb +54 -349
  32. data/lib/Miyako/API/yuki.rb +570 -353
  33. data/lib/Miyako/EXT/miyako_cairo.rb +5 -3
  34. data/lib/Miyako/EXT/slides.rb +22 -1
  35. data/lib/Miyako/miyako.rb +12 -13
  36. data/logo/EGSR_logo.png +0 -0
  37. data/logo/EGSR_logo_bg.png +0 -0
  38. data/logo/EGSR_logo_fg.png +0 -0
  39. data/logo/EGSR_title_banner.png +0 -0
  40. data/logo/EGSR_title_logo.png +0 -0
  41. data/logo/miyako.png +0 -0
  42. data/logo/miyako_banner.png +0 -0
  43. data/logo/space.png +0 -0
  44. data/miyako_basicdata.c +590 -0
  45. data/miyako_bitmap.c +1225 -0
  46. data/miyako_collision.c +403 -0
  47. data/miyako_drawing.c +187 -0
  48. data/miyako_font.c +334 -0
  49. data/miyako_hsv.c +830 -0
  50. data/miyako_layout.c +191 -0
  51. data/miyako_no_katana.c +1074 -0
  52. data/miyako_transform.c +438 -0
  53. data/miyako_utility.c +288 -0
  54. data/sample/Animation1/m1ku.rb +10 -31
  55. data/sample/Animation1/readme.txt +6 -6
  56. data/sample/Animation2/lex.rb +1 -0
  57. data/sample/Animation2/readme.txt +6 -6
  58. data/sample/Diagram_sample/diagram_sample_yuki2.rb +152 -48
  59. data/sample/Diagram_sample/readme.txt +9 -6
  60. data/sample/Room3/blue.rb +234 -187
  61. data/sample/Room3/ending.rb +68 -63
  62. data/sample/Room3/green.rb +159 -124
  63. data/sample/Room3/main.rb +50 -32
  64. data/sample/Room3/main_component.rb +3 -2
  65. data/sample/Room3/readme.txt +6 -6
  66. data/sample/Room3/red.rb +161 -134
  67. data/sample/Room3/room3.rb +1 -0
  68. data/sample/Room3/title.rb +75 -62
  69. data/sample/ball_action_sample.rb +204 -0
  70. data/sample/blit_rop.rb +70 -0
  71. data/sample/cairo_sample.rb +25 -0
  72. data/sample/circle_collision_test.rb +66 -0
  73. data/sample/collision_test.rb +33 -0
  74. data/sample/collision_test2.rb +108 -0
  75. data/sample/fixed_map_test/fixed_map_sample.rb +23 -32
  76. data/sample/fixed_map_test/readme.txt +38 -38
  77. data/sample/map_test/chara.rb +17 -9
  78. data/sample/map_test/main_parts.rb +30 -9
  79. data/sample/map_test/main_scene.rb +57 -41
  80. data/sample/map_test/map_manager.rb +13 -30
  81. data/sample/map_test/map_test.rb +2 -2
  82. data/sample/map_test/oasis.rb +17 -11
  83. data/sample/map_test/readme.txt +50 -48
  84. data/sample/map_test/route.rb +46 -33
  85. data/sample/map_test/town.rb +19 -13
  86. data/sample/polygon_test.rb +35 -0
  87. data/sample/rasterscroll.rb +25 -0
  88. data/sample/takahashi.rb +42 -0
  89. data/sample/text.png +0 -0
  90. data/sample/textbox_sample.rb +190 -0
  91. data/sample/transform.rb +54 -0
  92. data/sample/utility_test.rb +73 -0
  93. data/sample/utility_test2.rb +61 -0
  94. data/sample/utility_test3.rb +64 -0
  95. data/sample/utility_test4.rb +73 -0
  96. data/uninstall_miyako.rb +19 -0
  97. data/win/miyako_no_katana.so +0 -0
  98. metadata +165 -148
  99. data/miyako.png +0 -0
  100. data/miyako_banner.png +0 -0
  101. data/miyako_no_katana/miyako_no_katana.c +0 -3301
  102. data/sample/fixed_map_test/map_sample.rb +0 -121
data/sample/Room3/main.rb CHANGED
@@ -1,74 +1,92 @@
1
+ # -*- encoding: utf-8 -*-
1
2
  class MainScene
2
3
  include Story::Scene
3
4
  include MainComponent
4
5
 
5
6
  def init
6
- @yuki = Yuki.new
7
- @yuki.select_textbox(message_box[:box])
8
- @yuki.select_commandbox(command_box[:box])
7
+ @yuki = Yuki.new(message_box[:box], command_box[:box]){|box, cbox|
8
+ select_textbox(box)
9
+ select_commandbox(cbox)
10
+ }
11
+ @yuki.select_plot(plot)
9
12
  @doors = Sprite.new(:file=>"image/three_doors.png", :type=>:as)
10
13
  @doors.center.bottom
11
14
 
12
15
  var[:sekkaku] = true if var[:sekkaku] == nil
13
16
  var[:aikotoba] = false if var[:aikotoba] == nil
17
+
18
+ @yuki.vars[:var] = var
19
+ @yuki.vars[:tell_aikotoba] = tell_aikotoba
20
+ @yuki.vars[:ending] = Ending
21
+ @yuki.vars[:red] = Red
22
+ @yuki.vars[:blue] = Blue
23
+ @yuki.vars[:green] = Green
24
+ @yuki.vars[:now] = @now
25
+ @yuki.vars[:command]= get_command
14
26
  end
15
27
 
16
28
  def setup
17
29
  @yuki.setup
18
30
  message_box.start
19
31
  command_box.start
20
- @yuki.exec_plot(self.method(:plot))
32
+ @yuki.start_plot(plot)
21
33
  end
22
-
34
+
23
35
  def update
24
36
  return nil if Input.quit_or_escape?
25
37
  message_box.update_animation
26
38
  command_box.update_animation
27
39
  @yuki.update
28
40
  r = @yuki.executing? ? @now : @yuki.result
29
- @yuki.exec_plot(self.method(:plot)) if (@yuki.executing? == false && r == @now)
41
+ @yuki.start_plot(plot) if (@yuki.executing? == false && r == @now)
30
42
  return r
31
43
  end
32
44
 
33
45
  def get_command
34
46
  return [Yuki::Command.new("緑の扉から入る", nil, nil, Green),
35
- Yuki::Command.new("赤の扉から入る", nil, lambda{var[:sekkaku] == true }, self.method(:red_sekkaku)),
47
+ Yuki::Command.new("赤の扉から入る", nil, lambda{var[:sekkaku] == true }, red_sekkaku),
36
48
  Yuki::Command.new("赤の扉から入る", nil, lambda{var[:sekkaku] == false}, Red),
37
49
  Yuki::Command.new("青の扉から入る", nil, nil, Blue),
38
- Yuki::Command.new("合い言葉を言う", nil, lambda{var[:aikotoba] == true}, self.method(:tell_aikotoba))]
50
+ Yuki::Command.new("合い言葉を言う", nil, lambda{var[:aikotoba] == true}, tell_aikotoba)]
39
51
  end
40
52
 
41
- def plot(yuki)
42
- ret = @now
43
- yuki.text "目の前には緑、赤、青の3つの扉がある。"
44
- yuki.cr
45
- yuki.text "どうする?"
46
- yuki.cr
47
- yuki.command get_command
48
- ret = yuki.select_result if yuki.is_scene?(yuki.select_result)
49
- ret = yuki.select_result.call(yuki) if yuki.is_scenario?(yuki.select_result)
50
- yuki.clear
51
- var[:sekkaku] = false
52
- return ret
53
+ def plot
54
+ yuki_plot{
55
+ ret = vars[:now]
56
+ text "目の前には緑、赤、青の3つの扉がある。"
57
+ cr
58
+ text "どうする?"
59
+ cr
60
+ command vars[:command]
61
+ ret = select_result if is_scene?(select_result)
62
+ ret = call_plot(select_result) if is_scenario?(select_result)
63
+ clear
64
+ vars[:var][:sekkaku] = false
65
+ ret
66
+ }
53
67
  end
54
68
 
55
69
  def main_command
56
70
  end
57
71
 
58
- def red_sekkaku(yuki)
59
- yuki.text "せっかくだから、赤の扉に入ってみよう"
60
- yuki.pause.clear
61
- return Red
72
+ def red_sekkaku
73
+ yuki_plot{
74
+ text "せっかくだから、赤の扉に入ってみよう"
75
+ pause.clear
76
+ vars[:red]
77
+ }
62
78
  end
63
79
 
64
- def tell_aikotoba(yuki)
65
- yuki.text "「こんなゲーム、"
66
- yuki.wait 0.5
67
- yuki.text "まじになっちゃって "
68
- yuki.wait 0.5
69
- yuki.text "どうするの!」"
70
- yuki.pause.clear
71
- return Ending
80
+ def tell_aikotoba
81
+ yuki_plot{
82
+ text "「こんなゲーム、"
83
+ wait 0.5
84
+ text "まじになっちゃって "
85
+ wait 0.5
86
+ text "どうするの!」"
87
+ pause.clear
88
+ vars[:ending]
89
+ }
72
90
  end
73
91
 
74
92
  def render
@@ -1,3 +1,4 @@
1
+ # -*- encoding: utf-8 -*-
1
2
  # 共通部品クラス
2
3
  # メッセージテキストボックス、コマンドボックスを定義
3
4
  module MainComponent
@@ -13,9 +14,9 @@ module MainComponent
13
14
  sc = SpriteAnimation.new(:sprite => sc, :wait => 0.2, :pattern_list => [0, 1, 2, 3, 2, 1])
14
15
 
15
16
  tb = TextBox.new(:size=>size, :font=>font, :wait_cursor=>wc, :select_cursor=>sc)
16
- tb.pause_type = :out # ウェイトカーソルとボックスの真下に
17
+ tb.set_wait_cursor_position{|wc,tbox| wc.right.bottom } # ウェイトカーソルとボックスの右下に
17
18
 
18
- bg = Sprite.new(:size=>tb.size, :type=>:ac)
19
+ bg = Sprite.new(:size=>tb.size.map{|n| n + 4}, :type=>:ac)
19
20
  bg.fill(color)
20
21
 
21
22
  box = Parts.new(bg.size)
@@ -1,11 +1,11 @@
1
1
  *******************************************************************************
2
2
  �y ��Җ� �z�@�T�C���X��
3
- �y �\�t�g�� �z�@Miyako v1.5�T���v��(�A�h�x���`���[�Q�[���u�݂��‚̕����v)
4
- �y �o�[�W���� �z�@1.0
5
- �y �쐬�� �z�@2008/03/22
3
+ �y �\�t�g�� �z�@Miyako v2.0�T���v��(�A�h�x���`���[�Q�[���u�݂��‚̕����v)
4
+ �y �o�[�W���� �z�@2.0
5
+ �y �쐬�� �z�@2009/04/13
6
6
  �y ��� �z�@�t���[�E�F�A
7
- �y �J������ �z�@Ruby 1.8.6-p111
8
- �y �����^�C�� �z�@Miyako v1.5(pre4-)
7
+ �y �J������ �z�@Ruby 1.9.1-p0
8
+ �y �����^�C�� �z�@Miyako v2.0
9
9
  �y �Ή��@�� �z�@Windows 2000/XP/Vista�ALinux
10
10
  �y �Ĕz�z �z�@�C��BSD���C�Z���X�ɂ��
11
11
  �y �]�� �z�@�C��BSD���C�Z���X�ɂ��
@@ -15,7 +15,7 @@
15
15
 
16
16
  �E�T�v
17
17
 
18
- �@���̃v���O�����́AMiyako v1.5(pre4)�ȍ~�ɑΉ�����AMiyako�T���v���v���O�����ł��B
18
+ �@���̃v���O�����́AMiyako v2.0�ȍ~�ɑΉ�����AMiyako�T���v���v���O�����ł��B
19
19
  �@�A�h�x���`���[�Q�[����V�Ԃ��Ƃ��ł��܂��B
20
20
  �@�Ƃ���e���r�ԑg�̃Q�[���R�[�i�[�A�R�‚̕����̌������ɂ���A��ؓ�ł͂����Ȃ��ʁX���ǂ��ɂ����āA�N���A�ɕK�v�ȁu�������t�v�����‚��o���Ă��������B
21
21
 
data/sample/Room3/red.rb CHANGED
@@ -1,11 +1,18 @@
1
+ # -*- encoding: utf-8 -*-
1
2
  class Red
2
3
  include Story::Scene
3
4
  include MainComponent
4
5
 
5
6
  def init
6
- @yuki = Yuki.new
7
- @yuki.select_textbox(message_box[:box])
8
- @yuki.select_commandbox(command_box[:box])
7
+ @yuki = Yuki.new(message_box[:box], command_box[:box]) do |box, cbox|
8
+ select_textbox(box)
9
+ select_commandbox(cbox)
10
+ end
11
+ def @yuki.text_wait(txt, w = 0.3)
12
+ text txt
13
+ wait w
14
+ end
15
+
9
16
  @akamatsu = Sprite.new(:file => "image/akamatsu.png", :type => :ck)
10
17
  @akamatsu.center.bottom
11
18
  @yuki.regist_parts(:akamatsu, @akamatsu)
@@ -17,19 +24,25 @@ class Red
17
24
  var[:release_akamatsu_book] = false if var[:release_akamatsu_book] == nil
18
25
  var[:search_bookmark] = false if var[:search_bookmark] == nil
19
26
  var[:get_bookmark] = false if var[:get_bookmark] == nil
27
+
28
+ @yuki.vars[:var] = var
29
+ @yuki.vars[:command] = get_command
30
+ @yuki.vars[:main_loop] = main_loop
20
31
  end
21
32
 
22
33
  def setup
23
34
  @yuki.setup
24
- @yuki.exec_plot(self.method(:plot))
35
+ message_box.start
36
+ command_box.start
37
+ @yuki.start_plot(plot)
25
38
  end
26
39
 
27
40
  def get_command
28
- return [Yuki::Command.new("挨拶する", nil, lambda{var[:akamatsu_aisatsu] == false}, self.method(:red2)),
29
- Yuki::Command.new("辺りを見る", nil, lambda{var[:akamatsu_aisatsu]==true }, self.method(:look)),
30
- Yuki::Command.new("話す", nil, lambda{var[:akamatsu_aisatsu]==true }, self.method(:talk)),
31
- Yuki::Command.new("渡す", nil, lambda{var[:akamatsu_aisatsu] && var[:release_akamatsu_book] && var[:search_bookmark]==false}, self.method(:send1)),
32
- Yuki::Command.new("渡す", nil, lambda{var[:search_bookmark] && var[:get_bookmark] && var[:aikotoba]==false}, self.method(:send2)),
41
+ return [Yuki::Command.new("挨拶する", nil, lambda{var[:akamatsu_aisatsu] == false}, red2),
42
+ Yuki::Command.new("辺りを見る", nil, lambda{var[:akamatsu_aisatsu]==true }, look),
43
+ Yuki::Command.new("話す", nil, lambda{var[:akamatsu_aisatsu]==true }, talk),
44
+ Yuki::Command.new("渡す", nil, lambda{var[:akamatsu_aisatsu] && var[:release_akamatsu_book] && var[:search_bookmark]==false}, send1),
45
+ Yuki::Command.new("渡す", nil, lambda{var[:search_bookmark] && var[:get_bookmark] && var[:aikotoba]==false}, send2),
33
46
  Yuki::Command.new("戻る", nil, lambda{var[:akamatsu_aisatsu]==true}, MainScene)]
34
47
  end
35
48
 
@@ -40,7 +53,7 @@ class Red
40
53
  @yuki.update
41
54
  r = @yuki.executing? ? @now : @yuki.result
42
55
  if @yuki.is_scenario?(r)
43
- @yuki.exec_plot(r)
56
+ @yuki.start_plot(r)
44
57
  r = @now
45
58
  end
46
59
  return r
@@ -53,144 +66,158 @@ class Red
53
66
  command_box.render if @yuki.selecting?
54
67
  end
55
68
 
56
- def plot(yuki)
57
- yuki.text "赤の扉から中に入った。"
58
- yuki.pause.clear
59
- yuki.show :akamatsu
60
- yuki.text "目の前には"
61
- yuki.color(:red){var[:akamatsu_aisatsu] ? "赤松さん" : "男の人"}
62
- yuki.text "が居る。"
63
- yuki.cr
64
- return self.method(:main_loop)
69
+ def plot
70
+ yuki_plot do
71
+ text "赤の扉から中に入った。"
72
+ pause.clear
73
+ show :akamatsu
74
+ text "目の前には"
75
+ color(:red){vars[:var][:akamatsu_aisatsu] ? "赤松さん" : "男の人"}
76
+ text "が居る。"
77
+ cr
78
+ vars[:main_loop]
79
+ end
65
80
  end
66
81
 
67
- def main_loop(yuki)
68
- loop do
69
- yuki.text "どうする?"
70
- yuki.command get_command
71
- return yuki.select_result if yuki.is_scene?(yuki.select_result)
72
- yuki.select_result.call(@yuki) if yuki.is_scenario?(yuki.select_result)
82
+ def main_loop
83
+ yuki_plot do
84
+ loop do
85
+ text "どうする?"
86
+ command vars[:command]
87
+ break select_result if is_scene?(select_result)
88
+ call_plot(select_result) if is_scenario?(select_result)
89
+ end
73
90
  end
74
91
  end
75
92
 
76
- def red2(yuki)
77
- yuki.clear
78
- text_wait "「はっ、"
79
- text_wait "私の、"
80
- text_wait "名前は、"
81
- text_wait "赤松と、"
82
- text_wait "申します!"
83
- yuki.cr
84
- text_wait " よろしく、"
85
- yuki.text "お願いします!」"
86
- yuki.pause.clear
87
- var[:akamatsu_aisatsu] = true
93
+ def red2
94
+ yuki_plot do
95
+ clear
96
+ text_wait "「はっ、"
97
+ text_wait "私の、"
98
+ text_wait "名前は、"
99
+ text_wait "赤松と、"
100
+ text_wait "申します!"
101
+ cr
102
+ text_wait " よろしく、"
103
+ text "お願いします!」"
104
+ pause.clear
105
+ vars[:var][:akamatsu_aisatsu] = true
106
+ end
88
107
  end
89
108
 
90
- def look(yuki)
91
- yuki.clear
92
- yuki.text "部屋を見回すと、勉強家らしく、"
93
- yuki.cr
94
- yuki.text "机と数々の本が本棚にしまってある。"
95
- yuki.pause.clear
109
+ def look
110
+ yuki_plot do
111
+ clear
112
+ text "部屋を見回すと、勉強家らしく、"
113
+ cr
114
+ text "机と数々の本が本棚にしまってある。"
115
+ pause.clear
116
+ end
96
117
  end
97
118
 
98
- def talk(yuki)
99
- yuki.clear
100
- text_wait "「はっ、"
101
- text_wait "私は、"
102
- text_wait "某大学の、"
103
- text_wait "はっ、"
104
- yuki.text "8年生です!"
105
- yuki.pause.cr
106
- text_wait " 今年こそ、"
107
- text_wait "無事、"
108
- text_wait "卒業、"
109
- text_wait "できるよう!"
110
- yuki.cr
111
- text_wait " 精進する、"
112
- text_wait "所存で、"
113
- text_wait "ございます!」"
114
- yuki.pause.clear
119
+ def talk
120
+ yuki_plot do
121
+ clear
122
+ text_wait "「はっ、"
123
+ text_wait "私は、"
124
+ text_wait "某大学の、"
125
+ text_wait "はっ、"
126
+ text "8年生です!"
127
+ pause.cr
128
+ text_wait " 今年こそ、"
129
+ text_wait "無事、"
130
+ text_wait "卒業、"
131
+ text_wait "できるよう!"
132
+ cr
133
+ text_wait " 精進する、"
134
+ text_wait "所存で、"
135
+ text_wait "ございます!」"
136
+ pause.clear
137
+ end
115
138
  end
116
139
 
117
- def send1(yuki)
118
- yuki.clear
119
- yuki.text "あなたは、青山君から受け取っていた本を返した。"
120
- yuki.pause.clear
121
- text_wait "「あっ、"
122
- text_wait "青山くんから、"
123
- yuki.text "本を受け取って頂いたのですね!"
124
- yuki.pause.cr
125
- text_wait " あ、"
126
- text_wait "ありがとうございます!"
127
- yuki.pause.clear
128
- text_wait " あ、"
129
- text_wait "あのひと、"
130
- yuki.text "ちょっとビビるでしょ?"
131
- yuki.pause.cr
132
- text_wait " ・・・おっとと、"
133
- text_wait "聞こえてちゃ、"
134
- yuki.text "困るな。」"
135
- yuki.pause.clear
136
- yuki.text " それでは・・・・・。"
137
- yuki.pause.clear
138
- yuki.text " ・・・・・。"
139
- yuki.pause.clear
140
- text_wait " おや、"
141
- text_wait "栞が、"
142
- text_wait "入って、"
143
- yuki.text "ないですね。"
144
- yuki.pause.cr
145
- text_wait " あれは、"
146
- text_wait "僕の、"
147
- text_wait "大事な、"
148
- yuki.text "宝物なんです!"
149
- yuki.pause.cr
150
- text_wait " 青山君の、"
151
- text_wait "部屋に、"
152
- text_wait "戻って、"
153
- yuki.cr
154
- text_wait " 栞を、"
155
- text_wait "探して、"
156
- text_wait "きてください!」"
157
- yuki.pause.clear
158
- var[:search_bookmark]=true
140
+ def send1
141
+ yuki_plot do
142
+ clear
143
+ text "あなたは、青山君から受け取っていた本を返した。"
144
+ pause.clear
145
+ text_wait "「あっ、"
146
+ text_wait "青山くんから、"
147
+ text "本を受け取って頂いたのですね!"
148
+ pause.cr
149
+ text_wait " あ、"
150
+ text_wait "ありがとうございます!"
151
+ pause.clear
152
+ text_wait " あ、"
153
+ text_wait "あのひと、"
154
+ text "ちょっとビビるでしょ?"
155
+ pause.cr
156
+ text_wait " ・・・おっとと、"
157
+ text_wait "聞こえてちゃ、"
158
+ text "困るな。」"
159
+ pause.clear
160
+ text " それでは・・・・・。"
161
+ pause.clear
162
+ text " ・・・・・。"
163
+ pause.clear
164
+ text_wait " おや、"
165
+ text_wait "栞が、"
166
+ text_wait "入って、"
167
+ text "ないですね。"
168
+ pause.cr
169
+ text_wait " あれは、"
170
+ text_wait "僕の、"
171
+ text_wait "大事な、"
172
+ text "宝物なんです!"
173
+ pause.cr
174
+ text_wait " 青山君の、"
175
+ text_wait "部屋に、"
176
+ text_wait "戻って、"
177
+ cr
178
+ text_wait " 栞を、"
179
+ text_wait "探して、"
180
+ text_wait "きてください!」"
181
+ pause.clear
182
+ vars[:var][:search_bookmark]=true
183
+ end
159
184
  end
160
185
 
161
- def send2(yuki)
162
- yuki.clear
163
- text_wait "「あっ、"
164
- text_wait "これは、"
165
- yuki.text "無くなっていた栞!"
166
- yuki.pause.cr
167
- text_wait " ありがとうございます!"
168
- yuki.cr
169
- text_wait " あの、"
170
- text_wait "お礼といっては、"
171
- yuki.text "何ですが、"
172
- yuki.pause.cr
173
- text_wait " 合言葉を、"
174
- text_wait "教えて、"
175
- yuki.text "差し上げます!」"
176
- yuki.pause.clear
177
- text_wait "「『こんなゲーム", 0.5
178
- text_wait " まじになっちゃって", 0.5
179
- yuki.cr
180
- text_wait "  どうするの』", 0.5
181
- yuki.cr
182
- text_wait " これが、"
183
- text_wait "合い言葉です!"
184
- yuki.cr
185
- text_wait " それでは、"
186
- yuki.text "お元気で!」"
187
- yuki.pause.clear
188
- var[:aikotoba]=true
186
+ def send2
187
+ yuki_plot do
188
+ clear
189
+ text_wait "「あっ、"
190
+ text_wait "これは、"
191
+ text "無くなっていた栞!"
192
+ pause.cr
193
+ text_wait " ありがとうございます!"
194
+ cr
195
+ text_wait " あの、"
196
+ text_wait "お礼といっては、"
197
+ text "何ですが、"
198
+ pause.cr
199
+ text_wait " 合言葉を、"
200
+ text_wait "教えて、"
201
+ text "差し上げます!」"
202
+ pause.clear
203
+ text_wait "「『こんなゲーム", 0.5
204
+ text_wait " まじになっちゃって", 0.5
205
+ cr
206
+ text_wait "  どうするの』", 0.5
207
+ cr
208
+ text_wait " これが、"
209
+ text_wait "合い言葉です!"
210
+ cr
211
+ text_wait " それでは、"
212
+ text "お元気で!」"
213
+ pause.clear
214
+ vars[:var][:aikotoba]=true
215
+ end
189
216
  end
190
-
191
- def text_wait(txt, w = 0.3)
192
- @yuki.text txt
193
- @yuki.wait w
217
+
218
+ def final
219
+ message_box.stop
220
+ command_box.stop
194
221
  end
195
222
 
196
223
  def dispose