3Dポーズ集 2012/05/30 02:43

ウィンドウの生成(作業日報 5/29)

作業内容


RPGツクール


アクション戦闘の処理が一段落したので。次は現在操作しているキャラクターのステータスを表示しようということでウィンドウの生成から。RGSS3のヘルプを見てもちんぷんかんぷんなのはいつもの如く。

まずイベントのスクリプトに以下を書いてみる。スクリプトエディタの出番はまだです。


acts = Window_Base.new(0,0,544,100)


これだけで空のウィンドウが表示される。ただし一定時間で消えてしまう。内容が何もないと自動的にきえるっぽい。

ステータスは常に更新されるので、イベントでの処理よりも、シーンでの処理の方が望ましい、ということで、はいスクリプトエディタの出番です。

Scene_Mapをまずはコピーして▼素材の下にペースト。この中から不要なものをごっそり削る。ウィンドウの生成をして欲しいのはMap画面に入ったときなので、startのしょりを残して削除。


def start
super
SceneManager.clear
$game_player.straighten
$game_map.refresh
$game_message.visible = false
create_spriteset
create_all_windows
create_act_window
@menu_calling = false
end


create_act_windowが追加した処理。create_act_windowの処理内容は以下のとおり。


def create_act_window
@acts = Window_Base.new(0,0,544,100)
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
hp = hp.to_s
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


今のところのソースなので多分増える予定。ただ、これだとステータス表示が切り替わらないはずなので、フレーム更新時に処理が行われるよう追加。Scene_Mapからupdateを探してきてコピペ、修正。


def update
super
$game_map.update(true)
$game_player.update
$game_timer.update
act_window_update
@spriteset.update
update_scene if scene_change_ok?
end


act_window_updateが新しく作る処理名。何も考えず、create_act_windowをコピペしたものがこれ。実際の作成時とは内容が違うけれども。


def act_window_update
@acts = Window_Base.new(0,0,544,100)
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
hp = hp.to_s
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


↑上記のスクリプトを実行すると、最初アホみたいに重くなってその後、重いながらも動くようになります。新しいウィンドウを限界まで開いてしまう命令内容であるためです。.newはいかんです。というわけで修正を加えたものが以下。


def act_window_update
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
hp = hp.to_s
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


@acts = Window_Base.new(0,0,544,100)の行を削っただけです。@actsにしているのでローカル変数として扱えますから、いちいち作る必要なんか無かったんですね。

最後に軽く詰まった箇所。数値の文字列変換についてです。


def act_window_update
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
hp = hp.to_s
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


太字の処理ですが、以下の命令文だとエラーが出ます。


def act_window_update
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


hp = hp.to_sが無いだけですが、これを実行しようとするとエラーで落ちます。

変数pfaはアクターの先頭が誰なのかを短縮させるための変数で、次の行で変数textsに名前を代入しています。その次に変数hpに攻撃力の値を代入しています。そして変数textsに変数hpを追加しようとしています。javascriptですとこの処理はうまく動くのですがRGSSだと、文字列に数値は足せねーよボケがといわれて落ちます。アクターの攻撃力は計算に使いますからね……。なので、この数値を文字列に変換する必要があります。


def act_window_update
texts = ""
pfa = $game_party.members[0]
texts = pfa.name
hp = pfa.param(2)
hp = hp.to_s
texts += hp
@acts.contents.draw_text(0,0,500,70,texts)
end


というわけで文字列に変換する.to_sを追加したソースコードが上記。別に二行にする必要は無いです。hp = pfa.param(2).to_sでいけます。

この後画像を表示したり、そもそも背景を変更したりしなきゃいけないんですが、とりあえず任意のパラメーターを引っ張ってくる処理までは出来るようになりました。

今回調べたRGSS3については、RGSS3 スクリプトリファレンス@NAVER まとめにてメモがてら追加していますので、RPGツクールVX Ace触られる方はご参考に。

wiki
カスタムサーガwikiを更新しました。ま、ちょっとずつやっていきましょうか。書くことすごく多いですし。同様にブラウザ一騎当千 爆乳争覇伝 wikiもちょこっと。

mod
髪の毛。UVを一房。あとはアホ毛ができたらひと段落。

別件で音声フォルダのメモ

data/sound/voice/aibu
data/sound/voice/body_touch
data/sound/voice/fera
data/sound/voice/h
data/sound/voice/normal

公開できるものは作らないですけどねw ふとエロゲの音声とか切り貼りして個人的に遊ぼうかなぁとw

モンハンTRPG
フレーバーテキストをいただいたので追加。新しい範囲を指定せねば。




200年前の鉄で作る日本刀かぁ。浪漫だわー。

以下続き。







巨乳トライ! -短期集中乳揉みレッスン-
簡易レビュー書きました。マリン結構好きですw

ひとかるっ!?
田舎娘さん、kikiさん、裏新宿さん、あとクロ子さん、カス子界隈でお世話になっている人に本体を差し上げました。それと、モンハンTRPGでテストプレイを手伝ってもらっているサークルのメンバーさんにも。遅れててすみません。

あと居酒屋の大将から久々にメールをいただきました。掲載ありがとうございます。

……知った顔に自分の作ったエロゲ送るのって羞恥プレイだよねw TRPGサークルなんかリア友なわけだしw

他カス子ブログ様更新情報


木がぁぁぁぁ / SHAVEDFISH3D
[3Dカスタム少女]名状しがたい制服でも作ろうかな / taughthelplessnessの日記
アーマチュアのじっけん / 3D bud daughter atelier
AC「+R」 / もさもさ部屋ー。
多彩な / ティナ製作日記 他他他
つばさヘビセ4UPしました。 / OCEAN WORKS 505
女体の扱いは丁寧に… / クロ子のMOD七転八倒
口が軽いのはマジでした。 / no title
初心に帰る / 3D bud daughter atelier
ムーンベースは月面基地 / クロ子のMOD七転八倒
BAD END PEACES / 堕ち玩
外回り2 / SHAVEDFISH3D
[3Dカスタム少女]ロップイヤー その2 / taughthelplessnessの日記
刺客さんまとめ。 / もさもさ部屋ー。
小休止…だがやることはMOD製作! / クロ子のMOD七転八倒
どこでも電源 / 3Dカスタまらせて頂きます。
自室襲撃の魅力 / 愛して斃せ!
完成報告ななつめ / 堕ち玩
外回り / SHAVEDFISH3D
魔転狼 蒼月さまより Love Juice 100 ~Instant Succubus~ (1) が発売しました! / アクノス研究所

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

記事を検索