ruby-miyako 2.1.7 → 2.1.8

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.
data/README CHANGED
@@ -1,8 +1,8 @@
1
1
  *******************************************************************************
2
2
  【 作者名 】 サイロス誠
3
3
  【 ソフト名 】 Interactive Media Authoring System "Miyako"
4
- 【 バージョン 】 2.1.7
5
- 【 作成日 】 2010/01/03
4
+ 【 バージョン 】 2.1.8
5
+ 【 作成日 】 2010/01/16
6
6
  【 種別 】 フリーウェア
7
7
  【 開発言語 】 Ruby 1.9.1
8
8
  【 ランタイム 】 Ruby 1.9.1~,Ruby/SDL 2.1~,SDL
@@ -15,7 +15,7 @@
15
15
 
16
16
  【 注意事項 】
17
17
 
18
- 本バージョンは、2.1.7公式リリース版です。
18
+ 本バージョンは、2.1.8公式リリース版です。
19
19
  本バージョンでは、ドキュメント・リファレンスは不十分ですが、「サイログ。」内や、サンプルプログラムの紹介等で随時ドキュメントを公開して行きます。
20
20
  (RDOC化を進めていますので、我こそはと思う方は是非・・・)
21
21
 
@@ -1588,5 +1588,32 @@ v2.1.7(2010.01.03)
1588
1588
  ・InitiativeScenarioEngine#create_engine_stack
1589
1589
  <インスタンスメソッド廃止>
1590
1590
 
1591
+ v2.1.8(2010.01.16)
1592
+ <バグ修正>
1593
+ ・Input.updateで、ゲームパッドの方向ボタンが有効なときに、アナログスティックを触る(JoyHatイベントが発生する)と、エラーを出すバグを修正
1594
+ <機能改善>
1595
+ ・InitiativeScenarioEngineクラスにGC許可・不可の指定を追加した
1596
+ <仕様変更>
1597
+ ・Miyako.main_loopに第2引数を追加(ループの最後にガベージコレクションするときは、第2引数をtrueにする)
1598
+ ・Movieクラスで動画を再生できない問題が発生いたしましたので、Movieクラスの使用を一時停止します
1599
+ <ファイル追加>
1600
+ <ファイル削除>
1601
+ <グローバル変数追加>
1602
+ <定数追加>
1603
+ <定数削除>
1604
+ <構造体追加>
1605
+ <クラス追加>
1606
+ <モジュール追加>
1607
+ <mixin>
1608
+ <クラス・モジュールメソッド追加>
1609
+ <クラス・モジュールメソッド廃止>
1610
+ <モジュール関数追加>
1611
+ <モジュール関数廃止>
1612
+ <インスタンスメソッド追加>
1613
+ ・InitiativeScenarioEngine#gc_enable
1614
+ ・InitiativeScenarioEngine#gc_disable
1615
+ ・InitiativeScenarioEngine#gc_enable?
1616
+ <インスタンスメソッド廃止>
1617
+
1591
1618
  *******************************************************************************
1592
1619
  このReadMeファイルは「れ~どめ~えじた~」によって作成されました。
data/lib/Miyako/miyako.rb CHANGED
@@ -146,7 +146,7 @@ require 'Miyako/API/shape'
146
146
  require 'Miyako/API/plane'
147
147
  require 'Miyako/API/input'
148
148
  require 'Miyako/API/audio'
149
- require 'Miyako/API/movie'
149
+ #require 'Miyako/API/movie'
150
150
  require 'Miyako/API/parts'
151
151
  require 'Miyako/API/choices'
152
152
  require 'Miyako/API/textbox'
