cyross-ruby-miyako 2.0.5.1.0 → 2.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 (91) hide show
  1. data/README +1092 -929
  2. data/Rakefile +7 -7
  3. data/defines.h +144 -144
  4. data/extern.h +29 -29
  5. data/install_miyako.rb +87 -87
  6. data/lib/Miyako/API/audio.rb +572 -198
  7. data/lib/Miyako/API/basic_data.rb +825 -573
  8. data/lib/Miyako/API/bitmap.rb +534 -507
  9. data/lib/Miyako/API/choices.rb +481 -475
  10. data/lib/Miyako/API/collision.rb +486 -460
  11. data/lib/Miyako/API/diagram.rb +586 -561
  12. data/lib/Miyako/API/drawing.rb +151 -151
  13. data/lib/Miyako/API/exceptions.rb +105 -0
  14. data/lib/Miyako/API/fixedmap.rb +462 -428
  15. data/lib/Miyako/API/font.rb +430 -403
  16. data/lib/Miyako/API/input.rb +456 -447
  17. data/lib/Miyako/API/layout.rb +636 -433
  18. data/lib/Miyako/API/map.rb +583 -529
  19. data/lib/Miyako/API/map_event.rb +222 -198
  20. data/lib/Miyako/API/modules.rb +357 -109
  21. data/lib/Miyako/API/movie.rb +166 -154
  22. data/lib/Miyako/API/parts.rb +276 -189
  23. data/lib/Miyako/API/plane.rb +205 -166
  24. data/lib/Miyako/API/screen.rb +341 -325
  25. data/lib/Miyako/API/shape.rb +443 -443
  26. data/lib/Miyako/API/sprite.rb +771 -752
  27. data/lib/Miyako/API/sprite_animation.rb +490 -481
  28. data/lib/Miyako/API/sprite_list.rb +1135 -0
  29. data/lib/Miyako/API/spriteunit.rb +168 -147
  30. data/lib/Miyako/API/story.rb +350 -300
  31. data/lib/Miyako/API/textbox.rb +770 -725
  32. data/lib/Miyako/API/utility.rb +419 -388
  33. data/lib/Miyako/API/viewport.rb +189 -139
  34. data/lib/Miyako/API/yuki.rb +1226 -996
  35. data/lib/Miyako/EXT/miyako_cairo.rb +62 -62
  36. data/lib/Miyako/EXT/raster_scroll.rb +138 -138
  37. data/lib/Miyako/EXT/slides.rb +157 -157
  38. data/lib/Miyako/miyako.rb +201 -171
  39. data/lib/Miyako/miyako_require_only.rb +35 -0
  40. data/miyako_basicdata.c +590 -590
  41. data/miyako_bitmap.c +1225 -1225
  42. data/miyako_collision.c +403 -403
  43. data/miyako_drawing.c +187 -187
  44. data/miyako_font.c +334 -334
  45. data/miyako_hsv.c +830 -830
  46. data/miyako_input_audio.c +254 -0
  47. data/miyako_layout.c +191 -191
  48. data/miyako_no_katana.c +1078 -1074
  49. data/miyako_sprite2.c +431 -0
  50. data/miyako_transform.c +438 -438
  51. data/miyako_utility.c +288 -288
  52. data/sample/Animation1/m1ku.rb +68 -68
  53. data/sample/Animation2/lex.rb +96 -96
  54. data/sample/Diagram_sample/diagram_sample_yuki2.rb +328 -386
  55. data/sample/Room3/blue.rb +297 -297
  56. data/sample/Room3/ending.rb +180 -180
  57. data/sample/Room3/green.rb +220 -220
  58. data/sample/Room3/main.rb +119 -119
  59. data/sample/Room3/main_component.rb +59 -59
  60. data/sample/Room3/red.rb +227 -227
  61. data/sample/Room3/room3.rb +25 -27
  62. data/sample/Room3/title.rb +184 -184
  63. data/sample/ball_action_sample.rb +204 -204
  64. data/sample/blit_rop.rb +70 -70
  65. data/sample/cairo_sample.rb +25 -25
  66. data/sample/circle_collision_test.rb +66 -66
  67. data/sample/collision_test.rb +33 -33
  68. data/sample/collision_test2.rb +108 -108
  69. data/sample/fixed_map_test/fixed_map_sample.rb +140 -140
  70. data/sample/fixed_map_test/readme.txt +72 -72
  71. data/sample/map_test/chara.rb +58 -58
  72. data/sample/map_test/main_parts.rb +69 -69
  73. data/sample/map_test/main_scene.rb +153 -153
  74. data/sample/map_test/map_manager.rb +75 -75
  75. data/sample/map_test/map_test.rb +23 -23
  76. data/sample/map_test/oasis.rb +71 -71
  77. data/sample/map_test/readme.txt +89 -89
  78. data/sample/map_test/route.rb +157 -157
  79. data/sample/map_test/town.rb +74 -74
  80. data/sample/polygon_test.rb +35 -35
  81. data/sample/rasterscroll.rb +24 -24
  82. data/sample/takahashi.rb +42 -42
  83. data/sample/textbox_sample.rb +189 -189
  84. data/sample/transform.rb +54 -54
  85. data/sample/utility_test.rb +73 -73
  86. data/sample/utility_test2.rb +61 -61
  87. data/sample/utility_test3.rb +64 -64
  88. data/sample/utility_test4.rb +73 -73
  89. data/uninstall_miyako.rb +19 -19
  90. data/win/miyako_no_katana.so +0 -0
  91. metadata +7 -2
