******************************************************************************* 【 作者名 】 サイロス誠 【 ソフト名 】 Interactive Media Authoring System “Miyako” 【 バージョン 】 2.1.13 【 作成日 】 2010/05/20 【 種別 】 フリーウェア 【 開発言語 】 Ruby 1.9.1 【 ランタイム 】 Ruby 1.9.1~,Ruby/SDL 2.1~,SDL 【 対応機種 】 Windows 2000/XP/Vista、Linux、MacOSX 【 再配布 】 GNU LGPL 2.1に基く 【 転載 】 GNU LGPL 2.1に基く 【ホームページ】 www.twin.ne.jp/~cyross/Miyako/ 【 連絡先 】 [email protected] *******************************************************************************

【 注意事項 】

本バージョンは、2.1.13公式リリース版です。 本バージョンでは、ドキュメント・リファレンスは不十分ですが、「サイログ。」内や、サンプルプログラムの紹介等で随時ドキュメントを公開して行きます。 (RDOC化を進めていますので、我こそはと思う方は是非・・・)

(メインサイト) www.twin.ne.jp/~cyross/Miyako/ (日記) d.hatena.ne.jp/cyross/

【 はじめに 】

このソフトはゲームを作成したり、ゲームを作成したり、ゲームを作成するような感覚でプレゼンテーションなどを作成できるRubyのライブラリ・簡易フレームワークです。 Ruby上で使えるメディアライブラリ「Ruby/SDL」のラッパークラスとして利用します。

元々は「EGSR(Easy Game Scripting by Ruby)」というタイトルで、汎用ゲーム作成クラスライブラリでしたが、ゲーム以外にも応用が利くため、ゲームに囚われないタイトルにしようと考え、名称を変更いたしました。

「簡単」とまではいかなくても、「気楽」に制作やRubyの勉強が出来ていただければと思っています。

【 Miyakoの由来 】

Miyakoのタイトルは、以下の事柄に由来しています

・「都」というネーミングは勿論「京都」から取った ・ゲーム業界に大きな影響を与えた任天堂の本社が京都にあることに由来する ・リッチ・コンテンツを気楽に作れるということで、優雅そうなイメージを「はんなりと」醸し出す、「都」という漢字から取った ・Miyakoの前身、EGSRの制作のきっかけとなったのが京都で行われた「Ruby勉強会@関西-7」だったため ・名前を考える際にたまたま読んでいた漫画『えすぴー都見参!(岬下部せすな・まんがタイムKRコミックス)』の主人公・五条都(ごじょう・みやこ)から取った?

【 特徴 】

このライブラリの特徴は以下の通り。

・ゲームを作るような感覚でプレゼンテーションやe-ラーニングのシステムを作れる(はず) ・カスタマイズ性に富んだMiyako APIとより簡単にコンテンツ作成ができるMiyako Extensionの2構成 ・シナリオ言語Yuki(DSL風Rubyスクリプト、v1.5pre6からはスレッドに対応) ・Storyモジュールによる簡単なフレームワークを用意(各画面の構成が分かり易くなります) ・スプライトには、位置情報を抽象的に実装できるレイアウト機能、  対象の図形のレイアウトに準じたレイアウト設定が出来るスナップ機能を搭載 ・図形を描いたスプライトを作成するShapeクラス ・アニメーションを管理するAnimationSpriteクラス ・当たり判定を簡単に実装できるCollisionクラス ・スプライト以外の画像を表示できるSpriteUnit構造体 ・配列に画像描画などの機能を付け加えるSpriteArrayモジュール(Arrayクラスには標準でmixin済み) ・2次元グラフィックライブラリCairoとの画像変換を容易にしたMiyakoCairoモジュール(EXT扱い、v2.0~) ・拡張ライブラリを使用した高速な描画 ・Windows/Linux/MacOSX等に対応(他OSへの動作レポートお願いします) ・インストーラー付き ・ゲーム作成に最低限必要な構成をカプセル化(スプライト、ウィンドウ、サウンド等) ・スプライトを通じての文字描画や図形描画が可能(図形描画はブロックを介して行う、takahashiメソッドも追加) ・文字描画を簡潔に行うTextBoxクラス ・Waveファイルによる効果音、ogg/MIDI/MP3によるBGM演奏 ・MPEGファイルによるムービー再生に対応 ・キーボード、ジョイパッド両対応(1人プレイのみという制限付きです・・・) ・マウス対応(v1.0~) ・Ruby/SDLの機能が使える(ラッパークラスなので) ・Rubyの勉強に役に立つ(ハズ)

ちなみに、今のところ以下の問題・制限があります。

・エラーの整備が不十分 ・ドキュメントが全然整っていない(リファレンスはまだまだ・・・)  →各種チュートリアルや「るびま」記事などでドキュメントを拡充する予定

【 開発環境 】

<メイン開発PC> CPU : Core2Duo E6850 MEM : 8GB(2GBx4) M/B : GIGABYTE P35-DS4 VID : GeForce 8800GT S/B : Creative SoundBlaster X-Fi PAD : BUFFALO BGC-FC802

Logicool G-UF13

OS : Microsoft WindowsXp SP3

Microsoft WindowsVista Ultimate(x64) SP1

DEV : Notepad++ v5.3.1-6

mingw32版Ruby 1.9.2dev + Ruby/SDL 2.1.1
MinGW+MSYS(miyako_no_katanaビルド)

<サブ開発PC> Panasonic Let’sNOTE Light S9 CPU : Core i5 MEM : 4GB(2GBx2) PAD : SANWA SUPPLY JY-P1W OS : Microsoft Windows7 x64 DEV : Notepad++ v5.3.1-6

mswin32版Ruby 1.9.2dev + Ruby/SDL 2.1.1

【 動作確認環境 】

上記環境に追加して、Ubuntu9.04(x86)+Ruby1.9.1+Ruby/SDL2.1.1で動作確認済み

【 動作環境 】

WindowsXp Home/Pro、WindowsVista、Linux、MacOSX等、Ruby/SDLが動作する環境 (但し、Windows,Linux以外の動作未確認です

もし動いたらレポートお願いします)

CPU    :PentiumIII以降(Pentium4奨励、動画使うなら2GHzは欲しい) メモリ    :256MB(512MB以上奨励) ビデオメモリ :8MB(32bitカラー専用、64MB以上奨励) サウンドカード:必須(出来ればSoundBlaster Live!クラス)

Ruby1.9.1以降(Ruby1.9.2対応) Ruby/SDL 2.1+対応SDLライブラリ群 (SDL、SDL_ttf、SDL_image、SDL_Mixer、SGE、smpeg)

【 ファイル構成 】

アーカイブファイルを展開すると以下のファイルが展開されます。

・miyako.rb(Miyakoライブラリ) ・win/miyako_no_katana.so(Windows用miyako_no_katana) ・libディレクトリ(ライブラリ本体) ・miyako_no_katana/miyako_no_katana.c(miyako_no_katanaソース) ・miyako_no_katana/extconf.rb(miyako_no_katanaコンパイル用configureファイル) ・install_miyako.rb(Miyakoインストール実行ファイル) ・README(本ファイル) ・docディレクトリ(リファレンスマニュアル)

【 インストール 】

以下の手順でインストールを行います。

1.Rubyのインストール

Linuxでは標準でRubyがインストールされていいるはずですので説明は割愛します。 なお、バージョンは最新の1.9系統(1.9.1以降)でお願いします。

Windowsでは、以下のサイトにあるActiveRubyのインストールをお願いします。 (詳しい説明は割愛)

「COM Meets Ruby」 arton.hp.infoseek.co.jp/indexj.html

また、Windows用には、後述の「Ruby、SDL、Ruby/SDLパック」というものがあり、これをインストールすると、別途Ruby/SDLをインストールすることなく、RubyとRuby/SDLを利用することが出来ます(但し、Windowsの詳しい操作に慣れていない方には難しい作業が必要になる可能性があります。また、ベースとなっているRuby/SDLがv1.2ですので、MP3ファイルの再生はサポートされておりません)。

2.SDLのインストール

Linuxでインストールされる場合は、まずSDLをインストールする必要があります。 以下のサイトでSDLが配布されていますので必要なライブラリをダウンロードします。

www.libsdl.org/

必須ライブラリは以下の通り ・SDL ・SDL_image ・SDL_Mixer ・SDL_ttf ・SGE ・SMPEG(←1.4で追加)

Windowsでは、Ruby/SDL公式サイトにあるバイナリパッケージや、Ruby/SDL入りRubyパッケージのインストールの方が便利でしょう。

インストールが完了したら、続いてRuby/SDLをインストールします。

3.Ruby/SDLのインストール

もうひとつの必須ライブラリ、Ruby/SDLをインストールします、。。 インストールの仕方は以下のRuby/SDL公式サイトを参考にしてください。

www.kmc.gr.jp/~ohai/rubysdl.html

Windowsでは、Ruby/SDLバイナリパッケージの使用をお奨めします。 (Windowsユーザ以外の方は、後述の(注意)の項をお読みください)

なお、RubyやSDL、Ruby/SDLのインストールに関するトラブルは当方では一切責任を負いません。 また、インストールに関する質問にも受付できません。 自己責任でお願いします。

4.Miyakoのインストール

展開したフォルダにあるinstall_miyako.rbをRubyで実行します。

インストールには、以下のオプションが利用できます。

–force : Rubyライブラリフォルダに既にMiyakoフォルダがあるときはインストールを行いませんが、インストールを強制したいときに使います。

また、本ライブラリでは、標準フォントとして「MS 明朝」「MS ゴシック」 「メイリオ」「さざなみフォント」「VLゴシックフォント」が利用できます。

フォントのインストール等については自己責任でお願いします。 (MS明朝/ゴシック/メイリオはWindows標準添付(メイリオはVistaのみ)ですので、特にインストールの必要がありません)

これでインストールが完了です。

(注意)Miyakoのバイナリファイルをビルドする場合の注意点

バージョン2.0から、miyako_no_katanaから、Ruby/SDLのデータから直接SDLのサーフェスデータを 直接アクセスするため、Ruby/SDLのヘッダファイルと、SDLの開発ライブラリが必要になりました (特に、sdl-configシェルスクリプトが必要です)。

また、sdl-configの場所を正しく指定できる様に、環境変数SDL_CONFIG_PATH(sdl-configの実行パス)のを参照しています。 ビルド前に必ず設定をお願いいたします。

(例)SDL_CONFIG_PATH=‘sdl-config’

# お手数とは思いますが、LinuxやMacOSXなどで設定した方法をフィードバックしていただけると大いに助かります。 # フィードバックは次期バージョンに反映いたします。

【 アンインストール 】

