ruby-miyako-mswin32 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README +1115 -0
- data/img/cursor.png +0 -0
- data/img/cursors.png +0 -0
- data/img/dice.png +0 -0
- data/img/wait_cursor.png +0 -0
- data/img/win_base.png +0 -0
- data/img/window.png +0 -0
- data/install_miyako.rb +87 -0
- data/lib/Miyako/API/audio.rb +584 -0
- data/lib/Miyako/API/basic_data.rb +1026 -0
- data/lib/Miyako/API/bitmap.rb +534 -0
- data/lib/Miyako/API/choices.rb +481 -0
- data/lib/Miyako/API/collision.rb +638 -0
- data/lib/Miyako/API/diagram.rb +586 -0
- data/lib/Miyako/API/drawing.rb +151 -0
- data/lib/Miyako/API/exceptions.rb +105 -0
- data/lib/Miyako/API/fixedmap.rb +462 -0
- data/lib/Miyako/API/font.rb +430 -0
- data/lib/Miyako/API/input.rb +456 -0
- data/lib/Miyako/API/layout.rb +644 -0
- data/lib/Miyako/API/map.rb +583 -0
- data/lib/Miyako/API/map_event.rb +222 -0
- data/lib/Miyako/API/modules.rb +357 -0
- data/lib/Miyako/API/movie.rb +166 -0
- data/lib/Miyako/API/parts.rb +188 -0
- data/lib/Miyako/API/plane.rb +205 -0
- data/lib/Miyako/API/screen.rb +341 -0
- data/lib/Miyako/API/shape.rb +443 -0
- data/lib/Miyako/API/sprite.rb +773 -0
- data/lib/Miyako/API/sprite_animation.rb +494 -0
- data/lib/Miyako/API/sprite_list.rb +1135 -0
- data/lib/Miyako/API/spriteunit.rb +168 -0
- data/lib/Miyako/API/story.rb +350 -0
- data/lib/Miyako/API/textbox.rb +773 -0
- data/lib/Miyako/API/utility.rb +419 -0
- data/lib/Miyako/API/viewport.rb +190 -0
- data/lib/Miyako/API/yuki.rb +1180 -0
- data/lib/Miyako/EXT/miyako_cairo.rb +62 -0
- data/lib/Miyako/EXT/raster_scroll.rb +138 -0
- data/lib/Miyako/EXT/slides.rb +157 -0
- data/lib/Miyako/miyako.rb +201 -0
- data/lib/Miyako/miyako_no_katana.so +0 -0
- data/lib/Miyako/miyako_require_only.rb +35 -0
- data/logo/EGSR_logo.png +0 -0
- data/logo/EGSR_logo_bg.png +0 -0
- data/logo/EGSR_logo_fg.png +0 -0
- data/logo/EGSR_title_banner.png +0 -0
- data/logo/EGSR_title_logo.png +0 -0
- data/logo/miyako.png +0 -0
- data/logo/miyako_banner.png +0 -0
- data/logo/space.png +0 -0
- data/sample/Animation1/m1ku.rb +68 -0
- data/sample/Animation1/m1ku_arm_0.png +0 -0
- data/sample/Animation1/m1ku_arm_1.png +0 -0
- data/sample/Animation1/m1ku_arm_2.png +0 -0
- data/sample/Animation1/m1ku_arm_3.png +0 -0
- data/sample/Animation1/m1ku_back.jpg +0 -0
- data/sample/Animation1/m1ku_body.png +0 -0
- data/sample/Animation1/m1ku_eye_0.png +0 -0
- data/sample/Animation1/m1ku_eye_1.png +0 -0
- data/sample/Animation1/m1ku_eye_2.png +0 -0
- data/sample/Animation1/m1ku_eye_3.png +0 -0
- data/sample/Animation1/m1ku_hair_front.png +0 -0
- data/sample/Animation1/m1ku_hair_rear.png +0 -0
- data/sample/Animation1/readme.txt +72 -0
- data/sample/Animation2/lex.rb +96 -0
- data/sample/Animation2/lex_back.png +0 -0
- data/sample/Animation2/lex_body.png +0 -0
- data/sample/Animation2/lex_roadroller.png +0 -0
- data/sample/Animation2/lex_wheel_0.png +0 -0
- data/sample/Animation2/lex_wheel_1.png +0 -0
- data/sample/Animation2/lex_wheel_2.png +0 -0
- data/sample/Animation2/readme.txt +72 -0
- data/sample/Animation2/song_title.png +0 -0
- data/sample/Diagram_sample/back.png +0 -0
- data/sample/Diagram_sample/chr01.png +0 -0
- data/sample/Diagram_sample/chr02.png +0 -0
- data/sample/Diagram_sample/cursor.png +0 -0
- data/sample/Diagram_sample/diagram_sample_yuki2.rb +329 -0
- data/sample/Diagram_sample/readme.txt +90 -0
- data/sample/Diagram_sample/wait_cursor.png +0 -0
- data/sample/Room3/blue.rb +297 -0
- data/sample/Room3/ending.rb +180 -0
- data/sample/Room3/green.rb +220 -0
- data/sample/Room3/image/akamatsu.png +0 -0
- data/sample/Room3/image/aoyama.png +0 -0
- data/sample/Room3/image/congra.png +0 -0
- data/sample/Room3/image/congratulation.png +0 -0
- data/sample/Room3/image/congratulation_bg.png +0 -0
- data/sample/Room3/image/cursor.png +0 -0
- data/sample/Room3/image/midori.png +0 -0
- data/sample/Room3/image/mittsu_no_oheya.png +0 -0
- data/sample/Room3/image/mittsu_no_oheya_logo.png +0 -0
- data/sample/Room3/image/room_blue.png +0 -0
- data/sample/Room3/image/room_green.png +0 -0
- data/sample/Room3/image/room_red.png +0 -0
- data/sample/Room3/image/start.png +0 -0
- data/sample/Room3/image/three_doors.png +0 -0
- data/sample/Room3/image/wait_cursor.png +0 -0
- data/sample/Room3/main.rb +120 -0
- data/sample/Room3/main_component.rb +59 -0
- data/sample/Room3/readme.txt +76 -0
- data/sample/Room3/red.rb +227 -0
- data/sample/Room3/room3.rb +25 -0
- data/sample/Room3/title.rb +184 -0
- data/sample/ball_action_sample.rb +204 -0
- data/sample/blit_rop.rb +70 -0
- data/sample/cairo_sample.rb +25 -0
- data/sample/circle_collision_test.rb +66 -0
- data/sample/collision_test.rb +33 -0
- data/sample/collision_test2.rb +108 -0
- data/sample/fixed_map_test/cursor.png +0 -0
- data/sample/fixed_map_test/fixed_map_sample.rb +140 -0
- data/sample/fixed_map_test/map.csv +19 -0
- data/sample/fixed_map_test/map_01.png +0 -0
- data/sample/fixed_map_test/mapchip.csv +23 -0
- data/sample/fixed_map_test/monster.png +0 -0
- data/sample/fixed_map_test/readme.txt +72 -0
- data/sample/map_test/chara.rb +58 -0
- data/sample/map_test/chr1.png +0 -0
- data/sample/map_test/cursor.png +0 -0
- data/sample/map_test/main_parts.rb +69 -0
- data/sample/map_test/main_scene.rb +153 -0
- data/sample/map_test/map.png +0 -0
- data/sample/map_test/map2.png +0 -0
- data/sample/map_test/map_layer.csv +127 -0
- data/sample/map_test/map_manager.rb +75 -0
- data/sample/map_test/map_test.rb +23 -0
- data/sample/map_test/mapchip.csv +21 -0
- data/sample/map_test/oasis.rb +71 -0
- data/sample/map_test/readme.txt +89 -0
- data/sample/map_test/route.rb +157 -0
- data/sample/map_test/sea.png +0 -0
- data/sample/map_test/town.rb +74 -0
- data/sample/map_test/wait_cursor.png +0 -0
- data/sample/map_test/window.png +0 -0
- data/sample/polygon_test.rb +35 -0
- data/sample/rasterscroll.rb +25 -0
- data/sample/takahashi.rb +42 -0
- data/sample/text.png +0 -0
- data/sample/textbox_sample.rb +190 -0
- data/sample/transform.rb +54 -0
- data/sample/utility_test.rb +73 -0
- data/sample/utility_test2.rb +61 -0
- data/sample/utility_test3.rb +64 -0
- data/sample/utility_test4.rb +73 -0
- data/uninstall_miyako.rb +19 -0
- metadata +199 -0
@@ -0,0 +1,90 @@
|
|
1
|
+
*******************************************************************************
|
2
|
+
�y ��Җ� �z�@�T�C���X��
|
3
|
+
�y �\�t�g�� �z�@Miyako v2.0�T���v��(�J�ڐ}�`��)
|
4
|
+
�y �o�[�W���� �z�@2.0
|
5
|
+
�y �쐬�� �z�@2009/04/13
|
6
|
+
�y ��� �z�@�t���[�E�F�A
|
7
|
+
�y �J������ �z�@Ruby 1.9.1-p0
|
8
|
+
�y �����^�C�� �z�@Miyako v2.0
|
9
|
+
�y �Ή��@�� �z�@Windows 2000/XP/Vista�ALinux
|
10
|
+
�y �Ĕz�z �z�@�C��BSD���C�Z���X�ɂ��
|
11
|
+
�y �]�� �z�@�C��BSD���C�Z���X�ɂ��
|
12
|
+
�y�z�[���y�[�W�z�@http://www.twin.ne.jp/~cyross/Miyako/
|
13
|
+
�y �A���� �z�@cyross@po.twin.ne.jp
|
14
|
+
*******************************************************************************
|
15
|
+
|
16
|
+
�E�T�v
|
17
|
+
|
18
|
+
�@���̃v���O�����́AMiyako 2.0�ȍ~�ɑΉ�����AMiyako�T���v���v���O�����ł��B
|
19
|
+
�@�L�����N�^�̑��d�X�N���[�����s���܂�(���ꂾ���ł����E�E�E)
|
20
|
+
|
21
|
+
�EMiyako�ɂ���
|
22
|
+
|
23
|
+
�@Miyako�Ɋւ��ẮA�ȉ���URL���Q�l�ɂ��Ă��������B
|
24
|
+
http://www.twin.ne.jp/~cyross/Miyako/
|
25
|
+
|
26
|
+
�@Miyako(Ruby�ARuby/SDL�܂�)�̃C���X�g�[���Ɋւ��܂��ẮA
|
27
|
+
��LURL��H���ē�����A�[�J�C�u���ꂽMiyako���C�u������
|
28
|
+
�W�J����ƁAreadme.txt�������܂��̂ŁA����������Q�Ɖ������B
|
29
|
+
|
30
|
+
�@�{�T���v���ł́AMiyako��Windows��œ��삷�邱�Ƃ�O��ɂ��Ă��܂��B
|
31
|
+
�i�C���X�g�[������Ruby���s����ActiveRuby�ł��邱�Ƃ��O���
|
32
|
+
�@���Ă��܂��j
|
33
|
+
|
34
|
+
�E�N�����@
|
35
|
+
|
36
|
+
�@�G�N�X�v���[���[���J���A�{�T���v���̃t�H���_���ŁA�udiagram_sample.rb�v��
|
37
|
+
�_�u���N���b�N���܂��B
|
38
|
+
�@�������́A�R�}���h���C����œ������ꍇ�́A�{�T���v���̃f�B���N�g����
|
39
|
+
�ړ����āA�ȉ��̃R�}���h����͂��܂��B
|
40
|
+
|
41
|
+
�@ruby diagram_sample.rb
|
42
|
+
|
43
|
+
�E�Ɛӎ���
|
44
|
+
|
45
|
+
�@�{�T���v���͖��ۏł��B�����{�T���v�����g�p���邱�Ƃɂ��s��E�g���u��
|
46
|
+
���N�������Ƃ��Ă��A�����Ȃ�g���u���ɑ���ӔC��Ȃ����Ƃ��������������B
|
47
|
+
|
48
|
+
�@�{�T���v���́A�C��BSD���C�Z���X�Ɋ�Â����]�ځE�Ĕz�z�������܂��B
|
49
|
+
|
50
|
+
�@�܂��A�{�T���v���ł́A�w�i�摜�ɁA�w�i�摜�f�ޏW�u�}�E�ʌi�v�̋����摜���g�p���Ă��܂��B
|
51
|
+
�@http://naox.cool.ne.jp/bonkai1/
|
52
|
+
|
53
|
+
�E�X�V����
|
54
|
+
|
55
|
+
�@(1.1)
|
56
|
+
�@�E�����S�̂���̑J�ڐ}�`���ɂ܂Ƃ߂�(����q�̑J�ڐ}���ł���T���v��)
|
57
|
+
�@�EYuki�ɂ�郁�b�Z�[�W�\����lj�
|
58
|
+
|
59
|
+
�@(1.2)
|
60
|
+
�@�E�J�ڐ}�`���N���X���̏C��
|
61
|
+
|
62
|
+
�@(1.2.1)
|
63
|
+
�@�ERC3�Œlj�����Yuki::Yuki2�N���X�Ή���diagram_sample_yuki2.rb��lj�
|
64
|
+
|
65
|
+
�@(2.0)
|
66
|
+
�@�EMiyako2.0�ɑΉ�
|
67
|
+
|
68
|
+
�EBSD���C�Z���X��
|
69
|
+
|
70
|
+
Copyright (c) 2008, Cyross Makoto
|
71
|
+
|
72
|
+
All rights reserved.
|
73
|
+
|
74
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
75
|
+
|
76
|
+
�ERedistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
77
|
+
�ERedistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
78
|
+
�ENeither the name of the Cyross Makoto nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
|
79
|
+
|
80
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
81
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
82
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
83
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
84
|
+
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
85
|
+
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
86
|
+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
87
|
+
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
88
|
+
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
89
|
+
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
90
|
+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
Binary file
|
@@ -0,0 +1,297 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
class Blue
|
3
|
+
include Story::Scene
|
4
|
+
include MainComponent
|
5
|
+
|
6
|
+
def init
|
7
|
+
@yuki = Yuki.new
|
8
|
+
@yuki.select_textbox(message_box[:box])
|
9
|
+
@yuki.select_commandbox(command_box[:box])
|
10
|
+
@aoyama = Sprite.new(:file => "image/aoyama.png", :type => :ck)
|
11
|
+
@aoyama.center!.bottom!
|
12
|
+
@yuki.regist_parts(:aoyama, @aoyama)
|
13
|
+
|
14
|
+
@room = Sprite.new(:file => "image/room_blue.png", :type => :as)
|
15
|
+
@room.center!.bottom!
|
16
|
+
|
17
|
+
var[:aoyama_aisatsu] = false if var[:aoyama_aisatsu] == nil
|
18
|
+
var[:release_aoyama_book] = false if var[:release_aoyama_book] == nil
|
19
|
+
var[:search_bookmark] = false if var[:search_bookmark] == nil
|
20
|
+
var[:look_video_base] = false if var[:look_video_base] == nil
|
21
|
+
var[:get_bookmark] = false if var[:get_bookmark] == nil
|
22
|
+
var[:release_akamatsu_book] = false if var[:release_akamatsu_book] == nil
|
23
|
+
|
24
|
+
@yuki.vars[:var] = var
|
25
|
+
@yuki.vars[:main_command] = main_command
|
26
|
+
@yuki.vars[:search_command] = search_command
|
27
|
+
@yuki.vars[:command] = get_command
|
28
|
+
@yuki.vars[:search] = get_search
|
29
|
+
@yuki.vars[:video2] = video2
|
30
|
+
end
|
31
|
+
|
32
|
+
def setup
|
33
|
+
@yuki.setup
|
34
|
+
message_box.start
|
35
|
+
command_box.start
|
36
|
+
@yuki.start_plot(plot)
|
37
|
+
end
|
38
|
+
|
39
|
+
def update
|
40
|
+
return nil if Input.quit_or_escape?
|
41
|
+
message_box.update_animation
|
42
|
+
command_box.update_animation
|
43
|
+
@yuki.update
|
44
|
+
r = @yuki.executing? ? @now : @yuki.result
|
45
|
+
if @yuki.is_scenario?(r)
|
46
|
+
@yuki.start_plot(r)
|
47
|
+
r = @now
|
48
|
+
end
|
49
|
+
return r
|
50
|
+
end
|
51
|
+
|
52
|
+
def render
|
53
|
+
@room.render
|
54
|
+
@yuki.render
|
55
|
+
message_box.render
|
56
|
+
command_box.render if @yuki.selecting?
|
57
|
+
end
|
58
|
+
|
59
|
+
def get_command
|
60
|
+
return [Yuki::Command.new("挨拶する", nil, lambda{var[:aoyama_aisatsu]==false}, blue2),
|
61
|
+
Yuki::Command.new("辺りを見る", nil, lambda{var[:aoyama_aisatsu]==true}, look_blue),
|
62
|
+
Yuki::Command.new("話す", nil, lambda{var[:aoyama_aisatsu]==true}, talk),
|
63
|
+
Yuki::Command.new("渡す", nil, lambda{var[:aoyama_aisatsu]==true && var[:release_aoyama_book]==true && var[:release_akamatsu_book]==false}, send1),
|
64
|
+
Yuki::Command.new("探す", nil, lambda{var[:search_bookmark]==true && var[:get_bookmark]==false}, search),
|
65
|
+
Yuki::Command.new("戻る", nil, lambda{var[:aoyama_aisatsu]==true}, MainScene)]
|
66
|
+
end
|
67
|
+
|
68
|
+
def get_search
|
69
|
+
return [Yuki::Command.new("壁", nil, nil, wall),
|
70
|
+
Yuki::Command.new("テレビ", nil, nil, tv),
|
71
|
+
Yuki::Command.new("テレビ台", nil, nil, tv_base),
|
72
|
+
Yuki::Command.new("ビデオデッキ", nil, lambda{var[:look_video_base] == true}, video),
|
73
|
+
Yuki::Command.new("テレビゲーム機", nil, lambda{var[:look_video_base] == true}, tv_game),
|
74
|
+
Yuki::Command.new("ソファー", nil, nil, sofar),
|
75
|
+
Yuki::Command.new("ベッド", nil, nil, bed),
|
76
|
+
Yuki::Command.new("戻る", nil, nil, "ret")]
|
77
|
+
end
|
78
|
+
|
79
|
+
def plot
|
80
|
+
yuki_plot do
|
81
|
+
text "青の扉から中に入った。"
|
82
|
+
pause.clear
|
83
|
+
show :aoyama
|
84
|
+
text "目の前には"
|
85
|
+
color(:cyan){vars[:var][:aoyama_aisatsu]==true ? "青山くん" : "男の子"}
|
86
|
+
text "が居る。"
|
87
|
+
cr
|
88
|
+
vars[:main_command]
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
def main_command
|
93
|
+
yuki_plot do
|
94
|
+
loop do
|
95
|
+
show :aoyama
|
96
|
+
text "どうする?"
|
97
|
+
command vars[:command]
|
98
|
+
clear
|
99
|
+
break select_result if is_scene?(select_result)
|
100
|
+
call_plot(select_result) if is_scenario?(select_result)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
def blue2
|
106
|
+
yuki_plot do
|
107
|
+
text "「オレの名前は"
|
108
|
+
color(:cyan){"青山"}
|
109
|
+
text "。よろしくな」"
|
110
|
+
pause.clear
|
111
|
+
vars[:var][:aoyama_aisatsu]=true
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
def look_blue
|
116
|
+
yuki_plot do
|
117
|
+
text "部屋の中は整然としている。"
|
118
|
+
pause.cr
|
119
|
+
text "中にはテレビとソファーがあり、"
|
120
|
+
cr
|
121
|
+
text "ゆったりとくつろげるようになっている。"
|
122
|
+
pause.clear
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
def talk
|
127
|
+
yuki_plot do
|
128
|
+
text "「まぁ、オレはこうやってのんびりするのが"
|
129
|
+
cr
|
130
|
+
text " 好きなんだな。"
|
131
|
+
pause.cr
|
132
|
+
text " とはいえども、いわゆるニートってやつじゃない。"
|
133
|
+
pause.clear
|
134
|
+
text " ここには無いが、パソコン使って"
|
135
|
+
cr
|
136
|
+
text " 株の取引やってるわけさ。」"
|
137
|
+
pause.clear
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
def send1
|
142
|
+
yuki_plot do
|
143
|
+
text "あなたは、みどりさんから受け取っていた本を返した。"
|
144
|
+
pause.clear
|
145
|
+
text "「おお、サンキュ。"
|
146
|
+
pause.cr
|
147
|
+
text " みどりから受け取ったのか。"
|
148
|
+
pause.cr
|
149
|
+
text " じゃああんたも、"
|
150
|
+
color(:red){"ブチギレみどり"}
|
151
|
+
text "を見たってわけか。」"
|
152
|
+
pause.clear
|
153
|
+
text "そのとき、どこからともなく声が聞こえた。"
|
154
|
+
wait 0.5
|
155
|
+
cr
|
156
|
+
color(:red){
|
157
|
+
text "『なあぁぁぁんですってぇぇぇぇ"
|
158
|
+
wait 0.5
|
159
|
+
cr
|
160
|
+
text "私のどこがブチ切れてるってぇぇぇ!?』"
|
161
|
+
}
|
162
|
+
pause.cr
|
163
|
+
text "「・・・ほらね。」"
|
164
|
+
pause.clear
|
165
|
+
text "「じゃあ、ついでにオレからも、"
|
166
|
+
pause.cr
|
167
|
+
text " 隣りの赤松さんところへ行って、"
|
168
|
+
pause.cr
|
169
|
+
text " この本を返してきてくれないかなぁ?"
|
170
|
+
pause.cr
|
171
|
+
text " 頼むよ。」"
|
172
|
+
pause.clear
|
173
|
+
text " 赤松さんの本を受け取った。"
|
174
|
+
pause.clear
|
175
|
+
vars[:var][:release_akamatsu_book] = true
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
179
|
+
def search
|
180
|
+
yuki_plot do
|
181
|
+
text "「どうぞ」"
|
182
|
+
cr
|
183
|
+
hide :aoyama
|
184
|
+
call_plot(vars[:search_command])
|
185
|
+
end
|
186
|
+
end
|
187
|
+
|
188
|
+
def search_command
|
189
|
+
yuki_plot do
|
190
|
+
loop do
|
191
|
+
text "どこを?"
|
192
|
+
command vars[:search], "ret"
|
193
|
+
clear
|
194
|
+
break if select_result.kind_of?(String) && select_result == "ret"
|
195
|
+
call_plot(select_result) if is_scenario?(select_result)
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
200
|
+
def wall
|
201
|
+
yuki_plot do
|
202
|
+
text "壁を調べてみた。"
|
203
|
+
pause.cr
|
204
|
+
text "何もないようだ。"
|
205
|
+
pause.clear
|
206
|
+
end
|
207
|
+
end
|
208
|
+
|
209
|
+
def tv
|
210
|
+
yuki_plot do
|
211
|
+
text "テレビを調べてみた。"
|
212
|
+
pause.cr
|
213
|
+
text "テレビを点けてみた。"
|
214
|
+
pause.cr
|
215
|
+
text "・・・つまらんなぁ、この番組。"
|
216
|
+
pause.clear
|
217
|
+
end
|
218
|
+
end
|
219
|
+
|
220
|
+
def tv_base
|
221
|
+
yuki_plot do
|
222
|
+
text "テレビ台を調べてみた。"
|
223
|
+
pause.cr
|
224
|
+
text "中にはビデオデッキとテレビゲーム機があるようだ。"
|
225
|
+
pause.clear
|
226
|
+
vars[:var][:look_video_base] = true
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
230
|
+
def video
|
231
|
+
yuki_plot do
|
232
|
+
text "ビデオデッキを調べてみた。"
|
233
|
+
pause.cr
|
234
|
+
text "いわゆるHDDビデオデッキだ。"
|
235
|
+
pause.clear
|
236
|
+
call_plot(vars[:video2]) if vars[:var][:get_bookmark]==false
|
237
|
+
end
|
238
|
+
end
|
239
|
+
|
240
|
+
def video2
|
241
|
+
yuki_plot do
|
242
|
+
text "・・・"
|
243
|
+
wait 0.3
|
244
|
+
text "ン!? 何か挟まってる。"
|
245
|
+
pause.cr
|
246
|
+
text "引っ張り出してみると、"
|
247
|
+
color(:red){"真っ赤な栞"}
|
248
|
+
text "だ。"
|
249
|
+
pause.cr
|
250
|
+
color(:red){"栞"}
|
251
|
+
text "を見つけ出した!"
|
252
|
+
pause.cr
|
253
|
+
text "「良かったなぁ、見つかって。」"
|
254
|
+
pause.clear
|
255
|
+
vars[:var][:get_bookmark] = true
|
256
|
+
end
|
257
|
+
end
|
258
|
+
|
259
|
+
def tv_game
|
260
|
+
yuki_plot do
|
261
|
+
text "テレビゲーム機を調べてみた。"
|
262
|
+
pause.cr
|
263
|
+
text "・・・このゲーム機、対応ゲーム出てる?"
|
264
|
+
pause.clear
|
265
|
+
end
|
266
|
+
end
|
267
|
+
|
268
|
+
def sofar
|
269
|
+
yuki_plot do
|
270
|
+
text "ソファーを調べてみた。"
|
271
|
+
pause.cr
|
272
|
+
text "ふかふかだ。"
|
273
|
+
wait 0.5
|
274
|
+
text "ここで寝そべりたい・・・。"
|
275
|
+
pause.clear
|
276
|
+
end
|
277
|
+
end
|
278
|
+
|
279
|
+
def bed
|
280
|
+
yuki_plot do
|
281
|
+
text "ベッドを調べてみた。"
|
282
|
+
pause.cr
|
283
|
+
text "ソファーより固そうだ。"
|
284
|
+
pause.clear
|
285
|
+
end
|
286
|
+
end
|
287
|
+
|
288
|
+
def final
|
289
|
+
message_box.stop
|
290
|
+
command_box.stop
|
291
|
+
end
|
292
|
+
|
293
|
+
def dispose
|
294
|
+
@aoyama.dispose
|
295
|
+
@room.dispose
|
296
|
+
end
|
297
|
+
end
|
@@ -0,0 +1,180 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
# エンディング定義
|
3
|
+
class Ending
|
4
|
+
include Story::Scene
|
5
|
+
include MainComponent
|
6
|
+
|
7
|
+
def init
|
8
|
+
@yuki = Yuki.new
|
9
|
+
|
10
|
+
def @yuki.text_wait(*txt)
|
11
|
+
txt.each{|t|
|
12
|
+
text t
|
13
|
+
wait 0.3
|
14
|
+
}
|
15
|
+
end
|
16
|
+
|
17
|
+
@yuki.select_textbox(message_box[:box])
|
18
|
+
@bg = Sprite.new(:file => "image/congratulation_bg.png", :type => :as)
|
19
|
+
@bg.oh = @bg.h / 2
|
20
|
+
@anim = SpriteAnimation.new(:sprite=>@bg, :wait=>0.5)
|
21
|
+
@cong_text = Sprite.new(:file=>"image/congra.png", :type => :ck)
|
22
|
+
@cong_text.centering!
|
23
|
+
@visible_cong_text = false
|
24
|
+
@cong_man = Sprite.new(:file=>"image/congratulation.png", :type => :ck)
|
25
|
+
@cong_man.center!.bottom!
|
26
|
+
@visible_cong_man = false
|
27
|
+
@timer = WaitCounter.new(3)
|
28
|
+
@staff_roll = [Shape.text(:font=>message_box[:box].font, :align=>:center){
|
29
|
+
text "シナリオ・グラフィック・"
|
30
|
+
cr
|
31
|
+
text "スクリプティング・その他雑用"
|
32
|
+
cr.cr
|
33
|
+
text "サイロス 誠"
|
34
|
+
},
|
35
|
+
Shape.text(:font=>message_box[:box].font){ text "Powerd By Miyako 2.0" }
|
36
|
+
]
|
37
|
+
@staff_roll.each{|st|
|
38
|
+
st.snap(message_box)
|
39
|
+
st.centering!
|
40
|
+
}
|
41
|
+
@index = -1
|
42
|
+
|
43
|
+
@end_roll = Shape.text(:font=>message_box[:box].font){ text "T H E E N D" }
|
44
|
+
@end_roll.snap(message_box)
|
45
|
+
@end_roll.centering!
|
46
|
+
@yuki.regist_parts(:end_roll, @end_roll)
|
47
|
+
@yuki.vars[:staff_roll] = self.method(:staff_roll)
|
48
|
+
|
49
|
+
@exec = self.method(:view_in1)
|
50
|
+
end
|
51
|
+
|
52
|
+
def setup
|
53
|
+
@yuki.setup
|
54
|
+
@anim.start
|
55
|
+
@timer.start
|
56
|
+
end
|
57
|
+
|
58
|
+
def update
|
59
|
+
return nil if Input.quit_or_escape?
|
60
|
+
@anim.update_animation
|
61
|
+
return @exec.call
|
62
|
+
end
|
63
|
+
|
64
|
+
def render
|
65
|
+
@anim.render
|
66
|
+
@cong_text.render
|
67
|
+
@cong_man.render if @visible_cong_man
|
68
|
+
if @exec == self.method(:plot_executing)
|
69
|
+
@yuki.render
|
70
|
+
message_box.render
|
71
|
+
@staff_roll[@index].render if @index >= 0
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
def view_in1
|
76
|
+
if @timer.finish?
|
77
|
+
@visible_cong_man = true
|
78
|
+
@timer.start
|
79
|
+
@exec = self.method(:view_in2)
|
80
|
+
end
|
81
|
+
return @now
|
82
|
+
end
|
83
|
+
|
84
|
+
def view_in2
|
85
|
+
if @timer.finish?
|
86
|
+
@exec = self.method(:plot_executing)
|
87
|
+
@yuki.start_plot(plot)
|
88
|
+
end
|
89
|
+
return @now
|
90
|
+
end
|
91
|
+
|
92
|
+
def plot_executing
|
93
|
+
message_box.update_animation
|
94
|
+
command_box.update_animation
|
95
|
+
@yuki.update
|
96
|
+
r = @yuki.executing? ? @now : @yuki.result
|
97
|
+
if @yuki.is_scenario?(r)
|
98
|
+
@yuki.exec_plot(r)
|
99
|
+
r = @now
|
100
|
+
end
|
101
|
+
return r
|
102
|
+
end
|
103
|
+
|
104
|
+
def plot
|
105
|
+
yuki_plot do
|
106
|
+
text "「コ〜ン "
|
107
|
+
wait 0.3
|
108
|
+
text "グラッチュ "
|
109
|
+
wait 0.3
|
110
|
+
text "レ〜ショ〜ン♪」"
|
111
|
+
pause.cr
|
112
|
+
text "「いやぁ、"
|
113
|
+
wait 0.2
|
114
|
+
text "見事難関をクリアしたとはオドロキだ!"
|
115
|
+
pause.cr
|
116
|
+
text " 君には全くもって、感服だ!」"
|
117
|
+
pause.clear
|
118
|
+
text "「勿論、クリアしたんだから"
|
119
|
+
wait 0.5
|
120
|
+
cr
|
121
|
+
text " 商品をプレゼントしなくちゃね!」"
|
122
|
+
pause.clear
|
123
|
+
text_wait "「まずは", "・", "・", "・"
|
124
|
+
text "「青いはいからうどん」1年分!"
|
125
|
+
wait 0.5
|
126
|
+
cr
|
127
|
+
text_wait " 次に", "・", "・", "・"
|
128
|
+
text "いつも真っ赤「炎天下ツアー」!"
|
129
|
+
wait 0.5
|
130
|
+
cr
|
131
|
+
text_wait " 最後に", "・", "・", "・"
|
132
|
+
text "「緑のバルーン」提供の沖縄旅行!"
|
133
|
+
wait 0.5
|
134
|
+
cr
|
135
|
+
text " 現地集合現地解散!"
|
136
|
+
wait 0.5
|
137
|
+
cr
|
138
|
+
text " さ、遠慮せずにうけとってくれ!」"
|
139
|
+
pause.clear
|
140
|
+
text "「今日は見事クリアされたけど、"
|
141
|
+
cr
|
142
|
+
text " 次回はもっと"
|
143
|
+
color(:red){ "ヒィヒィ"}
|
144
|
+
text "言わせる"
|
145
|
+
cr
|
146
|
+
text " 仕掛けを用意するから覚悟しとけよ〜!」"
|
147
|
+
pause.clear
|
148
|
+
text "「次回の挑戦者はキミだ!"
|
149
|
+
wait 0.5
|
150
|
+
cr
|
151
|
+
text " じゃ、また来週! "
|
152
|
+
wait 0.5
|
153
|
+
text "バイバ〜イ!」"
|
154
|
+
pause.clear
|
155
|
+
vars[:staff_roll].call
|
156
|
+
show :end_roll
|
157
|
+
pause.clear
|
158
|
+
hide :end_roll
|
159
|
+
nil
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
163
|
+
def staff_roll
|
164
|
+
@staff_roll.length.times{|idx|
|
165
|
+
@index = idx
|
166
|
+
@yuki.wait 2.0
|
167
|
+
}
|
168
|
+
@index = -1
|
169
|
+
end
|
170
|
+
|
171
|
+
def final
|
172
|
+
@anim.stop
|
173
|
+
end
|
174
|
+
|
175
|
+
def dispose
|
176
|
+
@cong_man.dispose
|
177
|
+
@cong_text.dispose
|
178
|
+
@anim.dispose
|
179
|
+
end
|
180
|
+
end
|