@@ -1,184 +1,184 @@
1
- # -*- encoding: utf-8 -*-
2
- class Title
3
- include Story::Scene
4
-
5
- def self.scene_type
6
- return :scene
7
- end
8
-
9
- def init
10
- font = Font.sans_serif
11
- font.size = 24
12
- font.color = Color[:white]
13
- @push_key = Shape.text(:text=>"Push Any Key", :font=>font)
14
- @push_key.center.bottom{|body| (0.1).ratio(body) }
15
-
16
- @copy_right = Shape.text(:text=>"2006-2008 Cyross Makoto", :font=>font)
17
- @copy_right.center.bottom{|body| (0.05).ratio(body) }
18
-
19
- @visible = false
20
-
21
- @title = Sprite.new(:file=>"image/mittsu_no_oheya.png", :type=>:ck)
22
-
23
- @exec = self.method(:view_in)
24
- end
25
-
26
- def setup
27
- @title.move_to(Screen.w, 0)
28
- end
29
-
30
- def view_in
31
- if @title.x > 0
32
- @title.move(-8, 0)
33
- return @now
34
- end
35
- @visible = true
36
- @exec = self.method(:waiting)
37
- return @now
38
- end
39
-
40
- def waiting
41
- if Input.pushed_any? || Input.click?(:left)
42
- @exec = self.method(:view_out)
43
- @visible = false
44
- end
45
- return @now
46
- end
47
-
48
- def view_out
49
- if @title.x > -Screen.w
50
- @title.move(-8, 0)
51
- return @now
52
- end
53
- return TitleCall
54
- end
55
-
56
- def update
57
- return nil if (Input.pushed_any?(:esc) || Input.quit?)
58
- return @exec.call
59
- end
60
-
61
- def render
62
- @title.render
63
- if @visible
64
- @push_key.render
65
- @copy_right.render
66
- end
67
- end
68
- end
69
-
70
- class TitleCall
71
- include Story::Scene
72
- include MainComponent
73
-
74
- def init
75
- @yuki = Yuki.new(message_box[:box]){|box|
76
- select_textbox(box)
77
- }
78
- @man = Sprite.new(:file=>"image/start.png", :type=>:ck)
79
- @man.center.bottom
80
- @alpha = 0.0
81
- @wait = WaitCounter.new(0.2)
82
- @exec = self.method(:view_in)
83
- end
84
-
85
- def setup
86
- @yuki.setup(plot){|plot|
87
- select_plot(plot)
88
- }
89
- @yuki.vars[:next] = MainScene
90
- @wait.start
91
- end
92
-
93
- def update
94
- return nil if (Input.pushed_any?(:esc) || Input.quit?)
95
- return @exec.call
96
- end
97
-
98
- def final
99
- message_box.stop
100
- end
101
-
102
- def view_in
103
- if @wait.finish?
104
- if @alpha == 1.0
105
- @yuki.start_plot
106
- @exec = self.method(:exec_yuki)
107
- message_box.start
108
- return @now
109
- end
110
- @alpha += 0.15
111
- @alpha = 1.0 if @alpha >= 1.0
112
- @wait.start
113
- end
114
- return @now
115
- end
116
-
117
- def exec_yuki
118
- message_box.update_animation
119
- @yuki.update
120
- return @yuki.result ? @yuki.result : @now
121
- end
122
-
123
- def plot
124
- yuki_plot do
125
- text("「レディ〜ス エ〜ン ジェントルメ〜ン!」").pause.cr
126
- text("「本日も、視聴者参加バラエティー").cr
127
- text(" 『ルーム3』の時間がは〜じまりま〜した〜!」").pause.clear
128
- text("「司会はわたくし、").cr
129
- wait 0.3
130
- text(" サミュエル・ボチボチデンナーが").cr
131
- text(" お送りしま〜す!」").pause.clear
132
- text("「本日も、難関を乗り越え、").cr
133
- text(" 豪華賞品をゲットするだけ!").cr
134
- wait 0.5
135
- text(" カンタン!」").pause.clear
136
- text("「ルールもカンタン!").cr
137
- text(" 3つの部屋にいる住人からヒントを得て、").pause.cr
138
- text(" 合言葉を見つけるだけ!").cr
139
- wait 0.5
140
- text(" ほら、カンタンでしょ?」").pause.clear
141
- text("「でも、これらの部屋にいる住人、").cr
142
- text(" 一筋縄じゃ合い言葉を教えてくれない。").cr
143
- wait 0.5
144
- text(" いろいろ話して、").cr
145
- text(" 合い言葉をゲットしてくれ!」").pause.clear
146
- text "「さぁ、最初の挑戦者だ。"
147
- wait 0.5
148
- text "お名前は?"
149
- wait 1.5
150
- cr
151
- text " ・・・おおー、元気いいねー!"
152
- wait 0.5
153
- cr
154
- text " じゃあ、どっから来たの?"
155
- wait 1.0
156
- cr
157
- text(" ・・・オーケイ、よくできました!」").pause.clear
158
- text "「じゃ、ルールは分かるよね?"
159
- wait 0.5
160
- cr
161
- text " ・・・よし」"
162
- pause.clear
163
- text "「ドキドキするねぇ、"
164
- wait 0.5
165
- cr
166
- text " ワクワクするねぇ"
167
- pause.cr
168
- text " それじゃ、元気よく、"
169
- cr
170
- text " 目の前のドアから入ってみよう。」"
171
- pause.clear
172
- text "「よーい、"
173
- wait 0.5
174
- text "スタート!」"
175
- pause.clear
176
- vars[:next]
177
- end
178
- end
179
-
180
- def render
181
- Bitmap.dec_alpha(@man, Screen, @alpha)
182
- message_box.render if @exec == self.method(:exec_yuki)
183
- end
184
- end
1
+ # -*- encoding: utf-8 -*-
2
+ class Title
3
+ include Story::Scene
4
+
5
+ def self.scene_type
6
+ return :scene
7
+ end
8
+
9
+ def init
10
+ font = Font.sans_serif
11
+ font.size = 24
12
+ font.color = Color[:white]
13
+ @push_key = Shape.text(:text=>"Push Any Key", :font=>font)
14
+ @push_key.center!.bottom!{|body| (0.1).ratio(body) }
15
+
16
+ @copy_right = Shape.text(:text=>"2006-2008 Cyross Makoto", :font=>font)
17
+ @copy_right.center!.bottom!{|body| (0.05).ratio(body) }
18
+
19
+ @visible = false
20
+
21
+ @title = Sprite.new(:file=>"image/mittsu_no_oheya.png", :type=>:ck)
22
+
23
+ @exec = self.method(:view_in)
24
+ end
25
+
26
+ def setup
27
+ @title.move_to!(Screen.w, 0)
28
+ end
29
+
30
+ def view_in
31
+ if @title.x > 0
32
+ @title.move!(-8, 0)
33
+ return @now
34
+ end
35
+ @visible = true
36
+ @exec = self.method(:waiting)
37
+ return @now
38
+ end
39
+
40
+ def waiting
41
+ if Input.pushed_any? || Input.click?(:left)
42
+ @exec = self.method(:view_out)
43
+ @visible = false
44
+ end
45
+ return @now
46
+ end
47
+
48
+ def view_out
49
+ if @title.x > -Screen.w
50
+ @title.move!(-8, 0)
51
+ return @now
52
+ end
53
+ return TitleCall
54
+ end
55
+
56
+ def update
57
+ return nil if (Input.pushed_any?(:esc) || Input.quit?)
58
+ return @exec.call
59
+ end
60
+
61
+ def render
62
+ @title.render
63
+ if @visible
64
+ @push_key.render
65
+ @copy_right.render
66
+ end
67
+ end
68
+ end
69
+
70
+ class TitleCall
71
+ include Story::Scene
72
+ include MainComponent
73
+
74
+ def init
75
+ @yuki = Yuki.new(message_box[:box]){|box|
76
+ select_textbox(box)
77
+ }
78
+ @man = Sprite.new(:file=>"image/start.png", :type=>:ck)
79
+ @man.center!.bottom!
80
+ @alpha = 0.0
81
+ @wait = WaitCounter.new(0.2)
82
+ @exec = self.method(:view_in)
83
+ end
84
+
85
+ def setup
86
+ @yuki.setup(plot){|plot|
87
+ select_plot(plot)
88
+ }
89
+ @yuki.vars[:next] = MainScene
90
+ @wait.start
91
+ end
92
+
93
+ def update
94
+ return nil if (Input.pushed_any?(:esc) || Input.quit?)
95
+ return @exec.call
96
+ end
97
+
98
+ def final
99
+ message_box.stop
100
+ end
101
+
102
+ def view_in
103
+ if @wait.finish?
104
+ if @alpha == 1.0
105
+ @yuki.start_plot
106
+ @exec = self.method(:exec_yuki)
107
+ message_box.start
108
+ return @now
109
+ end
110
+ @alpha += 0.15
111
+ @alpha = 1.0 if @alpha >= 1.0
112
+ @wait.start
113
+ end
114
+ return @now
115
+ end
116
+
117
+ def exec_yuki
118
+ message_box.update_animation
119
+ @yuki.update
120
+ return @yuki.result ? @yuki.result : @now
121
+ end
122
+
123
+ def plot
124
+ yuki_plot do
125
+ text("「レディ〜ス エ〜ン ジェントルメ〜ン!」").pause.cr
126
+ text("「本日も、視聴者参加バラエティー").cr
127
+ text(" 『ルーム3』の時間がは〜じまりま〜した〜!」").pause.clear
128
+ text("「司会はわたくし、").cr
129
+ wait 0.3
130
+ text(" サミュエル・ボチボチデンナーが").cr
131
+ text(" お送りしま〜す!」").pause.clear
132
+ text("「本日も、難関を乗り越え、").cr
133
+ text(" 豪華賞品をゲットするだけ!").cr
134
+ wait 0.5
135
+ text(" カンタン!」").pause.clear
136
+ text("「ルールもカンタン!").cr
137
+ text(" 3つの部屋にいる住人からヒントを得て、").pause.cr
138
+ text(" 合言葉を見つけるだけ!").cr
139
+ wait 0.5
140
+ text(" ほら、カンタンでしょ?」").pause.clear
141
+ text("「でも、これらの部屋にいる住人、").cr
142
+ text(" 一筋縄じゃ合い言葉を教えてくれない。").cr
143
+ wait 0.5
144
+ text(" いろいろ話して、").cr
145
+ text(" 合い言葉をゲットしてくれ!」").pause.clear
146
+ text "「さぁ、最初の挑戦者だ。"
147
+ wait 0.5
148
+ text "お名前は?"
149
+ wait 1.5
150
+ cr
151
+ text " ・・・おおー、元気いいねー!"
152
+ wait 0.5
153
+ cr
154
+ text " じゃあ、どっから来たの?"
155
+ wait 1.0
156
+ cr
157
+ text(" ・・・オーケイ、よくできました!」").pause.clear
158
+ text "「じゃ、ルールは分かるよね?"
159
+ wait 0.5
160
+ cr
161
+ text " ・・・よし」"
162
+ pause.clear
163
+ text "「ドキドキするねぇ、"
164
+ wait 0.5
165
+ cr
166
+ text " ワクワクするねぇ"
167
+ pause.cr
168
+ text " それじゃ、元気よく、"
169
+ cr
170
+ text " 目の前のドアから入ってみよう。」"
171
+ pause.clear
172
+ text "「よーい、"
173
+ wait 0.5
174
+ text "スタート!」"
175
+ pause.clear
176
+ vars[:next]
177
+ end
178
+ end
179
+
180
+ def render
181
+ Bitmap.dec_alpha(@man, Screen, @alpha)
182
+ message_box.render if @exec == self.method(:exec_yuki)
183
+ end
184
+ end