data/miyako_input_audio.c CHANGED
@@ -116,7 +116,7 @@ static VALUE input_update(VALUE self)
116
116
  {
117
117
  VALUE e2 = *(ptr + len - i - 1);
118
118
  VALUE proc = rb_hash_lookup(process, CLASS_OF(e2));
119
- rb_funcall(proc, id_call, 1, e2);
119
+ if(proc != Qnil){ rb_funcall(proc, id_call, 1, e2); }
120
120
  if(rb_hash_lookup(trigger, sy_alt) == nOne &&
121
121
  rb_hash_lookup(pushed, sy_ent) == nOne &&
122
122
  toggle == Qtrue)
data/miyako_no_katana.c CHANGED
@@ -101,10 +101,13 @@ static VALUE anim_m_update(VALUE self);
101
101
  static VALUE miyako_main_loop(int argc, VALUE *argv, VALUE self)
102
102
  {
103
103
  VALUE clear = Qnil;
104
+ VALUE gc = Qnil;
104
105
  int is_clear = 0;
106
+ int use_gc = 0;
105
107
  if(argc == 0){ is_clear = 1; }
106
- rb_scan_args(argc, argv, "01", &clear);
108
+ rb_scan_args(argc, argv, "02", &clear, &gc);
107
109
  if(clear != Qnil && clear != Qfalse){ is_clear = 1; }
110
+ if(gc != Qnil && gc != Qfalse){ use_gc = 1; }
108
111
  rb_need_block();
109
112
  for(;;)
110
113
  {
@@ -116,6 +119,7 @@ static VALUE miyako_main_loop(int argc, VALUE *argv, VALUE self)
116
119
  _miyako_counter_post_update();
117
120
  anim_m_update(mAnimation);
118
121
  _miyako_screen_render();
122
+ if(use_gc){ rb_gc_start(); }
119
123
  }
120
124
  return Qnil;
121
125
  }
data/miyako_yuki.c CHANGED
@@ -55,6 +55,7 @@ static volatile ID id_render_inner = Qnil;
55
55
  static volatile ID id_render_to_inner = Qnil;
56
56
  static volatile int zero = 0;
57
57
  static volatile int one = 1;
58
+ static volatile int gc_enable = 0;
58
59
  static const char *str_visible = "@visible";
59
60
  static const char *str_visibles = "@visibles";
60
61
  static const char *str_o_yuki = "@over_yuki";
@@ -146,6 +147,7 @@ static VALUE iyuki_post_process(VALUE self)
146
147
  _miyako_counter_post_update();
147
148
  _miyako_animation_update();
148
149
  _miyako_screen_render();
150
+ if(gc_enable){ rb_gc_start(); }
149
151
  return self;
150
152
  }
151
153
 
@@ -166,6 +168,32 @@ static VALUE iyuki_update(VALUE self)
166
168
  return Qnil;
167
169
  }
168
170
 
171
+ /*
172
+ :nodoc:
173
+ */
174
+ static VALUE iyuki_gc_enable(VALUE self)
175
+ {
176
+ gc_enable = 1;
177
+ return Qnil;
178
+ }
179
+
180
+ /*
181
+ :nodoc:
182
+ */
183
+ static VALUE iyuki_gc_disable(VALUE self)
184
+ {
185
+ gc_enable = 0;
186
+ return Qnil;
187
+ }
188
+
189
+ /*
190
+ :nodoc:
191
+ */
192
+ static VALUE iyuki_is_gc_enable(VALUE self)
193
+ {
194
+ return (gc_enable ? Qtrue : Qfalse);
195
+ }
196
+
169
197
  void Init_miyako_yuki()
170
198
  {
171
199
  mSDL = rb_define_module("SDL");
@@ -204,4 +232,7 @@ void Init_miyako_yuki()
204
232
  rb_define_method(cIYuki, "pre_process", iyuki_pre_process, -1);
205
233
  rb_define_method(cIYuki, "post_process", iyuki_post_process, 0);
206
234
  rb_define_method(cIYuki, "update", iyuki_update, 0);
235
+ rb_define_method(cIYuki, "gc_enable", iyuki_gc_enable, 0);
236
+ rb_define_method(cIYuki, "gc_disable", iyuki_gc_disable, 0);
237
+ rb_define_method(cIYuki, "gc_enable?", iyuki_is_gc_enable, 0);
207
238
  }
data/sample/transform.rb CHANGED
@@ -36,9 +36,9 @@ Screen.pre_render_array << [:s2, @sprite]
36
36
  Screen.center_x = Screen.w/2
37
37
  Screen.center_y = Screen.h/2
38
38
 
39
- Miyako.main_loop do
39
+ Miyako.main_loop(false, false) do
40
40
  break if Input.quit_or_escape?
41
- Screen.pre_render
41
+ Screen.pre_render
42
42
  # 回転
43
43
  # Bitmap.rotate(@sprite, Screen, angle)
44
44
  # 拡大/縮小
@@ -46,10 +46,10 @@ Miyako.main_loop do
46
46
  # 回転/拡大/縮小
47
47
  Bitmap.transform(@sprite, Screen, angle, xscale, yscale)
48
48
  # 拡大縮小率の変更
49
- xscale -= RATE
50
- xscale = MAX if xscale < MIN
51
- yscale -= RATE
52
- yscale = MAX if yscale < MIN
49
+ xscale -= RATE
50
+ xscale = MAX if xscale < MIN
51
+ yscale -= RATE
52
+ yscale = MAX if yscale < MIN
53
53
  # 回転角度の変更
54
54
  angle = (angle + @rate) % (Math::PI*2.0)
55
55
  end
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-miyako
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.7
4
+ version: 2.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cyross Makoto
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-01-03 00:00:00 +09:00
12
+ date: 2010-01-16 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies: []
15
15