[#39989] TCPSocket.new でスレッドが止まる。 — take_tk <ggb03124@...>

たけ(tk)です。

15 messages 2004/09/02

[#40018] yaml.rbとdate.rbを組み合わせて使った際の問題 — "Keisuke Minami" <keisuke@...>

こんにちは。三並と申します。

14 messages 2004/09/07
[#40020] Re: yaml.rbとdate.rbを組み合わせて使った際の問題 — IWATSUKI Hiroyuki <don@...> 2004/09/07

岩月と申します。

[ruby-list:40076] Re: 簡単なサンプル作ってみました。

From: cyross@...
Date: 2004-09-28 14:38:59 UTC
List: ruby-list #40076
サイロスです。

ご利用ありがとうございます。

Masayoshi Takahashi <maki@rubycolor.org>さん:
> 起動はちょっと遅い気がしますが(余計なクラスを
> 削除すると変わる?)、動きとしては私のThinkpad X31でも
> 特に問題ない感じです。いい感じなんじゃないでしょうか。
うーん、必要最低限のクラスだけを抽出してみましたが、体感としてはそんなに
大差ないようです。

> * InputモジュールにはDOWN/LEFT/RIGHT/UPやA/B/C/..と
>   いった入力文字に対応する定数が定義されているので、
>   ソース中に2とか4とか書くよりは定数を使うのが
>   おすすめです。
ああ、なるほど。
最初、DOWNやLEFTはInput.triggerの返却値のみかなと考えていたのですが、
実際試してみると、Input.dir4でも使えていますね。

> * というか、キー入力の処理をするクラスと、カーソル
>   そのもののクラスは分離した方がいいんじゃないで
>   しょうか。RGSSでもGame_FooとScene_Fooはそれぞれ
>   別々になってますし。
うーん、確かに高橋さんの仰ることも分かります。
ただ、今回は「簡単な」サンプルと想定して、構造をあまり細かく考えずに「こ
ういうことが出来ますよー」という気持ちで作成していますので、これでいいか
なと思っています(このサンプルは、ここのML以外にも公開しています)。
コードの構造が更に大きくなって、すんなりとコードが見渡せなくなったときに
分離することを考えようと思っています。

> * あと、cursor_map.datを読むところは、collectを使って、
> 
>    File.open("./cursor_map.dat", "r") {|f|
>      lines = f.readlines
>      @cursor_map = lines.collect{|line| Cursor_Map.new(line, @view)}
>    }
> 
>   と書くこともできそうです。
ああ、collectがありました。
早速、実装してみました。やっぱりこっちの方がスマートですね。

(補足)
Array#collectメソッドは、「RPGツクールXP」の製品版に添付されているRGSSリ
ファレンスマニュアルには記載されていません。しかし、実際には使えています。
多分ですが、RGSSリファレンスに記載されていないだけで、実際にはRuby標準の
クラスやメソッドはほとんど使えるのではないかと思います。

上記アドバイスに対応したバージョンを以下の場所にアップ致しました。
http://www.twin.ne.jp/~cyross/Programs/Sample_Cursor_20040928.zip

実行するには、「RPGツクールXP」のRTPが必要ですのでご注意ください。
RTPは以下のリンクからダウンロードできます。
http://www.enterbrain.co.jp/tkool/rtp_download.html

> # これって一部のソースだけを簡単に公開する方法って
> # ないんでしょうかね?
 
うーん、これはちょっと難しいでしょうね・・・。
RGSS用のpatchコマンドとかがあると便利すね。


あ、これだけではあまり心持たないのでもうちょっと試してみました。

RGSSでは、プレイヤーのセーブデータはMarshalモジュールを利用していました
ので、試しに、ActiveRubyでオブジェクトをマーシャライズするスクリプトを書
いて、RGSSで読み込ませたところ、正しく読み込こめました。
これを上手く活用するともっとデータの入出力が効率的になるのではないかと思
います。

それでは。

****************

サイロス誠
cyross@po.twin.ne.jp
http://www.twin.ne.jp/~cyross/

****************


In This Thread

Prev Next