スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

RGSS2の怪

色々やろうとした時に「え??」ってなったRGSS2の仕様?バグ?みたいなの。




 【その1】Tilemapクラスのvisible
ヘルプのライブラリ(Tilemap→プロパティ)より抜粋
visible
タイルマップの可視状態です。真のとき可視になります。


ところがコレ、trueだろうがfalseにしようが可視状態がウンともスンとも言わないのです。常に見えっぱなし。

Spriteset_Mapの49行目に以下を記述
@tilemap.visible = false

本来コレでタイルマップは見えなくなる…ハズ!なのですけど、何の変化もありません…;;

@tilemap.visible = false
p @tilemap.visible

試しにこんな風にしてみるとしっかりfalseは返ってくるんだけどねー
まー実際Tilemapを一時的に消してごにょごにょとかする私みたいな人はそうそういないだろーし、いたとしても いったん開放→再作成 でほぼ同じ表現はできるので実用レベルでは何の問題もないんだけれど。

【その2】Planeクラスのviewport
ヘルプのライブラリ(Plane→プロパティ)より抜粋
viewport (RGSS2)
プレーンが関連付けられているビューポート (Viewport) への参照です。

ところがコレ、いざ参照しようとすると謎のArgumentErrorが発生します。

以下のようなスクリプトをイベントコマンド:スクリプトで(どこでもいい)ので実行。
v = Viewport.new(0, 0, 544, 416)
pl = Plane.new(v)
pl.bitmap = Cache.system("Window")

画面いっぱいにウィンドウスキンが表示されますねーw

さらに以下のように追加して実行。
v = Viewport.new(0, 0, 544, 416)
pl = Plane.new(v)
pl.bitmap = Cache.system("Window")
p pl.viewport

本来なら一行目で作成したviewportオブジェクトが返ってくるはずなのですが…

スクリプト実行中に ArgumentError が発生しました。
wrong number of arguments(0 for 1)


引数がおかしい時に発生するエラーなんだけど、viewportを参照するのに引数が必要とはいったい??
試しにp pl.viewport(1)みたいに適当にやってみたけど今度はTypeErrorを吐くなーw
なんにせよ普通の方法じゃ参照はできないようです。
まー実際PlaneのViewportをちょこちょこいじって××とかする私みたいな人はそうそういないだろーし、いたとしても最初に作成したViewportを直接変更すれば同じよーなことはできるので実用レベルでは何の問題もないんだけれど・・・。
 
 
 
スポンサーサイト

2010年

新年あけましておめでとうございます。
今年もよろしくお願いします。


【拍手返信】
>以前ドット移動をお願いした無作法者です。検討して頂いただけでもありがたいので、また機会がありましたらお願いいたします。ところでふきだしスクリプトですが早速使ってみることにします。今日も素敵な素材に感謝。
>フキダシ型文章表示、いいですねぇ~!選択肢等もなるとは驚きました。これはコンパクトでいいですね
>フキダシすごくいいですね!

評判が思ったより良くて何より。
ウインドウが消える際の挙動が気にくわなかったので微調整して差し替えておきました。


>31日にメッセージ頂いた方
ご丁寧にありがとうございます~
今年も去年同様てきとーな感じでやっていきますが、よろしくおねがいします。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。