特に、レジストリなどのシステム部分をいじっていないので、ライブラリディレクトリのMiyakoフォルダを削除すればアンインストールは完了です。

【 使い方 】

まず、Miyakoを使用したいRubyスクリプトにmiyako.rbをrequireしてください。

require ‘miyako’

これで、Miyakoの機能を利用できます。

更に、拡張機能を使いたいときは、次の行に

require ‘Miyako/EXT/利用したいライブラリ名’

と入力します。 たとえば、Slideクラスを利用したいときは、「require ‘Miyako/EXT/slides’」と入力します。

利用できる拡張機能は以下の3種類です。

1.RasterScrollクラス(ラスタスクロールを管理するクラス) : EXT/raster_scroll 2.Slideモジュール(スライド生成・管理を行えるモジュール) : EXT/slides

各種機能につきましては、リファレンスマニュアルをご参照ください。

【ライセンス】

本ライブラリはGNU Lesser General Public Lisence 2.1に準拠しています。 しかし、本ライブラリを使用したソフトウェアについては、その制作者に帰属します。 ただし、事後でも構いませんので連絡いただけると幸いです。

同時に収録している、wait_cursor.png、cursor.png、dice.pngはご自身のMiyako Scriptでご自由に使っていただいて構いません。

フォントの再利用につきましては、それぞれのフォントのライセンスに従うよう、ご了承お願いいたします。

本ライブラリでは、一部のコードで、Ruby/SDLのコードを利用しています。 Ruby/SDLのソースコードは、以下の場所からリンクを辿ってダウンロード可能です。 (以下のURLは、RUBYFORGE内のRuby/SDLダウンロードURLです)

rubyforge.org/frs/?group_id=1006

【 免責 】

本ソフトは”無保証”です。 本ソフトを使用した事によるトラブルにつきましては、いかなる理由があっても一切責任を負いません。 本ソフトのバージョンアップやバグフィックスには出来る限り対処いたします。しかし、上記に対する責務は負いません。

【 謝辞 】

Rubyを作られたまつもとゆきひろさん Ruby/SDLを作られたo-haiさん ActiveRubyを作られたartonさん RGSSを作られた尾島陽児さん

EGSR作成のきっかけを作ってくださったGollumさん

RGSS発表の場を与えて下さったRuby@関西の皆さん

MacOSX対応のアドバイスをいただいた、waturaさん、makさん

その他、活動を支えてくださった皆様

あなた方が居なければ、こんなに楽しい作業に踏み込める機会はなかったと思います。

-皆様に並々ならぬ感謝の気持ちで一杯です。ありがとうございます。

【 開発履歴 】

V0.0.1(2006.02.19)

・初版

V0.0.2(2006.02.26)

・ウィンドウの背景から余分な領域を切り取る割合を指定できる  EGSR::Window#marginプロパティを追加 ・ウィンドウ表示中でもクライアント領域の大きさを変更することが可能になった  (EGSR::Window#clientW/H、EGSR::Window#setClientプロパティを追加) ・スプライト描画順の決定を見直し、高速化を行った ・画面への文字描画を制御するEGSR::Sprite#contextVisibleプロパティを追加  (EGSR::Windowクラスにも同様のプロパティを追加) ・drawText,drawTextMildメソッドから表示の高さを指定する引数を廃止  (ユーザ側の責任によるコーディングに変更) ・contextプロパティに文字列を代入すると自動的にコンパイルされ、  コンテキストデータクラス(EGSR::ContextDataクラス)の配列を生成するように修正 ・スクロール文字列(文字が左から右に流れる描画)の可否を指定する  EGSR::Sprite/Window#textScrollプロパティを追加 ・コンテキスト取得のための操作メソッド  EGSR::Sprite/Window#nextContext,clearContext,resetContextメソッドを追加 ・EGSR::Sprite/Window#rcontextプロパティの廃止 ・効果音を演奏しているかを示すEGSR::Andio::SE#playing?メソッドの追加 ・その他、若干のバグの修正

V0.02a(2006.02.27)

・サンプルプログラムrubyma.rbの文字化けを解消 ・サンプルにwindow.pngが入っていなかったため、添付 ・readme.txtを修正

V0.1(2006.03.05)

・OSの制限を撤廃した(Windows系統とその他OSの違いは、フォントサーチにc:windowsfontを探しに行くだけ) ・スプライトのtextAreaX、textAreaYプロパティの廃止→x,yに共通化 ・プロパティtextMarginLeft/Right/Top/BottomをSpriteクラスのプロパティに  (Windowsクラスのものは内部スプライトへ委譲) ・Mapクラスのスクロールの高速化 ・Mapクラスのコンストラクタのインタフェース仕様変更  (マップチップファイル名のところをnilにするとイベントマップとして認識するように変更) ・Map/MapFastクラスのgetCodeのインタフェースを変更(レイヤの指定を行うようにした) ・Point,Sizeクラスの追加 ・Colorクラスのバグを修正、Colorクラスのプロパティにa(α値)を追加 ・Spiriteクラスのコンストラクタに機能追加、aplha値をnilにするとアルファブレンディング付きの画像と認識する ・リファレンスマニュアルにイメージを追加 ・windowtestサンプルをより見栄え良く変更 ・各種バグ修正 ・readme.txtを修正

V0.1a(2006.03.05)

・Map/MapFast#getCodeメソッドのバグ修正 ・マップ上で使用されているチップ1枚の大きさを返す  Map/MapFast#chipSizeプロパティの追加 ・コンテキストコンパイラで、一部文字列で改行のContextDataが出力されなかった  バグを修正 ・マップ移動に関するサンプルスクリプトを同梱 ・コマンド選択ウィンドウに関するサンプルスクリプトを同梱

V0.5(2006.03.19)

・タイトルを「Miyako」に変更、モジュール名も「Miyako」に変更 ・Screenモジュールにx,yプロパティを追加(画面揺らし等に使用) ・文字列の表示位置を指定するLocate=x,yマクロを追加 ・Font::drawText(Mild)メソッドのh引数を廃止 ・文字列表示に使用する配列の名称を、「コンテキスト」から「メッセージ」に変更 ・ContextDataクラスの名前をMessageDataに変更 ・ContextCompilerクラスの名前をMessageCompilerに変更 ・MessageArrayクラスの追加 ・Sprite/Windowクラスのメッセージ関連メソッドはmesプロパティ  (MessageArrayクラス)に移動 ・Spriteクラスにエフェクト管理プロパティeffectを追加 ・Inputモジュールの移動キーにカーソルキーを追加 ・Inputモジュールにtrigger?、pushed?メソッドを追加 ・InputモジュールにtriggerAmount、pushedAmountを追加 ・InputモジュールにamountX、amountYを追加 ・Authorモジュールの追加 ・エフェクト処理クラスEffectを追加 ・その他、若干のバグ修正

V0.6(2006.4.23)

・スプライト描画で、文字描画と図形描画の順番を入れ替え  (スプライトを表示したとき、前面から図形→文字→画像の順に表示される) ・透明度付きスプライト作成の記述を簡潔にするための  Sprite.load2/create2/createFromBitmap2/createPlane2メソッドを追加  透明色座標→透明度の順番を透明度→透明度座標の順になり、  透明度のデフォルトがnilに ・TextBoxクラスの追加(ウィンドウに表示する文字数が多くなると  その量に比例して文字の表示速度が落ちる問題の修正) ・WindowクラスをWindow2クラスに変更 ・新規にWindowクラスを追加(ベースがTextBoxクラスに) ・WindowParamクラスの仕様を変更、クラス名をWParamクラスに ・InputモジュールにtriggerDirNum、pushedDirNumメソッドを追加 ・Inputモジュールでデジタル・アナログ両対応のゲームパッドを使用すると  操作中に誤動作が起こる問題を修正 ・MessageDataクラスのコマンドに「yesno」、「command」を追加 ・MessageDataクラスのコマンドに「label」、「expr」、「sound」を追加 ・MessageDataクラスのコマンドに「“~”(値を返さない評価)」「“”~“”(値を返す評価)」を追加(区切り子はクォーテーション以外、例えば|~|、||~||でも使用できる) ・フォントファイルのサーチパスを入れるグローバル配列「$font_path」を追加  (使用時に、Arrayクラスのインスタンスを作成しておきます) ・miyako拡張クラスライブラリ「miyako_ext.rb」を追加 ・インストール方法の変更 ・リファレンスマニュアルの改訂 ・その他、若干のバグ修正

V0.7(2006.6.3)

・システムフォントが必要でないスクリプトでも、システムフォントを用意していないとエラーになる問題を修正 ・Miyako Extensionで、サイコロを使わなくてもDice.pngが必要な問題を修正 ・Authorモジュールで、サブルーチンからの復帰を、「任意の文字列」ではなく「return」のみに変更(サブルーチンからのシーン移動に対応) ・Autherモジュールで、直前に通ったシーン・次に進むシーン・サブルーチンジャンプ元のそれぞれのラベルを返すメソッド・prev_label、next_label、upper_labelを追加 ・TextBox上で使用するフォントサイズ設定マクロが適応されていなかった問題を修正 ・soundマクロの問題を修正 ・メッセージマクロに、スプライトを表示させるshow,hideマクロを追加 ・Miyako Extensionで、スプライト表示・隠蔽に関する値を格納する  ShowData,HideDataクラスを追加 ・Auther::Scriptクラスにinterruptメソッドを追加。  Author::Scriptクラス上でのオーバーライドとして実装する ・フルスクリーンモードに対応 ・スクリーンモードを変更するScreen.setScreenModeメソッドと ・使用できるキーを追加。  BTN7~BTN12(Q,W,E,V,B,Nの各キーに対応) ・triggerAlt?/Ctrl?/Shift?を追加 ・puehedAlt?/Ctrl?/Shift?を追加 ・Alt+Enterでフルスクリーンモードの切り替えを標準で追加 ・CmpsクラスをMiyako APIに移動  Screen.toggleScreenModeメソッドを追加 ・画面の解像度を変更するScreen.setScreenSizeメソッドを追加 ・Window2,MapFastクラスの廃止 ・マップ用パラメータクラス、MParamクラスの追加 ・loopx,loopyの廃止(マップの端でスクロールを停止するかどうかはユーザが決める) ・Mapクラス、Inputモジュールのリファクタリング ・ScreenモジュールのfadeIn,fadeOut,whiteIn,whiteOut,effecting?の  各メソッドを廃止 ・Sprite、Window、TextBoxクラスに、抽象化した位置関係を指定できるメソッド  (centerling、setLayout、snap等)を追加  →それに伴って、Window、TextBoxクラスにrectメソッドを追加 ・Spriteのcreate、create2クラスメソッドの引数に、透過色を指定できるようにした ・図形やテキストを描画するSpriteを作成するShapeクラス・ShapeParameterクラスを追加 ・スプライトのアニメーションを管理するAnimationSpriteクラスの追加 ・sepalateメソッドを“separate”に修正 ・Miyako ExtensionにSlides,Slideクラスを追加 ・上記修正に伴うリファレンスマニュアルの改訂 ・他、若干のバグ修正

