ruby-miyako 2.1.12 → 2.1.13

Sign up to get free protection for your applications and to get access to all the features.
data/README CHANGED
@@ -1,8 +1,8 @@
1
1
  *******************************************************************************
2
2
  【 作者名 】 サイロス誠
3
3
  【 ソフト名 】 Interactive Media Authoring System "Miyako"
4
- 【 バージョン 】 2.1.12
5
- 【 作成日 】 2010/05/04
4
+ 【 バージョン 】 2.1.13
5
+ 【 作成日 】 2010/05/20
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.12公式リリース版です。
18
+ 本バージョンは、2.1.13公式リリース版です。
19
19
  本バージョンでは、ドキュメント・リファレンスは不十分ですが、「サイログ。」内や、サンプルプログラムの紹介等で随時ドキュメントを公開して行きます。
20
20
  (RDOC化を進めていますので、我こそはと思う方は是非・・・)
21
21
 
@@ -115,7 +115,7 @@ WindowsXp Home/Pro、WindowsVista、Linux、MacOSX等、Ruby/SDLが動作する
115
115
 
116
116
  CPU    :PentiumIII以降(Pentium4奨励、動画使うなら2GHzは欲しい)
117
117
  メモリ    :256MB(512MB以上奨励)
118
- ビデオメモリ :8MB(32bitカラー対応、64MB以上奨励)
118
+ ビデオメモリ :8MB(32bitカラー専用、64MB以上奨励)
119
119
  サウンドカード:必須(出来ればSoundBlaster Live!クラス)
120
120
 
121
121
  Ruby1.9.1以降(Ruby1.9.2対応)
@@ -1776,5 +1776,32 @@ v2.1.12(2010.05.04)
1776
1776
  <インスタンスメソッド廃止>
1777
1777
  <ドキュメント>
1778
1778
 
1779
+ v2.1.13(2010.05.20)
1780
+ <バグ修正>
1781
+ ・SpriteAnimationクラスオブジェクトで、移動系メソッドを使用すると、表示する位置が狂う問題を修正
1782
+ <機能改善>
1783
+ ・Diagram::Processor,Diagram::RendererにSpriteBase,Animation.Lauoutを追加
1784
+  ・スプライトと同じ扱いに変更
1785
+ <仕様変更>
1786
+ <ファイル追加>
1787
+ <ファイル削除>
1788
+ <グローバル変数追加>
1789
+ <定数追加>
1790
+ <定数削除>
1791
+ <構造体追加>
1792
+ <クラス追加>
1793
+ <モジュール追加>
1794
+ <mixin>
1795
+ <クラス・モジュールメソッド追加>
1796
+ <クラス・モジュールメソッド廃止>
1797
+ <モジュール関数追加>
1798
+ <モジュール関数廃止>
1799
+ <インスタンスメソッド追加>
1800
+ ・SpriteAnimation#changed?
1801
+ <インスタンスメソッド廃止>
1802
+ <ドキュメント>
1803
+ ・リファレンスマニュアルの拡充
1804
+  ・Bitmap,Choice,Choices,Map,MapLayer,FixedMap,FixedMapLayer,Utility,Viewport
1805
+
1779
1806
  *******************************************************************************
1780
1807
  このReadMeファイルは「れ~どめ~えじた~」によって作成されました。
@@ -439,9 +439,15 @@ module Miyako
439
439
  #Processor#render メソッドのみを呼び出せる
440
440
  #インスタンス生成は、Processor#renderer メソッドを呼び出して行う
441
441
  class Renderer
442
+ include SpriteBase
443
+ include Animation
444
+ include Layout
445
+
442
446
  attr_accessor :visible #レンダリングの可否(true->描画 false->非描画)
443
447
 
444
448
  def initialize(obj) #:nodoc:
449
+ init_layout
450
+ set_layout_size(1,1)
445
451
  @renderer = obj
446
452
  @visible = true
447
453
  end
@@ -462,6 +468,10 @@ module Miyako
462
468
  #==遷移図操作クラス
463
469
  #遷移図形式の処理を制御するクラス
464
470
  class Processor
471
+ include SpriteBase
472
+ include Animation
473
+ include Layout
474
+
465
475
  #遷移図本体。Manager クラスのインスタンス
466
476
  attr_reader :diagram
467
477
  attr_accessor :visible #レンダリングの可否(true->描画 false->非描画)
@@ -472,6 +482,8 @@ module Miyako
472
482
  #(Manager#add, Manager#add_arrow の各メソッドを参照)
473
483
  #返却値:: 生成されたインスタンス
474
484
  def initialize
485
+ init_layout
486
+ set_layout_size(1,1)
475
487
  @states = {:execute => false, :pause => false, :type1 => false }
476
488
  @diagram = Miyako::Diagram::Manager.new
477
489
  @visible = true
@@ -88,6 +88,8 @@ module Miyako
88
88
  @chr_len = 1
89
89
  @chr_olen = 1
90
90
 
91
+ @changed = false
92
+
91
93
  @slist = Array.new
92
94
  if s.kind_of?(Sprite)
93
95
  @pat_len = @dir == :h ? s.h : s.w
@@ -203,8 +205,9 @@ module Miyako
203
205
  set_layout_size(first.ow, first.oh)
204
206
  move_to!(first.x, first.y)
205
207
  @slist.each{|ss|
206
- ss.snap(self)
207
- ss.left!.top!
208
+ # ss.snap(self)
209
+ # ss.left!.top!
210
+ ss.move_to!(first.x, first.y)
208
211
  }
