スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)

二度あることは三度ある

 2010-12-10
こんにちは。
連続で2度も更新ファイルのアップロードするの忘れてたCACAOです。

今回は、告知してたわけではないので、迷惑のかかった人はいないかな?
3度目の正直になるように気をつけたいと思います。

更新忘れのなにがダメかって、更新日時のズレができるでしょ?
あれ修正するの面倒だし。




今回は、カスタムメニューのサブコマンドウィンドウのスクリプトを更新しました。

メニュー項目からシーン切り替えを行うために用意されているメソッドが
機能しないということがありましたので、それに対応するように変更しました。

サブコマンドの項目処理は、Scene_Menu ではなく、
Windowset_MenuSubCommand のオブジェクトが行うので、
メソッドが定義されてないとエラーが出ることがありました。

ですので、NameError もしくは、NoMethodError の際は Scene_Menu のオブジェクトが
処理をやり直すように変更しました。

明示的に Scene_Menu で処理を行いたい場合は、レシーバを $scene にしてください。


将来的には、Scene_Menu で処理したいと思いますが、まだ問題もありますので、
当分はこれでいこうと思います。





Window#contents の拡張の件ですけど、私も試しにやってみました。
1から作るとなると、思っていた以上に大変ですね。
言うは易し。とは、この事です。

Viewport が使えないので、どうやってウィンドウ内容のスクロール?を表現するかで、
今のところは、ウィンドウ内容にピッタリのビットマップと
バッファとしての実サイズのビットマップを用意して、
現在表示されているであろう領域のみをコピーするって方法を考えてます。

自作すると、矢印の表示位置なんか変更できますし、
スキンの仕様も変更できるのでオリジナリティーが増しますね。


ひとまず、これは置いといて、Window クラスを使った簡易版を作ってみましたが
矢印の表示のON・OFFが無いので、デフォルトと同じものは作れないみたいです。
やはり、自作しかないという結論になりました。

デフォルトとの置き換えに関していうと、スクリプトの全体的な変更が必要になりそうです。
まず、ウィンドウ内容を作成する処理がすべてデフォルトの -32 を想定しているので、
これを書き直す必要があります。
また、再定義を行う際に多くの人は、クラス定義をそのまま流用すると思います。
たとえば、ウィンドウに新しい処理を追加したい場合は、
class Window_Base < Window
end
と、しますよね。
この Window が余計で、Ruby だとスーパークラスの設定が違うとエラーが出るのですが、
RGSS2 では、なぜかそのまま実行されてしまいます。
それも、スーパークラスの変更を行って。。。
ですので、すべての継承設定の部分を消さないといけません。


STRRGSS2 ARCHIVES さんでしたっけ?
スリムウィンドウっていうのがあったと思うんですけど、
これを使えば、contents が大きくなったように見せられないのかな?
ウィンドウを小さくするスクリプトでしたよね??
小さくなった分、大きくすればできないかな?
たぶん、やりたいことはこういうことだと思うのですが。。。

コメント




 

 ※ コメント内にURLを含めるには、バッククォート(`)をURLの直前に付け加えてください。


管理人のみ閲覧許可 [?]

トラックバック
トラックバックURL:
http://cacaosoft.blog42.fc2.com/tb.php/487-61d39290
≪ トップページへこのページの先頭へ  ≫
カレンダー
04 << 2017/05 >> 06
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -

カテゴリー
最近の記事
02/28 お返事
02/14 お返事
01/21 お返事
01/12 更新情報
11/28 お返事

最近のコメント
03/16 お返事
01/21 お返事
11/30 z座標
11/20 z座標
08/03 お返事

タグクラウド

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