V0.8(2006.7.28)

・実際の秒数からウェイトを計算するWaitCounterクラスを追加 ・SpriteAnimationクラスにWaitCounterクラス対応を追加 ・Spriteクラスのレイアウト計算のバグを修正 ・各クラスのprivateメソッドをprotectedメソッドに変更(何か役に立ちそうだったので念のため) ・Sprite,Plane,Window,TextBox,MessageBoxクラスにshow、hideメソッドを追加 ・Slidesクラスに登録しているスライド集のリストを作成するように変更 ・Slidesクラスにget_name_list,get_slidesクラスメソッドを追加 ・他、若干のバグ修正

V0.9(2006.9.3)

Colorクラスのメソッドをクラスメソッドのみに(色情報はの配列で持つ) ・Colorクラスに、定数を追加(Color::RED,Color::BLACKなど) ・Colorクラスは、色定数とクラスメソッドのみのクラスに変更 ・#xxxxxx(16進数)形式の文字列をr,g,bに変換するColor.hex2rgbメソッドを追加 ・メッセージマクロにcolor=定数名(red,blackなど)、color=color=#(6ケタの16進数)を追加 ・ColorクラスからA(Alpha)関連のパラメータを廃止 ・Sprite::create系統のリファクタリング ・スプライト生成メソッドcreate、create_from_bitmap、loadをnewひとつにまとめる ・Sprite.createPlaneメソッドをSprite.create_planeメソッドに改名 ・Sprite#draw_line,draw_rect,draw_circle,draw_ellipseメソッドの追加 ・Sprite#tr_colorメソッドの追加 ・Screen::updateメソッド中のfps計算部分をコメントアウト(コメントを外すことで  計測可能) ・Window、TextBox、MessageBoxクラスからclientW=、clientH=、setClientSizeの  各メソッドを廃止 ・MessageBoxクラスのコンストラクタにメッセージボックスの大きさを指定する  引数を追加 ・WParamクラスを、WindowParameter, CursorParameterクラスに分割 ・WindowParts,CursorPartsクラスを追加 ・上記修正に伴い、Windows,TextBoxクラスもWindowParts,CursorPartsに準拠 ・Window,TextBoxのinitializeメソッドの引数インタフェースを変更 ・Window,TextBoxクラスに各パーツのパラメータデータを取得する  window_params,cursor_paramsメソッドを追加 ・MessageDataのコード番号毎の処理をカスタマイズできるMessageDirectorクラスの追加 ・MessageDataクラスにtypeメソッドを追加(設定/実行の区別のため) ・Miyako ExtensionのVars,Cmds,ShowData,HideDataクラスをMiyako APIのクラスに移動 ・FontクラスからBDFフォントのサポートを廃止 ・Fontクラスから、スタイル関連の設定(Italic,Bold等)を削除 ・Font#setCodingSystem,Font#addメソッドを廃止 ・フォントキャッシュに対応(Font.get_fontメソッドの追加)  →MS明朝、MSゴシックなどを指定すると途端に挙動が劣化する症状を解消 ・Font.systemFontメソッドをFont.system_fontメソッドに改名 ・Font.systemFont=メソッドを廃止 ・FontクラスにFont.serif,Font.sans_serifメソッドを追加 ・Fontクラスにheight,ascent,descent,line_skipメソッドを追加 ・Point,Size,Rect,Colorクラスにto_sメソッドを追加 ・Miyako::getOSNameメソッドの返却値に“linux”を追加(修正漏れ対応) ・他、若干のバグ修正・リファクタリングを実施

v0.9.1(2006.9.4) ・Authorモジュール、ScriptクラスをStoryモジュール、Sceneクラスに改名 ・TextBoxクラスのcursorDirメソッドで、変更前のカーソルが表示されたままになっているバグを修正 ・Windowクラスで、show/hideメソッドで文字表示部に変化がないバグを修正 ・TextBoxクラスにtext_show,text_hide,back_show,back_hideメソッドを追加 ・TextBoxクラスのshow,hideメソッドの変更 ・MessageDirectorクラスにreset,restart,reset_select,selecting?,clear,show,hide,cansel_pauseメソッドを追加 ・MessageDirectorクラスのvar予約語に:pause,:cansel_pause,:canselを追加 ・Cmds.compileメソッドのバグを修正。それに伴うコマンド記述の書式を変更 ・マニュアルの修正 ・若干のバグ修正

v0.9.9(10.beta)(2006.12.17) ・Yukiモジュールの追加 ・Yuki::versionメソッドの追加 ・Yuki::Plotクラスを追加 ・メッセージ関連クラスをYukiモジュールに移動、名前も変更 ・マクロの書式の変更(=の替わりにスペースを利用) ・それに伴うMessageDirectorクラスの各種メソッドの統廃合 ・Yuki::Variablesクラスを独立インスタンス形式に変更 ・Yuki::Commandsクラスを独立インスタンス形式に変更、メソッドの構成も変更 ・Yuki::Directorクラス上で、varプロパティに格納されていた特定シンボルでの値の格  納(:pause,:select_resultなど)を、新たに追加したeventプロパティに格納するように  変更。 ・Yuki::Directorクラスのeventプロパティで扱うイベントにselect_scenario,  cansel_scinario,yn_scinarioを追加 ・Yuki::Directorクラスのeventプロパティで扱うイベント、show_data,hide_data  を廃止 ・Yuki::Directorクラスのyes_no、commandの各メソッドをpublicメソッドに ・Yuki::Directorクラスで、コマンド選択可能になるタイミングを変更 ・Yuki::Directorクラスで、コマンドの選択番号が正しく取得できていなかった  バグを修正 ・Yuki::Directorクラスに、set_commands,append_commandsメソッドを追加 ・Yuki::Director.command/yes_noメソッドで、TextMarginLeftを考慮した  カーソル位置計算になっていなかったバグを修正  yes_no/commandメソッド実行時→showメソッド実行時 ・Miyako::versionメソッドを追加 ・Screenモジュールのtrasition,freeze,freezing?メソッドの廃止 ・Inputモジュールに、trigger_all?,trigger_any?,pushed_all?,pushed_any?メソッドを追加 ・Inputモジュールを大幅にブラッシュアップ。Inputモジュールのメソッドを大幅に整理 ・Audioモジュールの初期化設定を変更 ・カーソル移動・ポーズボタン解除時に、即座に反応しないバグを修正 ・Color::to_rgbメソッドを追加  [r,g,b]、“”、“r,g,b”、“#rrggbb”、32bit値、文字列・シンボルからの変換を一つのメソッドで変換可能に ・Fontクラスのserif,sans_serifメソッドで、フォントのサイズを変更すると他の  serif,sans_serifフォントを使用した描画にも影響が出る問題を修正 ・FontクラスのsetColorメソッドの引数を1つに ・image_init,command_init,do,alpha,layout,move,move_to,command_append,image_view,  animation_init,animation_character,animation_start,animation_stop,animation_re  set,if,caseマクロを追加 ・anime_on,anime_off,effect_on,effect_off,‘…’,”…”マクロの廃止 ・“expr ‘…’”マクロの書式を“expr …” に変更 ・“expr ”…””マクロの書式を“get …”に変更 ・showマクロの仕様を変更 ・exprマクロのバグを修正 ・sleepマクロを:settingタイプになっていたバグを修正 ・yes_noマクロの書式変更、Yes時のシナリオ名 No時のシナリオ名へ ・message_wait、sleepマクロの値を秒単位(実数可)に ・コマンド書式に「:cansel (キャンセル選択時のシナリオ)」を追加、:canselが無い  ときはキャンセル禁止になる ・ShowDataクラス、HideDataクラスの廃止 ・Spriteクラスにdraw_text,in_bounds?,in_bounds_x?,in_bounds_y?,in_bounds_ex?,in_bounds_ex_x?,in_bounds_ex_y?,round,round_x,round_yメソッドを追加 ・Sprite#drawBlockプロパティを廃止 ・Windowクラスにメソッドmsg=を追加 ・TextBoxクラスのメソッドmsg=の修正 ・TextBox/WindowクラスのpauseWait、cursorWait、pageWaitのウェイトをフレーム単位  から秒単位(実数可)に変更 ・Sceneクラスのテンプレートメソッドをinitializeからinitに変更  引数の記述とsuperの必要が無くなる ・Sceneクラス内部で使用するクラス・インスタンス変数に@prev,@next,@upper,@@historyを追加。  直前に実行していたシーンによる分岐を可能に ・Sceneクラスインスタンスのキャッシュ化に対応  最大20個までキャッシュ対応 ・Miyako Extensionに、ScenarioWindowDirector、ScenarioWindowクラスを追加 ・Miyako Extensionから、MessageBoxクラスを廃し ・CPU占有率低減のため、最低限のウェイトをかけるようにした ・「Rubyist Magazine 17号」に掲載された添削記事をもとにコードを修正 ・Object,String,Array,Integer,Symbolクラスにto_miyako_colorメソッドを追加  Color.to_rgbメソッドの簡素化 ・標準フォントを、みかちゃんフォントからVLゴシックフォントに変更 ・サウンドボードを必須環境に変更 ・マニュアルの修正(特にマクロリファレンス(stuff_reference.txt)) ・その他、若干のバグ修正

v0.9.9改(1.0beta)(2007.02.12) ・スプライトに使用する画像ファイルが256色などの為の対応を追加 ・その他、若干のバグ修正

v1.0(2007.02.22) ・メッセージノーウェイト機能追加(Yuki::Directorクラスにno_waitプロパティを追加) ・Yuki::Direction.typeプロパティを廃止 ・Yuki::Directorクラスのprocess_?メソッドに返却値を追加(ノーウェイト機能実現のため) ・Miyako::Font#drawText,Miyako::Font#drawTextMild,Miyako::Font#drawTextRange,Miyako::Font#drawTextMildRange,Miyako::Font#drawText_with_Layoutメソッドの引数を変更。スプライトの左上座標(マージン)を追加。 ・Miyako::ScinarioWindowDirectorクラスにあった@msg_stackをYuki::Directorに移動 ・getマクロを使用すると表示内容がおかしくなるバグを修正 ・ピクセル中のビット数を示すグローバル変数$miyako_bppを追加(フルスクリーンによる256色モードの対応が可能に) ・Alt+Enterでスクリーンモードを変えても、そのキーが後のInput関連メソッドでも有効になっていた問題を修正 ・Inputモジュールにマウスカーソルの表示・隠蔽を示すmouse_cursor_show,mouse_cursor_hideを追加 ・InputモジュールにAlt+Entによる画面モードの変更可否を指定するenable_toggle_screen_mode,disenable_toggle_screen_modeを追加 ・BitmapクラスにBitmap.cacheメソッドを追加 ・Inputモジュールに、マウスの状態を示すmouseプロパティを追加 ・Window/TextBoxクラスのx=,y=,disenable_layoutメソッドを廃止(move、move_toメソッドをご利用ください)