209
212
  end
210
213
 
@@ -248,7 +251,7 @@ module Miyako
248
251
  end
249
252
 
250
253
  def update_layout_position #:nodoc:
251
- @slist.each{|u| u.move_to!(*@layout.pos)}
254
+ @slist.each{|u| u.move_to!(*@layout.pos) }
252
255
  end
253
256
 
254
257
  #===現在表示しているスプライトのowを取得する
@@ -417,6 +420,12 @@ module Miyako
417
420
  return self
418
421
  end
419
422
 
423
+ #===先の更新でパターンが更新されたかどうかを返す
424
+ #返却値:: true/false
425
+ def changed?
426
+ return @changed
427
+ end
428
+
420
429
  #===アニメーションが実行中かを返す
421
430
  #返却値:: アニメーションが実行されていれば true
422
431
  def exec?
data/lib/Miyako/miyako.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  #=コンテンツ作成ライブラリMiyako2.1
4
4
  #
5
5
  #Authors:: サイロス誠
6
- #Version:: 2.1.12
6
+ #Version:: 2.1.13
7
7
  #Copyright:: 2007-2010 Cyross Makoto
8
8
  #License:: LGPL2.1
9
9
  #
@@ -63,7 +63,7 @@ Thread.abort_on_exception = true
63
63
 
64
64
  #==Miyako基幹モジュール
65
65
  module Miyako
66
- VERSION = "2.1.12"
66
+ VERSION = "2.1.13"
67
67
 
68
68
  #===アプリケーション実行中に演奏する音楽のサンプリングレートを指定する
69
69
  #単位はHz(周波数)
data/miyako_no_katana.c CHANGED
@@ -1228,6 +1228,7 @@ static VALUE sa_update_frame(VALUE self)
1228
1228
  if(cnt > 0){
1229
1229
  cnt--;
1230
1230
  rb_iv_set(self, "@cnt", INT2NUM(cnt));
1231
+ rb_iv_set(self, "@changed", Qfalse);
1231
1232
  return Qfalse;
1232
1233
  }
1233
1234
 
@@ -1242,6 +1243,7 @@ static VALUE sa_update_frame(VALUE self)
1242
1243
 
1243
1244
  if(loop == Qfalse && pnum == 0){
1244
1245
  rb_funcall(self, rb_intern("stop"), 0);
1246
+ rb_iv_set(self, "@changed", Qfalse);
1245
1247
  return Qfalse;
1246
1248
  }
1247
1249
 
@@ -1249,6 +1251,7 @@ static VALUE sa_update_frame(VALUE self)
1249
1251
  plist = rb_iv_get(self, "@plist");
1250
1252
  waits = rb_iv_get(self, "@waits");
1251
1253
  rb_iv_set(self, "@cnt", *(RARRAY_PTR(waits) + NUM2INT(*(RARRAY_PTR(plist) + pnum))));
1254
+ rb_iv_set(self, "@changed", Qtrue);
1252
1255
 
1253
1256
  return Qtrue;
1254
1257
  }
@@ -1263,7 +1266,10 @@ static VALUE sa_update_wait_counter(VALUE self)
1263
1266
  VALUE cnt = rb_iv_get(self, "@cnt");
1264
1267
  VALUE waiting = rb_funcall(cnt, rb_intern("waiting?"), 0);
1265
1268
 
1266
- if(waiting == Qtrue) return Qfalse;
1269
+ if(waiting == Qtrue){
1270
+ rb_iv_set(self, "@changed", Qfalse);
1271
+ return Qfalse;
1272
+ }
1267
1273
 
1268
1274
  num = rb_iv_get(self, "@pnum");
1269
1275
  loop = rb_iv_get(self, "@loop");
@@ -1276,6 +1282,7 @@ static VALUE sa_update_wait_counter(VALUE self)
1276
1282
 
1277
1283
  if(loop == Qfalse && pnum == 0){
1278
1284
  rb_funcall(self, rb_intern("stop"), 0);
1285
+ rb_iv_set(self, "@changed", Qfalse);
1279
1286
  return Qfalse;
1280
1287
  }
1281
1288
 
@@ -1285,6 +1292,7 @@ static VALUE sa_update_wait_counter(VALUE self)
1285
1292
  cnt = *(RARRAY_PTR(waits) + NUM2INT(*(RARRAY_PTR(plist) + pnum)));
1286
1293
  rb_iv_set(self, "@cnt", cnt);
1287
1294
  rb_funcall(cnt, rb_intern("start"), 0);
1295
+ rb_iv_set(self, "@changed", Qtrue);
1288
1296
  return Qtrue;
1289
1297
  }
1290
1298
 
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.12
4
+ version: 2.1.13
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-05-04 00:00:00 +09:00
12
+ date: 2010-05-20 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -201,8 +201,6 @@ files:
201
201
  - ./win/miyako_no_katana.so
202
202
  has_rdoc: true
203
203
  homepage: http://www.twin.ne.jp/~cyross/Miyako/
204
- licenses: []
205
-
206
204
  post_install_message:
207
205
  rdoc_options:
208
206
  - -c utf-8
@@ -224,9 +222,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
224
222
  requirements: []
225
223
 
226
224
  rubyforge_project:
227
- rubygems_version: 1.3.5
225
+ rubygems_version: 1.3.1
228
226
  signing_key:
229
- specification_version: 3
227
+ specification_version: 2
230
228
  summary: Game programming library for Ruby
231
229
  test_files: []
232
230