v1.4(2007.12.16) ・idaten_miyako拡張ライブラリの導入(Screen.update等の高速化) ・Miyako::Sprite.ViewPort/setViewPortメソッドの廃止 ・Miyako::Screen.viewport/set_viewportメソッドの追加 ・Miyako::Screen.begin_scene/draw/end_sceneメソッドの追加 ・Miyako::Screen.sprite_listメソッドの追加 ・Miyako::SpriteAnimation#newメソッドインタフェースの大幅な変更 ・Miyako::Collisionクラスの追加 ・Miyako::MParamクラスの廃止 ・Miyako::MapChipクラスの追加 ・Miyako::MapEventクラスの追加 ・Miyako::Movieクラスの追加 ・$not_use_audioグローバル変数の追加 ・$sampling_freqグローバル変数の追加 ・Mapクラスの高速化 ・ファイルをクラス別に分割 ・リファレンスマニュアルをクラス別に分割 ・サンプルを別ファイルに分離 ・他、細かい修正

v1.4.1(2007.12.16) ・Ruby側Map,MapLayerクラスの修正 ・他、細かい修正

v1.4.2(2007.12.24) ・FixedMap,FixedMapLayerクラスを追加 ・Map,MapLayer,MapEventの各クラスを修正 ・拡張ライブラリのソースを、Ruby1.9との互換性を向上のために修正 ・Windows用システムフォントに「メイリオ」を追加

v1.4.2a(2007.12.24) ・Screenモジュールのコーディングミスによるバグを修正

v1.4.3(2008.01.01) ・Map/FixedMap.updateメソッドを明示的呼び出しに変更 ・SpriteAnimationクラスのバグを修正 ・SpriteAnimation#newメソッドパラメータに、アニメーション画像の  表示開始位置をずらす:position_offsetを追加 ・SpriteAnimation#newメソッドパラメータ:alignの既定値を:maxに変更 ・Map/FixedMap.getCodeRealメソッドのバグを修正 ・MapLayer/FixedMapLayer.convert_positionメソッドのバグを修正 ・Map/FixedMap.get_view_positionメソッドを追加 ・他、細かいバグを修正

v1.4.4(2008.01.14) ・Movie#scaleメソッドを廃止(動画の表示倍率を1.0倍に固定) ・SpriteAnimation/update/update_frame/update_wait_counter/set_patメソッドを  idaten_miyakoによる高速化 ・他、細かい修正

v1.4.5(2008.01.19) ・Story::Scene#interruptメソッドを廃止 ・Story::Scene#view_in_to_update, update_to_view_outメソッドを追加 ・Spritre#newメソッドの第2・第3引数をnilにすることにより、  αレイヤー付きの画像に対応 ・Miyako.main_loopメソッドを追加 ・Miyako.main_loopメソッドをidaten_miyakoによる高速化

v1.4.6(2008.02.03) ・表示色を32ビットに固定 ・拡張ライブラリmiyako_no_katanaを追加 ・BitmapクラスにBitmap.dec_alphaメソッドを追加 ・BitmapクラスにBitmap.additive, Bitmap.inverseメソッドを追加 ・Screen.update_tick,WaitCounter.start/stop/finish?/waiting?/wait/wait_inner  メソッドをidaten_miyako化 ・Scene,Sprite,Shape各クラスで使われていたinstance_evalメソッド呼び出しを廃止 ・一部メソッドの引数等(SpriteAnimationクラスのパラメータ等)で、引数がPoint,Size,  Rect構造体と整数の配列、両方に対応するように修正 ・Colorクラスの値を、の4要素の配列になるように変更 ・Color#to_sメソッドの返却値を、“”の4要素の配列になるように変更 ・Color.rgb2ccメソッドの廃止 ・TextBox(Window)クラスでの表示文字を、アンチエイリアス付き文字でも描画可能に  (但し、文字サイズが24ピクセル以上) ・Window#vspace/vspace=メソッドの追加 ・Window#draw_type/draw_type=メソッドの追加 ・Font#use_shadow/use_shadow=メソッドの追加 ・Font#shadow_color/shadow_color=メソッドの追加 ・Font#shadow_margin/shadow_margin=メソッドの追加 ・Font#color/color=メソッドの追加 ・Movie#current/lengthメソッドの追加 ・Screen.captureメソッドの追加 ・Map/FixedMap#add_eventメソッドの追加 ・Yukiのsizecolor命令で、変更前の色・サイズに戻す0returnをサポート ・install_miyako.rbからオプション–not_idatenを削除 ・他、細かい修正

v1.5.0pre(2008.03.12) ・全クラスの大幅な見直し(インタフェースの改良、不要なメソッド・変数の削除) ・Window,WindowParameter,WindowParts,CurosorParameter,CurosorPartsクラスの廃止 ・Layout,SpriteBase,Animation,SingleEnemerableモジュールの追加 ・MapEvent,Yukiクラスをモジュールに変更 ・LayoutSpace,Parts,Choices,MapChipFactoryなどのクラスの追加 ・MapChipなどの構造体の追加 ・Screen.updateによる自動更新の対象を、TextBox,Map,SpritAnimationに拡大 ・YukiのDSL化(マクロ形式は廃止) ・他、細かい修正

v1.5.0pre2(2008.03.16) ・animation.rbをmodules.rbに改名 ・MiyakoTapモジュールの追加(propertyメソッドのみ) ・Spriteクラス、SpriteAnimationクラスにrecalc_layoutメソッドを追加・自動化 ・Spriteクラスのbitmap=メソッドを呼び出した後、fillなどのメソッドが機能しないバグを修正 ・Audio::BGMクラス、Audio::SEクラスのメソッドチェイン化 ・idaten_miyakoの一部メソッドの廃止 ・Partsクラスのバグを修正 ・Rdocのひな形を追加(まだ途中です・・・)

v1.5.0pre3(2008.03.20) ・TextBox#dpメソッドのバグを修正 ・Partsクラスにmain_top、main_bottom、sort_dpメソッドを追加 ・Shapeクラス/Yukiモジュールのcolorメソッドのバグを修正 ・EXT/SlideクラスをSlideモジュールに変更、実装を見直し

v1.5.0pre4(2008.03.22) ・Map/FixedMapクラスで、マップレイヤ(非イベントレイヤ)上で、存在しないマップチップ番号が  指定されたときは-1にするように修正 ・Spriteクラスで、アルファチャネルが付かない画像に対して、alpha=メソッドが機能していなかった問題を修正 ・デバッグモード用に、$miyako_debug_modeグローバル変数を追加  現在は以下の機能が利用可能  ・Yukiでのメッセージ表示中・コマンド選択中に、×キーを押せば終了する ・Yuki.init_yukiの引数インタフェースを変更。メッセージボックス・コマンドボックスにPartsクラスのインスタンスを渡すことが可能に ・Parts,Sprite,SpriteAnimationの各クラスのshowメソッドにブロック引数を渡すことが可能に(ブロック実行中はそれぞれの表示ができる)

v1.5.0pre5(2008.03.28) ・Fontクラスで、αチャネルがない画像に対する文字描画に問題があったため修正 ・同時に、αチャネル付き画像に対して、綺麗に文字が描画されていなかった問題を修正 ・Rdoc形式の説明のひな形を作成(リファレンスを逐次更新中) ・Miyako.main_loopメソッドにウェイトを追加。CPUのリソース消費を軽減 ・Sprite,SpriteAnimation,TextBox,Choices,Maplayer,FixedMaplayer,Planeの各クラスにrenderインスタンスメソッドを追加 ・Screen.render,Screen.clearメソッドの追加  (画像の明示的な描画が可能に)

v1.5.0pre6(2008.05.09) ・StoryモジュールをStoryクラスに変更。インスタンスの作成はStoryクラスのインスタンスを作成する方式に変更 ・DiagramProcessor、Diagramクラスなど、遷移図処理に必要なクラス・モジュール・構造体を追加 ・Yukiのスレッド化(内部処理での話。Yukiでのスクリプティングは影響無し) ・Yuki#setup_yukiメソッドの追加(Yukiをmixinしたシーンでは、setupメソッド内で呼び出しを義務化) ・Yuki#exec_plot, Yuki#update_plot, Yuki#plot_executing? メソッドの追加 ・Yuki#update_plot_input、Yuki#get_plot_resultメソッドの追加 ・Yukiの処理を、別クラスでチェック可能に(たぶん。未検証) ・処理が重くなってしまった・・・ ・他、細かい修正

v1.5.0pre7(2008.05.13) ・暫定的にMacOSXに対応(人柱求む) ・miyako.rbにdiagram.rbが組み込まれていないバグを修正 ・DiagramNodeBase#reset_inputメソッドを呼び出すタイミングを変更 ・コメントの追加(RDoc形式)

v1.5.0pre7a(2008.05.15) ・DiagramProcessor#update_inputメソッドで、DiagramFacade#update_inputメソッドを呼び出さないバグを修正 ・DiagramFacade#update_inputメソッドが未定義だったバグを修正 ・RDoc形式リファレンスマニュアルを同梱

v1.5.0RC1(2008.05.18) ・インストーラーでmiyako_no_katanaがインストールされていなかったバグを修正 ・MacOSX上のOSチェックにミスがあったため、修正 ・MacOSX上でのフォント検索パスを追加 ・MacOSX上でのserif,sans_serifで検索できるファイル名を追加 ・フォントパスの区切りを「/」に統一 ・serif,sans_serifフォントにume-plus-gothicを追加 ・遷移図関係のクラス・モジュールを「Diagram」モジュール(名前空間)にまとめる  DiagramNodeBaseモジュールをDiagram::NodeBaseに変更  NodeTriggerBaseモジュールをDiagram::TriggerBaseに変更  NodeTriggerクラスをDiagram::DefaultTriggerに変更  DiagramクラスをDiagram::DiagramBodyに変更  DiagramFacadeクラスをDiagram::Managerに変更  DiagramRendererクラスをDiagram::Rendererに変更  DiagramProcessorクラスをDiagram::Processorに変更 ・NodeBase#finish?メソッドを追加 ・NodeBase#disposeメソッドを追加 ・Yuki::YukiManagerクラス、Yuki#managerメソッドを追加(外部クラスからのYukiの管理を簡素化) ・RDoc形式リファレンスマニュアルを修正(一部)

v1.5.0RC2(2008.05.31) ・Plane#disposeでエラーが出るバグを修正 ・Yuki.#get_plot_resultで、仕様通りに結果が返ってきていないバグを修正 ・Yuki.#selectingで、コマンド選択の入力情報が確実に反映されていなかったバグを修正 ・Slide.#createメソッドで、新しいSlideインスタンスが作成されないバグを修正 ・RDoc形式リファレンスマニュアルを修正(一部)

v1.5.0RC3(2008.06.05) ・Diagram::Processor#nowメソッドを追加 ・Diagram::Processor#now_nodeメソッドを追加 ・Story.scenes、Story#listup、Story#listup2csvメソッドを廃止 ・Stiry#disposeメソッドを追加 ・Scene.scenes、Scene.has_scene?メソッドを追加 ・Scene.listup、Scene.listup2csvメソッドを追加 ・パッケージング時に付けていた余計なファイルを削除 ・RDoc形式リファレンスマニュアルを修正(ごく一部)

v1.5.0RC4(2008.06.08) ・MacOSXでのデフォルトフォントファイル名を修正。ヒラギノProW6を追加 ・遷移図形式で、遷移図の処理が終了してもスレッドが終了しなかったバグを修正

v1.5.0RC5(2008.06.16) ・MacOSX対応の強化(UTF-8-MACへの変換対応) ・Sprite#draw_circleメソッドに引数引き渡し時のバグがあったため修正 ・ドラッグアンドドロップに限らずマウスのボタンが押されているかどうかを問い合わせる Input.mouse_trigger? メソッドを追加 ・Audio::SEクラスに、同時発音数を変更するAudio::SE.channels=メソッドを追加 ・音声のバッファサイズを変更する$sound_buffer_sizeグローバル変数を追加 ・Diagram::Processor#main_loopメソッドをidaten_miyako化 ・Yuki#.update_plot_thread, Yuki::Yuki2#update_plot_threadメソッドをidaten_miyako化 ・Audio::BGM#dispose, Audio::SE#disposeメソッドを追加 ・RDoc形式リファレンスマニュアルを修正(一部)

v1.5.0RC6(2008.06.30) ・Sprite.get_listメソッドの高速化 ・Diagram::Processor#updateメソッドの追加(同期実行用) ・Planeクラスで、画像が正常に描画されない問題を修正 ・RDoc形式リファレンスマニュアルを修正(一部)

v1.5.0RC7(2008.07.01) ・Collisionsクラスの追加

v1.5.0RC8(2008.07.16) ・Collision#turn,adjustメソッドの追加 ・Collisions#turn,adjustメソッドの追加 ・Sprite.update_spriteメソッドの追加(Spriteの描画高速化) ・Sprite#update_spriteメソッドの追加(Spriteの描画高速化) ・Sprite#updateメソッドの返却値の変更(自分自身を返すように変更) ・Screen.updateメソッドの修正 ・LayoutStruct,LayoutSnapStruct構造体の追加 ・Yuki2#parts, vars, regist_parts, regist_diagram, remove_parts, remove_diagram メソッドの追加 ・Yuki2#show, hide, start, play, stop, wait_by_finish, result= メソッドの追加 ・Yuki2#wait_by_condの引数をtrue/falseからブロックに変更 ・RDoc形式リファレンスマニュアルを修正(一部)

v1.5.0(2008.07.19) ・Planeクラスのバグ修正(移動方向によっては画像が表示されない問題の修正) ・Layout#top,right,left,bottomメソッドのバグの修正(別座標の値がリセットされていた問題の修正。これにより別座標の値は保存される) ・Layout#round_x,round_yメソッドのバグの修正(移動量が0のときに不正が不正になる問題の修正) ・Layout#in_bound_rev?, in_bound_rev_x?, in_bound_rev_y?メソッドの追加 ・Layout#in_bound_rev2?, in_bound_rev2_x?, in_bound_rev2_y?メソッドの追加 ・Layout#round_rev?, round_rev_x?, round_rev_y?メソッドの追加 ・Layout#round_rev2?, round_rev2_x?, round_rev2_y?メソッドの追加 ・RDoc形式リファレンスマニュアルを修正(Layoutモジュールの説明拡充) ・正式版として公開

v1.5.0a(2008.07.21) ・Layout#round_rev_x, round_rev_yメソッドのバグ修正 ・Layout#round_rev2_x, round_rev2_yメソッドのバグ修正 ・RDoc形式リファレンスマニュアルを修正(画像キャッシュの説明追加)

v2.0.0(2009.4.13) ・Ruby/SDL2.1準拠に変更 ・対象Rubyランタイムを、Ruby1.9.1以降に変更(バージョンチェックの追加) ・各ファイルの先頭に“# -*- encoding: utf-8 -*-”を追加 ・グローバル変数$miyako_use_wait、$miyako_wait_time、$miyako_use_openglを追加  (フレームバッファ:32bit(赤、青、緑、αともに8bit)、デプスバッファ:32bit、ステンシルバッファ:32bit) ・メソッド群の大幅な見直し ・miyako_ext.rb削除 ・install_miyaok.rbの修正(旧バージョンのディレクトリを削除、miyako_no_katanaビルド時に環境変数SDL_CONFIG_PATHを参照する様にした) ・リファレンス(RDoc)の拡充 ・他、細かいバグの修正

v2.0.1(2009.4.18) ・Choices#end_choice,choicing?,move,move_toメソッドを追加 ・Choices#end_select?,call_end_select_procメソッドを廃止(Choices#end_choiceメソッドに内包) ・TextBox#execute,execute?,updateメソッドを追加 ・TextBox#commandメソッドのインタフェースを変更(デフォルト付き引数を2つ追加) ・引数にspriteunitを受け取れるブロックを渡すメソッド(Bitmap.blit_and等)で、ox,oyに変更を与えるとプログラムが止まる問題を修正 ・Bitmap.inverseメソッドで正しく画像が転送されない問題を修正 ・Choicesの各メソッドで、start_choiceで選択を開始していない時にエラーが出るバグを修正 ・TextBox#create_choices_chainメソッドで、引数のto_spriteメソッドが受け持つ引数の数が0個の時の対処が行われていなかった問題を修正 ・各クラスのto_spriteメソッドで、背景が透明になっていなかった問題を修正 ・Sprite#and, or, xor, dec_alpha, dec_alpha!, black_out, black_out!, white_out, white_out!,   inverse, inverse!, additive, additive!, subtraction, subtraction!,   hue, hue!, saturation, saturation!, value, value!, hsv, hsv!の各メソッドに  ブロックを渡せるように修正(引数は、Bitmapクラスの各メソッドの内容と同じ) ・拡張ライブラリのMSB CPU対応コードにあったコーディングミスを修正 ・サンプルblit_rop.rb、textbox_sample.rbを追加 ・ドキュメントの修正

v2.0.2(2009.4.18) ・ChoicesクラスでmixinしているLayoutモジュールの適応範囲を広げる(left,right,top,bottom,move,move_toなどを利用可能に) ・Choices#leftメソッドをChoices#left_choiceメソッドに改名  (mixinしているLayoutモジュールのleftメソッドを機能させるため) ・Choices#rightメソッドをChoices#right_choiceメソッドに改名  (mixinしているLayoutモジュールのrightメソッドを機能させるため) ・Choices#upメソッドをChoices#up_choiceメソッドに改名  (left_choice,right_choiceメソッドとpostfixを統一させるため) ・Choices#downメソッドをChoices#down_choiceメソッドに改名  (left_choice,right_choiceメソッドとpostfixを統一させるため) ・Choices#broad_rectメソッドの内部処理を変更 ・Choices#end_select?,call_end_select_procメソッドを廃止(Choices#end_choiceメソッドに内包) ・TextBox#execute,execute?,updateメソッドを追加 ・TextBox#commandメソッドのインタフェースを変更(デフォルト付き引数を2つ追加) ・サンプルtextbox_sample.rbの修正 ・ドキュメントの修正

v2.0.3(2009.4.19) ・当たり判定の計算を整数計算から実数計算に変更 ・Collision.collision?、Collision.cover?メソッドでチェック漏れがあった問題を修正 ・Utility.product_linerメソッドで、rect.wの値が1の時にエラーが出る問題を修正 ・Sprite.clear!メソッドの追加 ・Utility.product_liner_f/product_liner_by_square_f/product_position_f/product_position_by_square_fメソッドを追加 ・サンプルball_action_sample.rb, utility_test3.rbを追加 ・ドキュメントの修正

v2.0.4(2009.4.25->2.0.5リリースのため、リリースをスキップ) ・Windows以外のOSで、install_miyako.rbが正しく動作しない問題を修正 ・CircleCollision.intervalとCircleCollision#intervalメソッドを追加 ・CollisionとCircleCollisionとの当たり判定ができるように、共通のデータを持たせた  (判定処理は、レシーバのクラスに依る) ・Collision.newの引数の幅・高さが0以下の時は例外が発生するように変更 ・Utility.product_liner/product_liner_by_squareの引数を、整数・実数両対応にした  (引数に実数が含まれる場合は、全て実数として処理する)  (Utility.product_liner_f/product_liner_by_square_fは、互換性のために残す) ・サンプルutility_test4.rb(utility_test.rbの実数版)、collision_test2.rbを追加 ・サンプルcircle_collision_test.rbの内容を変更 ・MANIFESTファイルを追加 ・gemspecファイルの修正

v2.0.5(2009.4.26) ・SegmentStructクラス、Segment構造体を追加 ・Rect#resizeメソッドをRect#resize_toメソッドに改名 ・Rect#resizeメソッドを追加 ・Viewport#resizeメソッドをViewport#resize_toメソッドに改名 ・Viewport#resizeメソッドを追加 ・Viewportクラスの幅・高さのエラー範囲を「マイナス」から「0以下」に変更 ・Layout.segmentメソッドの追加 ・Screen.segmentメソッドの追加 ・Utility.in_bounds?,in_bounds_ex?,in_bounds_rev?,in_bounds_rev_ex?メソッドの引数flagのデフォルトをfalseに変更 ・Utility.in_bounds_by_size?,in_bounds_ex_by_size?,in_bounds_rev_by_size?,in_bounds_rev_ex_by_size?メソッドの  引数flagのデフォルトをfalseに変更 ・Segment#in_bounds?,in_bounds_ex?,in_bounds_rev?,in_bounds_rev_ex?メソッドの引数flagのデフォルトをfalseに変更 ・リファレンスマニュアルの修正 ・gemspecファイルの修正 (・gemを、ruby-miyako(Linux,MacOSX等)とruby-miyako-mewin32に分離)

v2.0.5.1(2009.4.26) ・アンインストールスクリプト(uninstall_miyako.rb)追加

v2.1.0(2009.10.9) <バグ修正> ・Parts#removeメソッドで削除していないオブジェクトがあったため問題を修正 ・同時再生数を超えて効果音を再生するとプログラムが落ちる問題を修正 ・各種オブジェクトが正しく複製されない問題を修正  (ただし、Audio::BGM,Audio::SEは、内部データを複製すると落ちるため、複製していない) ・Sprite#show/hideが機能していなかったバグを修正 ・Yuki#select_plotで渡したプロットの引数チェックを行っていなかったバグを修正 ・Alt+Enterを押してもフルスクリーンにならないバグを修正 ・Collision.collisionが正しく値を返さないバグを修正 ・FixedMapクラスでpos,sizeメソッドの値がレイアウトの位置になっていなかった問題を修正 ・MapEventモジュールのmove,move_toメソッドで存在しない構造体を生成していた問題を修正 ・Color.[]で、勝手に透明度部分が書き換わる問題を修正 ・Choices#broad_rectで、大きさを正しく取得できない問題を修正 <仕様変更> ・“require ‘miyako’”でもロード可能 ・miyako.rbで組み込んでいるライブラリの順番を変更 ・標準のウインドウモードをフルスクリーンモードに変更 ・$miyako_auto_openグローバル変数により、強制的な画面のオープンを解除  必要な部分だけ呼び出し(Miyako.init,Audio.init,Screen.init,Font.init)  (Miyako.open/Screen.open呼び出し前のSprite作成不可) ・ゲーム中に流せるBGMは1曲のみに制限(効果音はその限りではない) ・音声系クラス(Audio::BGM,Audio::SE)の複写メソッドの使用を禁止 ・Yukiの複写メソッドの使用を禁止 ・複写時は、そのインスタンスのスナップ関係を解消  (但し、内部的にスナップを行っているクラス(Parts,TextBox,SpriteAnimation)はスナップをやり直している) ・例外クラスの追加(MiyakoErrorのみ→複数クラスの混在) ・Screenモジュールの初期化で、既存のSDL::Screenクラスインスタンスを利用可能(他ライブラリとの親和性向上) ・miyako.rbの組み込みのみ行うmiyako_require_only.rb追加 ・Sceneモジュール内部で使用する変数の構成の変更  (@@scenes,@now,@prev,@next,@upper -> @@scenes, @@pool) ・ArrayクラスにSpriteArrayモジュールをmixin ・FixedMapクラスにSpriteBase,Animationモジュールをmixin ・FixedMapLayerクラスにSpriteBase,Animationモジュールをmixin ・MapクラスにSpriteBase,Animationモジュールをmixin ・MapEventモジュールにSpriteBase,Animationモジュールをmixin ・MapLayerクラスにSpriteBase,Animationモジュールをmixin ・MovieクラスにAnimationモジュールをmixin ・PartsクラスにSpriteBase,Animationモジュールをmixin ・PlaneクラスにSpriteBase,Animationモジュールをmixin ・ViewportクラスにSpriteBase,Animationモジュールをmixin ・YukiクラスにSpriteBase,Animationモジュールをmixin ・回数を指定した音声の繰り返し演奏に対応 ・Audio::BGM,Audio::SEクラスのインスタンスを複写しようとすると例外発生するように変更 ・Audio::BGM.newメソッドの引数インタフェースを変更 ・Audio::BGM.newメソッドの処理内容を変更 ・Audio::BGM#play,start,fade_inメソッドの引数インタフェースを変更 ・Audio::BGM#play,start,fade_inメソッドの返却値を変更 ・Audio::BGM#play,start,fade_in,playing?,disposeの処理内容を変更 ・Audio::SE.newメソッドの引数インタフェースを変更 ・Audio::SE.channels=の返却値を変更 ・Audio::SE#disposeの処理内容を変更 ・Audio::SE#play,start,fade_inメソッドの返却値を変更 ・Miyako.main_loopメソッド内部でAudio.update呼び出しを追加 ・Story#runメソッド内部でAudio.update呼び出しを追加 ・Choises#update_animationの返却値を変更 ・TextBox#update_animationの返却値を変更 ・Yuki#update_animationの返却値を変更 ・Miyako::versionの値を変更(“2.0.0” -> “2.1.0”) ・Sprite#to_unitの値を複写したものに変更 ・SpriteAnimation#to_unitの値を複写したものに変更 ・Screen.to_unitの値を複写したものに変更 ・Story::Sceneモジュールの内部構成を変更 ・Yuki表示部の内部処理を変更 ・Yukiを使用したとき、決定キー・コマンド決定キーにスペースバーを追加 ・Yukiを使用したとき、コマンドキャンセルきーにエスケープキーを追加 ・Yukiのスクリプトに対して引数を渡すことができるようになった(↓参照) ・Yuki#start_plotのインタフェース変更(with_update_inputを廃止、*paramsを追加) ・各クラス・構造体・モジュールのmove,move_to,resize,resize_toメソッドを、  move!,move_to!,resize!,resize_to!に変更  (既存のメソッドは、「変更した後の値を新しいインスタンスとして返す(自身は変更しない)」に変更) ・Layoutモジュールの(outside_)left,(outside_)top,(outside_)right,(outside_)bottom,centeringメソッドを、  (outside_)left!,(outside_)top!,(outside_)right!,(outside_)bottom!,centering!に変更  (既存のメソッドは、「変更した後の値を新しいインスタンスとして返す(自身は変更しない)」に変更) ・Segment構造体の機能をSegment、Segmentsの2つの構造体に分割(Segmentsの各要素がSegment) ・Segments#reset->reset!に変更 ・Viewport#viewportメソッドの返却値を変更 ・PartsクラスをSpriteListクラス基準に変更 ・Sprite#newでdisplay_format_alphaによる画像の複製を行わず、Bitmap.create、Bitmap.loadで行うようにした  (Bitmapを渡すことによる画像の共有化が可能に) ・Sprite#newの引数を追加(:fill,:alpha) ・Sprite#newの:typeハッシュ引数の既定値を:color_key(:ck)から:alpha_channel(:ac)に変更 ・Miyako.main_loopを再び高速化 ・Story#runの内部ループをloop do~からMiyako.main_loop~に変更 ・Map.new、FixedMap.newのインタフェースを変更(CSVファイル以外からのマップデータ生成を容易に) ・MapEventManager#include?メソッドで、マップに登録されていないときも例外を発せしないように変更 ・OverSceneを廃止 ・Screen.pre_render_array、Screen.auto_render_arrayを配列からSpriteListに変更 ・Fiberを使用しないYuki、InitiatieYukiクラスを追加 ・SpriteBase.#render,render_to、Bitmapクラスの各種画像効果メソッドでのブロックの使用を廃止 ・MapLayer#collision?,meet?,cover?,can_accessメソッドの引数を追加(ignores引数) ・FixedMapLayer#collision?,meet?,cover?,can_accessメソッドの引数を追加(ignores引数) ・MapEvent#.move!,move_to!,move,move_toの後ろに可変引数を追加(移動時の細かい設定) ・Map.new、FixedMap.newで、イベントが無いときでも0番レイヤーを生成するように変更 ・マウス、キーボード、ゲームパッドの利用選択が可能に(enable、disableの設定が可能に) ・FontクラスにSpriteBase、Animastion、Layoutモジュールをmixin、スプライトとして扱うことが可能に ・WaitCounter#remind(->remainにalias)の返却値の仕様を変更(未スタート:制限時間->制限時間+1、制限時間オーバー:0->-1) ・WaitCounter.updateを追加。簡易的なコールバック処理が可能に ・選択肢の状態に「選択不可時」を追加(Choice構造体にenable, body_disableを追加) ・Choice構造体をスプライト扱いに変更(SpriteBase,Animation,Layoutをmixin) ・Choice構造体に名前を付けられるようになった。Choices#[]メソッドでも参照可 ・Choicesクラスにレイアウト空間(LayoutSpace)を登録できるハッシュを追加した ・Choices.newメソッドの引数インタフェースを変更(ただし、既存の処理に影響しない) ・Miyako.main_loopの引数インタフェース変更(ただし、既存の処理に影響しない) ・Windows版1.9でのrcairoが簡単に使えるようになるまで、MiyakoCairoクラスの添付を配布を中止します <ファイル追加> ・miyako_sprite2.c ・miyako_input_audio.c ・miyako_diagram.c ・miyako_yuki.c ・lib/Miyako/miyako_require_only.rb ・lib/miyako.rb ・lib/miyako_require_only.rb ・lib/Miyako/API/color.rb ・lib/Miyako/API/exceptions.rb ・lib/Miyako/API/i_yuki.rb ・lib/Miyako/API/sprite_list.rb ・lib/Miyako/API/struct_point.rb ・lib/Miyako/API/struct_size.rb ・lib/Miyako/API/struct_rect.rb ・lib/Miyako/API/struct_square.rb ・lib/Miyako/API/struct_segment.rb ・lib/Miyako/API/wait_counter.rb <ファイル削除> ・lib/Miyako/EXT/miyako_cairo.rb ・sample/cairo_sample.rb <グローバル変数追加> ・$miyako_auto_open(require時に、同時に画面などの初期化を行うかどうかのフラグ) <定数追加> ・Miyako::VERSION <定数削除> ・Screen::BPP <構造体追加> ・ListPair ・MapStruct ・ScenePool <クラス追加> ・ChoiceStruct ・CollisionEx ・CircleCollisionEx ・CollisionsEx ・InitiativeYuki ・ListPairStruct ・MapStructStruct ・MapStructFactory ・MiyakoCopyError ・MiyakoFileFormatError ・MiyakoIOError ・MiyakoProcError ・MiyakoTypeError ・MiyakoValueError ・Segments ・SpriteList ・MapDir(AccessIndexから変更) <モジュール追加> ・DeepCopy ・InitiativeYukiTemplate ・SpriteArray <mixin> ・ArrayクラスにSpriteArrayモジュールをmixin ・ObjectクラスにDeepCopyモジュールをmixin <クラス・モジュールメソッド追加> ・Animation.[] ・Animation.[]= ・Animation.anim_hash ・Animation.reset ・Animation.start ・Animation.stop ・Animation.update ・Animation.update_animation ・Audio.init ・Audio.initialized? ・Audio.update ・Audio::BGM.update ・Audio::SE.channels ・Audio::SE.update ・Audio::SE.playing_any? ・Audio::SE.channels ・CircleCollision.covers? ・CircleCollision.covered? ・Collision.covers? ・Collision.covered? ・Input.init ・Input.keyboard_enable ・Input.keyboard_disable ・Input.keyboard_enable? ・Input.joypad_enable ・Input.joypad_disable ・Input.joypad_enable? ・Input.mouse_enable ・Input.mouse_disable ・Input.mouse_enable? ・Input.init ・Layout#.copy_layout ・Layout#.broad_rect ・Font.init ・Font.initialized? ・MapChipFactory.create ・MapChipFactory.create_with_size ・MapChipFactory.all_access_table ・MapChipFactory.not_access_table ・MapStructFactory.create ・MapStructFactory.undefined_layer ・Miyako.init ・Miyako.initialized? ・Miyako.open ・Screen.init ・Screen.initialized? ・Screen.pos ・Sprite.sprites ・Sprite.[] ・Sprite.[]= ・SpriteBase#.ow ・SpriteBase#.oh ・SpriteBase#.part_rect ・SpriteBase#.image_size ・SpriteBase#.image_rect ・Utility.interval ・Utility.theta ・Yuki.add_method ・WaitCounter.callbacks ・WaitCounter.post_callbacks ・WaitCounter.tick ・WaitCounter.ticks ・WaitCounter.update ・WaitCounter.post_update <クラス・モジュールメソッド廃止> ・Layout#.ow ・Layout#.oh ・SpriteBase#.broad_rect <インスタンスメソッド追加> ・Choise#body_disable ・Choise#enable ・Choice#broad_rect ・Choice#update_layout_size ・Choice#name ・Choices#enable? ・Choices#choices ・Choices#update_layout_size ・Choices#name_to_choice ・Choices#layout_spaces ・Choices#regist_layout_space ・CircleCollision#to_ex ・CircleCollision#covers? ・CircleCollision#covered? ・CircleCollision#body ・CircleCollision#body= ・CircleCollision#rect ・Collision#to_ex ・Collision#covers? ・Collision#covered? ・Collision#body ・Collision#body= ・Collision#center ・Collision#radius ・Collisions#covers? ・Collisions#covered? ・Collisions#covers_all? ・Collisions#covered_all? ・FixedMap#map_size(size -> map_size) ・FixedMap#map_w(w -> map_w) ・FixedMap#map_h(h -> map_h) ・FixedMap#append_event ・FixedMap#event_update ・FixedMap#all_event_update ・FixedMap#event_update2 ・FixedMap#all_event_update2 ・FixedMap#event_move! ・FixedMap#all_event_move! ・FixedMap#event_sprite_move! ・FixedMap#all_event_sprite_move! ・FixedMap#event_pos_move! ・FixedMap#all_event_pos_move! ・FiexedMapLayer#ignore_list ・FiexedMapLayer#layer ・Font#text ・Font#text= ・Font#render_xy ・Font#render_xy_to ・Font#render_str ・Font#render_str_to ・Layout#.include_snap_child? ・Layout#.laout_pos ・Layout#.laout_size ・Layout#.relative_move_to ・Layout#.relative_move_to! ・Map#map_size(alias size) ・Map#map_w(alias w) ・Map#map_h(alias h) ・Map#append_event ・Map#event_update ・Map#all_event_update ・Map#event_update2 ・Map#all_event_update2 ・Map#event_move! ・Map#all_event_move! ・Map#event_sprite_move! ・Map#all_event_sprite_move! ・Map#event_pos_move! ・Map#all_event_pos_move! ・MapEventManager#[] ・MapEventManager#to_id ・MapLayer#ignore_list ・MapLayer#layer ・MapEvent#.update2 ・MapEvent#.sprite_move! ・MapEvent#.sprite_move_to! ・MapEvent#.pos_move! ・MapEvent#.pos_move_to! ・Scene#story ・Scene#prev_scene ・Scene#now_scene ・Sprite#render_xy ・Sprite#render_xy_to ・Sprite#collision ・Sprite#collision= ・Sprite#part_move! ・Sprite#part_move_to! ・Sprite#part_resize! ・Sprite#part_resize_to! ・Sprite#part_move ・Sprite#part_move_to ・Sprite#part_resize ・Sprite#part_resize_to ・SpriteAnimation#characters ・SpriteAnimation#patterns ・SpriteBase#render_to ・SpriteBase#visible ・SpriteBase#visible= ・SpriteBase#show ・SpriteBase#hide ・SpriteBase#render_xy ・SpriteBase#render_xy_to ・Textbox#enable_choice? ・Yuki#add_method ・Yuki#over_exec ・Yuki#wait_over_exec ・Yuki#vars_names ・Yuki#parts_names ・Yuki#render_to ・Yuki#update_animation ・Yuki#process ・Yuki#on_disable ・Yuki::Command#body_disable ・Yuki::Command#enable ・Yuki::CommandEx#body_disable ・Yuki::CommandEx#enable ・Audio::BGM#loop_count ・Audio::BGM#in_the_loop? ・Audio::BGM#loop_count_up ・Audio::BGM#allow_loop_count_up ・Audio::BGM#allow_loop_count_up? ・Audio::BGM#start ・Audio::BGM#pausing? ・Audio::BGM#fade_in? ・Audio::BGM#fade_out? ・Audio::SE#start ・Audio::SE#fade_in ・Audio::SE#fade_out ・Audio::SE#fade_in? ・Audio::SE#fade_out? ・Audio::SE#priority ・Audio::SE#priority= ・Plane::update_animation ・Parts#parts_move! ・Parts#parts_move_to! ・Point#+ ・Point#- ・Point#* ・Point#/ ・Size#+ ・Size#- ・Size#* ・Size#/ ・Rect#between? ・Rect#pos ・Rect#size ・Rect#to_square ・Rect#+ ・Rect#- ・Rect#* ・Rect#/ ・Scene#upper_scene ・Scene#next_scene ・Segment#x ・Segment#y ・Segment#min? ・Segment#max? ・Segment#in_range? ・Segment#between? ・Segment#+ ・Segment#- ・Segment#* ・Segment#/ ・Square#between? ・Square#pos ・Square#size ・Square#to_rect ・Square#+ ・Square#- ・Square#* ・Square#/ ・WaitCounter#append_callback ・WaitCounter#append_post_callback ・WaitCounter#remove_callback ・WaitCounter#remove_post_callback ・WaitCounter#callback_calls ・WaitCounter#callback_count ・WaitCounter#call ・WaitCounter#now ・WaitCounter#remain ・WaitCounter#reset ・WaitCounter#resume ・WaitCounter#size <インスタンスメソッド廃止> ・Segments#min_x ・Segments#min_y ・Segments#max_x ・Segments#max_y

v2.1.1(2009.10.16) <バグ修正> ・InitiativeYuki#commandメソッドで、選択不可の選択肢を選んだときにメソッド処理が終了するバグを修正 ・Font#draw_textメソッドで、文字を転送先画像の外で描画するとSEGVを起こす問題を修正 ・WaitCounter.updateメソッドで、コールバックブロック内で呼び出し回数などを変更しても実行に影響しない問題を修正 <機能改善> ・Font#draw_textメソッドで、転送先画像が画面のときは、直接SDL_FreeSurface関数を使って、描画する方式に変更 <仕様変更> <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <インスタンスメソッド追加> ・WaitCounter#stop_callback_inner <インスタンスメソッド廃止>

v2.1.2(2009.10.25) <バグ修正> ・Plane#render,render_toメソッドで、画面より小さいスプライトを描画しようとしても何も描画されないバグを修正 ・Plane#move!,move_to!メソッドで、描画時に画面の左上が描画されない時があるバグを修正 ・Plane#move,move_toメソッドが、move!、move_to!と全く同じ動作をするバグを修正 <機能改善> ・各種render_toメソッドでの内部処理の安全性を高めた <仕様変更> ・Sprite#part_move!,move_to!,resize!,resize_to!などのメソッドで、部分矩形の大きさを自動的に補正する処理を廃止 ・Sprite#ox=,oh=,ow=,oh=で、画像の範囲外の値を設定すると例外が発生する処理を廃止 <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <インスタンスメソッド追加> ・Sprite#render_rect ・Sprite#render_rect_to ・Sprite#render_rect2 ・Sprite#render_rect2_to ・Sprite#render_rect_xy ・Sprite#render_rect_xy_to ・Sprite#render_rect2_xy ・Sprite#render_rect2_xy_to <インスタンスメソッド廃止>

v2.1.3(2009.10.28) <バグ修正> <機能改善> ・Slideモジュールの見直し(update,update_animationなどをオーバーライドしやすいように) <仕様変更> <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> Slide#.slide_body Slide#.slide_show Slide#.slide_hide Slide#.slide_update Slide#.slide_update_animation Slide#.slide_start Slide#.slide_stop Slide#.slide_reset <インスタンスメソッド追加> <インスタンスメソッド廃止>

v2.1.4(2009.11.10) <バグ修正> ・Yuki#commandメソッドで、テキストボックスとコマンドボックスを強要している時、コマンド選択後にテキストボックスが描画されないバグを修正 ・TextBox#visible,visible=が機能していないバグを修正 <機能改善> ・Slide.createの引数に、:emptyを追加(スライドを示すスプライトを作るかどうか) ・Yuki#select_textboxで指定した時に、自動的に同じボックスをコマンドボックスとして登録できるようにした(以前は同じボックスを共用するときでも、select_commandboxを呼び出す必要があった) ・サンプルゲーム「3つの部屋」を2.1.4準拠に変更 <仕様変更> ・(Initiative)Yuki#select_textboxの引数に、省略可能な第2引数を追加(テキストボックス全体を渡せる) ・(Initiative)Yuki#select_commandboxの引数に、省略可能な第2引数を追加(テキストボックス全体を渡せる) ・メソッド名変更: (Initiative)Yuki#visibles -> visibles_names ・(Initiative)Yuki#visibles の内容を変更(表示可能なスプライト→表示対象のスプライト) ・(Initiative)Yuki#show,hideの引数を省略したときは、全ての画像を描画可能・不可能に変更 <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <インスタンスメソッド追加> ・(Initiative)Yuki#textbox_all ・(Initiative)Yuki#commandbox_all ・(Initiative)Yuki#enable_mouse ・(Initiative)Yuki#disenable_mouse ・(Initiative)Yuki#mouse_enable? ・(Initiative)Yuki#pre_visibles_names ・(Initiative)Yuki#bgs_names ・(Initiative)Yuki#pre_visibles ・(Initiative)Yuki#bgs ・(Initiative)Yuki#load_sprite ・(Initiative)Yuki#load_bg ・(Initiative)Yuki#load_bgm ・(Initiative)Yuki#load_se ・(Initiative)Yuki#pre_show ・(Initiative)Yuki#pre_hide ・(Initiative)Yuki#bg_show ・(Initiative)Yuki#bg_hide ・(Initiative)Yuki#show_textbox ・(Initiative)Yuki#show_commandbox ・(Initiative)Yuki#hide_textbox ・(Initiative)Yuki#hide_commandbox ・(Initiative)Yuki#box_shared? <インスタンスメソッド廃止>

v2.1.5(2010.01.01) <バグ修正> ・Layout#.include_snap_child?メソッドの戻り値間違いを修正 ・拡張ライブラリのソースがVisualCでビルドできない問題を修正 ・無駄なForwardableモジュールのmixinを削除 ・無駄なforwardable.rbの読み込みを削除  (Ruby1.9.2で、二重requireのメッセージが出ていたのを解決) ・Forwardable.rbの読み込みを削除(ファイル名間違い) ・一部ソースを、Ruby.1.9.2で動作しないものがあったため修正 ・一部サンプルを、Ruby1.9.2で動作するように修正 <機能改善> <仕様変更> ・起動時の表示モードをウインドウモードに変更 ・Yuki#render/render_to/update_animationにあったvisiblesのrender/render_to/update_animationの呼び出しを廃止 ・InitiativeYuki#render/render_to/update_animationにあったvisiblesのrender/render_to/update_animationの呼び出しを廃止 <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> ・ScenarioEngine(Yukiと同等) ・InitiativeScenarioEngine(InitiativeYukiと同等) ・InitiativeScenarioEngineTemplate(InitiativeYukiTemplateと同等) <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <インスタンスメソッド追加> ・scenario_plot(yuki_plotと同等) ・Yuki#over_engine <インスタンスメソッド廃止> ・Parts#part_move! ・Parts#part_move_to! ・TextBox#select_type/selct_type= ・InitiativeScenarioEngine#over_exec

v2.1.6(2010.01.01) <バグ修正> ・InitiativeScenarioEngine#pre_process,post_processで一部機能の更新をしていなかったバグを修正 ・InitiativeScenarioEngine#update_animationで一部機能の更新をしていなかったバグを修正 ・InitiativeScenarioEngine#over_execの復活(処理の見直し) ・InitiativeScenarioEngine#over_execの復活(処理の見直し) <機能改善> <仕様変更> <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <モジュール関数廃止> ・InitiativeYukiTemplate#plot <インスタンスメソッド追加> ・InitiativeScenarioEngine#over_exec ・InitiativeScenarioEngine#over_engine ・InitiativeScenarioEngine#render_all ・InitiativeScenarioEngine#render_to_all ・InitiativeScenarioEngine#update_animation_all <インスタンスメソッド廃止>

v2.1.7(2010.01.03) <バグ修正> ・InitiativeScenarioEngine#Command構造体の順番がScenarioEngine#Commandと同期されていなかった問題を修正 ・InitiativeScenarioEngine#CommandEx構造体の順番がScenarioEngine#CommandExと同期されていなかった問題を修正 ・InitiativeScenarioEngine#render_allでエラーを出すバグを修正 ・InitiativeScenarioEngine#render_to_allでエラーを出すバグを修正 ・InitiativeScenarioEngine#pauseで解除待ちカーソルが消えないバグを修正 <機能改善> <仕様変更> ・(Initiative)ScenarioEngine#commandで、第2引数にnilを渡すことで、キャンセル操作無効にするようにした(明示的な引数渡しが必要) ・over_execで使用するシナリオエンジンの事前登録が可能 ・ScenarioEngine#over_execメソッドの仕様を変更(engine,plotが省略可能に) ・InitiativeScenarioEngine#over_execメソッドの仕様を変更(base,engine,plotが省略可能に) <ファイル追加> ・API/simple_story.rb <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> ・SimpleStory <モジュール追加> ・SimpleStory::Scene <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <モジュール関数廃止> <インスタンスメソッド追加> ・ScenarioEngine#over_engine= ・ScenarioEngine#under_engine ・ScenarioEngine#under_engine= ・ScenarioEngine#render_all ・ScenarioEngine#render_to_all ・InitiativeScenarioEngine#over_engine= ・InitiativeScenarioEngine#under_engine ・InitiativeScenarioEngine#under_engine= ・InitiativeScenarioEngine#engine_stack ・InitiativeScenarioEngine#create_engine_stack <インスタンスメソッド廃止>

v2.1.8(2010.01.16) <バグ修正> ・Input.updateで、ゲームパッドの方向ボタンが有効なときに、アナログスティックを触る(JoyHatイベントが発生する)と、エラーを出すバグを修正 <機能改善> ・InitiativeScenarioEngineクラスにGC許可・不可の指定を追加した <仕様変更> ・Miyako.main_loopに第2引数を追加(ループの最後にガベージコレクションするときは、第2引数をtrueにする) ・Movieクラスで動画を再生できない問題が発生いたしましたので、Movieクラスの使用を一時停止します <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <モジュール関数廃止> <インスタンスメソッド追加> ・InitiativeScenarioEngine#gc_enable ・InitiativeScenarioEngine#gc_disable ・InitiativeScenarioEngine#gc_enable? <インスタンスメソッド廃止>

v2.1.9(2010.03.07) <バグ修正> ・ScenarioEngine#canceled?が正しく動作しない(オブジェクトの参照間違い)バグを修正 ・InitiativeScenarioEngine#canceled?が正しく動作しない(オブジェクトの参照間違い)バグを修正 ・Audio::SE#startの記述ミスを修正 <機能改善> ・シーン管理(Story,Scene)に、オブジェクトの引き継ぎ機能を追加 ・シーン終了時、返却値にを渡すことで、次シーンでは、全シーンの状態などを受け取ることが可能になった ・Story#runメソッドの性能改善 <仕様変更> ・Story::Scene#.initializeメソッドの引数インタフェースを変更(引き継ぎ変数の導入のため) ・SimpleStory::Scene#.initializeメソッドの引数インタフェースを変更(引き継ぎ変数の導入のため) <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> ・Story#.hand_over ・Story#.hand_over= ・Story::Scene#.hand_over ・Story::Scene#.hand_over= ・Story::Scene#.clear_hand_over ・SimpleStory#.hand_over ・SimpleStory#.hand_over= ・SimpleStory::Scene#.hand_over ・SimpleStory::Scene#.hand_over= ・SimpleStory::Scene#.clear_hand_over <モジュール関数廃止> <インスタンスメソッド追加> <インスタンスメソッド廃止>

v2.1.10(2010.04.20) <バグ修正> ・SpriteListクラスのオブジェクトからsnap等のレイアウト関係メソッドを呼び出すとプログラムが墜ちるバグを修正 ・Input.updateメソッドの処理に、イベントを逆順に取得する問題があった箇所を修正 <機能改善> <仕様変更> <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <モジュール関数廃止> <インスタンスメソッド追加> <インスタンスメソッド廃止> <ドキュメント> ・リファレンスマニュアルの項目追加

v2.1.11(2010.05.01) <バグ修正> ・エラーメッセージの修正(ScenarioEngine,InitiativeScenarioEngine) <機能改善> <仕様変更> ・ScenarioEngine/InitiativeScenarioEngine#commandメソッドの見直し  ・インタフェース使用に変化なし  ・配列の中身がChoicesクラスオブジェクト(の配列)のときにも対応した ・Choice構造体の:rightと:upの順番を入れ替え ・SpriteAnimation.newメソッドの:sprite引数に加えて、:sprites引数に置き換え可能とした ・SpriteAnimation#render,render_toの高速化を廃止 ・SpriteAnimation#newに渡すスプライトの範囲を拡大(要素はSpriteBase・Layoutモジュールを取り込んだ物なら何でも良くなった) <ファイル追加> ・lib/EXT/drawer.rb ・sample/drawer_sample.rb <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> Drawer <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> ・SpriteBase#.ox= ・SpriteBase#.oy= ・SpriteBase#.ow= ・SpriteBase#.oh= ・SpriteArray#.render_xy ・SpriteArray#.render_xy_to <モジュール関数廃止> <インスタンスメソッド追加> ・ScenarioEngine::Command#to_choice ・ScenarioEngine::CommandEx#to_choice ・ScenarioEngine#start_all ・ScenarioEngine#stop_all ・ScenarioEngine#reset_all ・ScenarioEngine#animation_all ・InitiativeScenarioEngine::Command#to_choice ・InitiativeScenarioEngine::CommandEx#to_choice ・InitiativeScenarioEngine#start_all ・InitiativeScenarioEngine#stop_all ・InitiativeScenarioEngine#reset_all ・InitiativeScenarioEngine#animation_all ・Choice#arrow ・SpriteList#render_xy ・SpriteList#render_xy_to <インスタンスメソッド廃止> <ドキュメント> ・リファレンスマニュアルの項目追加

v2.1.12(2010.05.04) <バグ修正> ・SpriteAnimation.newで、move_offsetパラメータの値によって表示位置が狂うバグを修正 ・Layout#.left!で、無駄なコードがあったため削除 <機能改善> <仕様変更> ・SpriteArray(SpriteList)#update_animation返却値を「要素のどれか一つが変更になればtrue」に変更 <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> ・SpriteBase#.render_d ・SpriteArray#.render_d <モジュール関数廃止> <インスタンスメソッド追加> ・Sprite#render_d ・SpriteList#render_d ・Point#update! ・Point#update_by_point! ・Point#update_by_size! ・Point#update_by_rect! ・Point#update_by_square! ・Size#update! ・Size#update_by_point! ・Size#update_by_size! ・Size#update_by_rect! ・Size#update_by_square! ・Rect#update! ・Rect#update_by_point! ・Rect#update_by_size! ・Rect#update_by_rect! ・Rect#update_by_square! ・Square#update! ・Square#update_by_point! ・Square#update_by_size! ・Square#update_by_rect! ・Square#update_by_square! ・Segment#update! <インスタンスメソッド廃止> <ドキュメント>

v2.1.13(2010.05.20) <バグ修正> ・SpriteAnimationクラスオブジェクトで、移動系メソッドを使用すると、表示する位置が狂う問題を修正 <機能改善> ・Diagram::Processor,Diagram::RendererにSpriteBase,Animation.Lauoutを追加  ・スプライトと同じ扱いに変更 <仕様変更> <ファイル追加> <ファイル削除> <グローバル変数追加> <定数追加> <定数削除> <構造体追加> <クラス追加> <モジュール追加> <mixin> <クラス・モジュールメソッド追加> <クラス・モジュールメソッド廃止> <モジュール関数追加> <モジュール関数廃止> <インスタンスメソッド追加> ・SpriteAnimation#changed? <インスタンスメソッド廃止> <ドキュメント> ・リファレンスマニュアルの拡充  ・Bitmap,Choice,Choices,Map,MapLayer,FixedMap,FixedMapLayer,Utility,Viewport

******************************************************************************* このReadMeファイルは「れ~どめ~えじた~」によって作成されました。