莞爾の草原。

RPGツクールVX Ace、MVや自作のことを主に書いていくブログです。不定期更新。

トップ

【RGSS3】戦闘時パーティクル浮遊エフェクトスクリプト

f:id:kanjinokusa0405:20180110203136p:plain

バトル画面にパーティクルが浮遊するエフェクトを追加します。

 

【機能】

 ・パーティクルを上昇させる。

 ・パーティクルを下降させる。

 ・ユーザー任意のパーティクル画像を導入できる。


スクリプト本体】

https://github.com/KanjiTheGrass/train/blob/master/Floating.txt

【サンプル画像集】

https://github.com/KanjiTheGrass/train/blob/master/Earth.zip

パーティクルのサンプル画像です。解凍してBattleBacks1に入れてください。

 


利用規約はこちら(http://kanjinokusargss3.hatenablog.com/entry/2017/08/03/150359
 

【補足】

変数に文字列を入れる方法。

 入れたい言葉を半角ダブルクォーテーションもしくはシングルクォーテーションで囲ってください。

例:"Earth"、'Earth'


【更新履歴】

・ver.0.00 - 公開しました

・ver.1.00 - Dir.globだと圧縮後に使えなくなる不具合を受け、仕様を変更しました。

【反省】今まで作った・エターナらせてきたゲーム集

さて、2017年ももうそろそろで終わりという時期に差し掛かってききました。いかがお過ごしでしょうか。

さて、来年をよりよく過ごすために今私がすべきことは何なのか。それはお寺参りでもお遍路参りでもなく、まず一番に今自分が立っている位置を知ることでしょう。

今自分がどこにいるのかを知らなければ、次自分がどこに進めがいいかという指針の方角も決まってこないでしょう。

ということで今回は、私が今まで作ってきた、もしくは、エターナらせてきたゲームたちを箇条書きにしてまとめてみたいと思います。

現在製作中のゲーム、完成したゲーム、事実上の製作停止状態のゲーム、これから製作予定のゲーム、没になったゲームの5つのくくりで分けていきたいと思います。

それではどうぞー

 

■現在製作中のゲーム

・デイドリームリバー キャピタルA

 

■完成したゲーム

・魚れない。(公開停止)

・FIRE!

RPGツクール.exe

・安楽木(やすらぎ)さんは席についた ―消えた一億円の謎―

 

 

■事実上の製作停止状態のゲーム(未完成)

・華宮アキヒロは離さない 傅の字篇(未完成、現在公開停止状態)

・華宮アキヒロは離さない 遥の字篇(公開中。トリックが思い浮かばず停滞状態)

・若王子探偵の捕物帖(時間がないため)

  

■これから製作予定のゲーム

・華宮アキヒロは離さない 博の字篇(遥の字篇が完成してから)

モッツァレラチーズの復讐劇(ピザをテーマにしたゲーム、どっちかというと没)

・デイドリームリバー キャピタルB(キャピタルAが完成してから)

・安楽木(やすらぎ)さんは席についた ―宝の地図の指し示す場所―(トリックば思い浮かばないためいまだに構想状態)

 

■没になったゲーム

・ファーストエイプリル(掌編の推理ゲーム。タイトル落ちだったので没に)

・エレベーター(ホラーゲーム。ほぼ没状態)

 ・新聞社を作ろう!(新聞社を経営するというゲーム。経営シミュレーションの勝手がわからず没に)

赤毛刑事(華宮の傅の字篇に出てくるハインツ刑事が主人公のゲーム。傅の字篇がままならない状態で作れるわけなかったため没に)

 

…… 以上、16個のゲームでした。

 

一人でできるわけねーじゃねーか! ふざけんな!

 

■2018年の抱負

2017年は自分の中で作品量産期と銘打って、いろんなジャンルへと風呂敷を広げに広げてみました結果、このように多くのエターナると製作停止状態のゲームを作ってしまいました。

このまま放っておくのも忍びないので、2018年はそれらと何らかの形でケリを付けて行かなければなと思っております。

 

以下は来年完成させたいゲームです。

 

■完成させたいゲーム

・デイドリームリバー キャピタルA

・華宮アキヒロは離さない 傅の字篇

・華宮アキヒロは離さない 遥の字篇

・安楽木(やすらぎ)さんは席についた ―宝の地図の指し示す場所―

・若王子探偵の捕物帖 

モッツァレラチーズの復讐劇

 

■取り掛かりたいゲーム

・デイドリームリバー キャピタルB

・華宮アキヒロは離さない 博の字篇

・安楽木さんの続編

・若王子探偵の続編

 

……来年も忙しい1年になりそうです。

 

 

 

 

【12禁・閲覧注意】ホラーRPG:デイドリームリバーの紹介(画像付き)

f:id:kanjinokusa0405:20171029143745p:plainどうも。自分でも自分が何者だか正体がつかめなくなってきている莞爾です。

今回は、皆さんに製作中のホラーRPGゲーム:デイドリームリバーに興味を持っていただけたらな、という魂胆のもと、デイドリームリバーの紹介をしていきたいと思います。

 

【注意】

・12禁ゲーです。

・ここから先、ややグロテスクな画像もあります。苦手な方はお控えください。

SNSやブログなどへの画像の転載・利用は自由ですが、どこかにゲームのタイトル(デイドリームリバー)を明記していただけると幸いです。

・画像は製作中のものです。

f:id:kanjinokusa0405:20171029144336p:plain

「大丈夫!」という方だけ先にお進みください。

 

 

f:id:kanjinokusa0405:20171029144538p:plain

f:id:kanjinokusa0405:20171029144635p:plain

朝、登校してきた中学生の伊沢京介(いさわ・きょうすけ)は、理科室で死体が見つかったと騒ぎになっていることに気づきます。

そして、教師の話声から、その死体の主が伊沢と同じテニス部の佐々木翔真(ささき・しょうま)であるのではないかと疑い始めます。

 

伊沢の友人の籏崎健斗(はたざき・けんと)は登校中、佐々木の母親が泣きながら「翔真を見なかったか?」と聞いて回っていたのを目撃していました。そのことを聞いても、伊沢はまだ佐々木が死んだことを信じられずにいました。

f:id:kanjinokusa0405:20171029145322p:plain

ですが、籏崎の携帯に入っていた佐々木からの留守番電話を聞き、伊沢は佐々木の死を信じざるを得なくなります。

f:id:kanjinokusa0405:20171029145353p:plain

f:id:kanjinokusa0405:20171029145450p:plain

伊沢と籏崎は、何が佐々木を死に至らしめたのかを知るために、部活動を無断で休んで夜中の学校に行くことを決意します。

f:id:kanjinokusa0405:20171029145604p:plain

そこに、引退したテニス部の先輩である岡梨優也(おかなし・ゆうや)が現れ、彼らが部活に参加しなかったことを受け、何があったのかを探ってきます。

f:id:kanjinokusa0405:20171029145708p:plain

事情を知った岡梨は叱らないまでも、「自分もそういうことに興味がないわけではない」といって二人をやんわりと注意します。それを聞いた籏崎は、何を勘違いしたのか岡梨を夜中の学校に誘います。そして、何を思ったのか岡梨は二人に同行することを決意します。

f:id:kanjinokusa0405:20171029145852p:plain

夜中の学校に入ろうとしますが、当然鍵が掛かっていて入れません。

f:id:kanjinokusa0405:20171029145924p:plain

そこで、籏崎が一人で通気口から職員室に入り、昇降口の鍵を開けに行くことになります。

f:id:kanjinokusa0405:20171029150134p:plain

f:id:kanjinokusa0405:20171029150213p:plain

このとき、これから起こる奇妙な出来事の数々を誰が予測できただろうか……。

※ここから先は画像だけです。

f:id:kanjinokusa0405:20171029150506p:plain

f:id:kanjinokusa0405:20171029150616p:plain

f:id:kanjinokusa0405:20171029150702p:plain

f:id:kanjinokusa0405:20171029153430p:plain

f:id:kanjinokusa0405:20171029153455p:plain

f:id:kanjinokusa0405:20171029153550p:plain

f:id:kanjinokusa0405:20171029154543p:plain

f:id:kanjinokusa0405:20171029154629p:plain

f:id:kanjinokusa0405:20171029160100p:plain

f:id:kanjinokusa0405:20171029160202p:plain

f:id:kanjinokusa0405:20171029160232p:plain

f:id:kanjinokusa0405:20171029160424p:plain

f:id:kanjinokusa0405:20171029160446p:plain

f:id:kanjinokusa0405:20171029160841p:plain

f:id:kanjinokusa0405:20171029161032p:plain

f:id:kanjinokusa0405:20171029161100p:plain

f:id:kanjinokusa0405:20171029161118p:plain

f:id:kanjinokusa0405:20171029161212p:plain

f:id:kanjinokusa0405:20171029161317p:plain

f:id:kanjinokusa0405:20171029161456p:plain

f:id:kanjinokusa0405:20171029161629p:plain

f:id:kanjinokusa0405:20171029161643p:plain

f:id:kanjinokusa0405:20171029162200p:plain

 

f:id:kanjinokusa0405:20171029161745p:plain

f:id:kanjinokusa0405:20171029162252p:plain

f:id:kanjinokusa0405:20171029162328p:plain

f:id:kanjinokusa0405:20171029162354p:plain

f:id:kanjinokusa0405:20171029162416p:plain

f:id:kanjinokusa0405:20171029163725p:plain

f:id:kanjinokusa0405:20171029163837p:plain

f:id:kanjinokusa0405:20171029181931p:plain

f:id:kanjinokusa0405:20171029182026p:plain

f:id:kanjinokusa0405:20171029182056p:plain

f:id:kanjinokusa0405:20171029182948p:plain

f:id:kanjinokusa0405:20171029182952p:plain

f:id:kanjinokusa0405:20171029182959p:plain

f:id:kanjinokusa0405:20171029183034p:plain

f:id:kanjinokusa0405:20171029183156p:plain

f:id:kanjinokusa0405:20171029183758p:plain

f:id:kanjinokusa0405:20171029184207p:plain

f:id:kanjinokusa0405:20171029184314p:plain

f:id:kanjinokusa0405:20171029184617p:plain

f:id:kanjinokusa0405:20171029184628p:plain

f:id:kanjinokusa0405:20171029184736p:plain

f:id:kanjinokusa0405:20171029184819p:plain

f:id:kanjinokusa0405:20171029184825p:plain

f:id:kanjinokusa0405:20171029184835p:plain

f:id:kanjinokusa0405:20171029190931p:plain

f:id:kanjinokusa0405:20171029192029p:plain

f:id:kanjinokusa0405:20171029192110p:plain

f:id:kanjinokusa0405:20171029192118p:plain

f:id:kanjinokusa0405:20171029192258p:plain

f:id:kanjinokusa0405:20171029192611p:plain

f:id:kanjinokusa0405:20171029192448p:plain

f:id:kanjinokusa0405:20171029192758p:plain

f:id:kanjinokusa0405:20171029193155p:plain

 

f:id:kanjinokusa0405:20171029193235p:plain

f:id:kanjinokusa0405:20171029193821p:plain

f:id:kanjinokusa0405:20171029193924p:plain

f:id:kanjinokusa0405:20171029194025p:plain

f:id:kanjinokusa0405:20171029194034p:plain

f:id:kanjinokusa0405:20171029194145p:plain

f:id:kanjinokusa0405:20171029194206p:plain

f:id:kanjinokusa0405:20171029195805p:plain

f:id:kanjinokusa0405:20171029195829p:plain

f:id:kanjinokusa0405:20171029203847p:plain

f:id:kanjinokusa0405:20171029203753p:plain

f:id:kanjinokusa0405:20171029204022p:plain

f:id:kanjinokusa0405:20171029204049p:plain

f:id:kanjinokusa0405:20171029204313p:plain

f:id:kanjinokusa0405:20171029204430p:plain

f:id:kanjinokusa0405:20171029205215p:plain

f:id:kanjinokusa0405:20171029210052p:plain

f:id:kanjinokusa0405:20171029212423p:plain

f:id:kanjinokusa0405:20171029212431p:plain

f:id:kanjinokusa0405:20171029212451p:plain

f:id:kanjinokusa0405:20171029212626p:plain

f:id:kanjinokusa0405:20171029212850p:plain

f:id:kanjinokusa0405:20171029213717p:plain

f:id:kanjinokusa0405:20171029213726p:plain

f:id:kanjinokusa0405:20171029213737p:plain

f:id:kanjinokusa0405:20171029213746p:plain

f:id:kanjinokusa0405:20171029213758p:plain

f:id:kanjinokusa0405:20171029213810p:plain

f:id:kanjinokusa0405:20171029213821p:plain

f:id:kanjinokusa0405:20171029213832p:plain

f:id:kanjinokusa0405:20171029213849p:plain

f:id:kanjinokusa0405:20171029213912p:plain

f:id:kanjinokusa0405:20171029213918p:plain

f:id:kanjinokusa0405:20171029213929p:plain

 

――学校編はここまで――

 

 

【このゲームのセールスポイント】

・社会的なストーリー

 完成版をお待ちください。

・バラエティ豊かなスキルとコマンドが作る戦略性

 このゲームに出てくるプレイアブルキャラクターたちは皆、異なるコマンドとスキルを覚えています。

例えば、伊沢の格闘というコマンドは、覚えている格闘技をランダムに選んで、ノーコストで使うことができます。

f:id:kanjinokusa0405:20171029151330p:plain

f:id:kanjinokusa0405:20171029150923p:plain

また、伊沢がテクニックで覚えている調合という技は、持っているアイテム同士を使って新たなアイテムを作り出すことができます。思わぬアイテムが生まれることも……

f:id:kanjinokusa0405:20171029150944p:plain

f:id:kanjinokusa0405:20171029151646p:plain

f:id:kanjinokusa0405:20171029151834p:plain

調合で作ったアイテムで、アンデッドのモンスターにダメージを与えることも。

f:id:kanjinokusa0405:20171029154356p:plain

籏崎は敵のアイテムを盗むことができ、これを使って物語を有利に進めていくことができます。盗めるアイテムはモンスターによって異なります。

f:id:kanjinokusa0405:20171029152120p:plain

f:id:kanjinokusa0405:20171029152201p:plain

f:id:kanjinokusa0405:20171029152639p:plain

さらに、彼のコマンド「踊る」は、敵を状態異常にかけたり、味方を回復したりできる踊りをランダムに選んでノーコストで使うことができます。

f:id:kanjinokusa0405:20171029151010p:plain

f:id:kanjinokusa0405:20171029152502p:plain

次に、岡梨は戦闘中に敵が使ってきた一部の技を覚えることができます。より多くの技を覚えることで、より幅広い戦術を練ることができます。

f:id:kanjinokusa0405:20171029151032p:plain

f:id:kanjinokusa0405:20171029152844p:plain

f:id:kanjinokusa0405:20171029152954p:plain

さらに、岡梨しか覚えていない「かばう」や「耐える」を使うことによって、仲間を瀕死にすることを防ぐこともできます。

 

f:id:kanjinokusa0405:20171029153205p:plain

佐賀の「ジャンプ」と別宮の「隠れる」を使うと、数ターンの間敵の猛攻から逃れることができます。

f:id:kanjinokusa0405:20171029155109p:plain

f:id:kanjinokusa0405:20171029155149p:plain

f:id:kanjinokusa0405:20171029160009p:plain

桜庭の「魔法反射」というコマンドは、その名の通り敵の魔法攻撃を反射することができます。ノーコストで何度でも使えて便利ですが、物理攻撃はしっかり当たるので注意が必要です。

f:id:kanjinokusa0405:20171029155429p:plain

他にも、コマンドを変えられる装備がいくつかあり、さらに多彩な戦略を生み出すことが可能です。

f:id:kanjinokusa0405:20171029153933p:plain

f:id:kanjinokusa0405:20171029153948p:plain

f:id:kanjinokusa0405:20171029154837p:plain

また、TPが100になると、「■切り札」という必殺技を使えるようになる。各キャラごとに使う技は異なるが、いずれも敵に大ダメージを与えることができる。

f:id:kanjinokusa0405:20171029163005p:plain

f:id:kanjinokusa0405:20171029163031p:plain

f:id:kanjinokusa0405:20171029163039p:plain

f:id:kanjinokusa0405:20171029163255p:plain

f:id:kanjinokusa0405:20171029163319p:plain

f:id:kanjinokusa0405:20171029163503p:plain

 

更に、戦闘中にも自由に隊列を変更することができます。戦闘に参加していないメンバーを戦闘に出したり、前列と後列を入れ替えることができます。

f:id:kanjinokusa0405:20171029181326p:plain

f:id:kanjinokusa0405:20171029181459p:plain

アイテム画面を開くと、装備を変えることができます。

f:id:kanjinokusa0405:20171029181510p:plain

 

【ここまでの感想等】

 いかがだったでしょうか。

 日ごろからTwitterに作業の進捗の画像やら動画やらを載せているんですが、このゲームだけはグロテスクな表現が多いため、載せられない部分が多かったです。ただ、このゲームに興味を持っていただくためには、どうしてもこの部分も見ていただく必要があると思い、こういうふうにまとめてみました。

 少しでも、デイドリームリバーに興味を持っていただけたら幸いです。

 最後までお付き合いいただき、ありがとうございました。

 

【RGSS3、バグあり】二人ポーカースクリプト(AI搭載)(Script : Heads Up Poker)

f:id:kanjinokusa0405:20170923221625p:plain

「ポーカー? そんぐらい楽勝っしょ」

そんな軽率なノリで作り始めました。まさか三日もかかるとは思いませんでした。

f:id:kanjinokusa0405:20170923221340p:plain

ジョーカーなしのヘッズアップポーカーです(ジョーカーは仕様が面倒くさいので搭載しなかったのは内緒)。これさえ作れればプログラマーになれるといいますが、こんなものを作らなければならないくらいだったらプログラマーにはなりたくありません。

 

20/3/18追記 - シーン終了時正しく終了しない場合があります。

スクリプト本体】

https://github.com/KanjiTheGrass/train/blob/master/PokerScript.txt

【お借りしたトランプの画像】

sozai.7gates.net

 

利用規約はこちら(http://kanjinokusargss3.hatenablog.com/entry/2017/08/03/150359

 

【更新履歴】
・ver.0.00

・公開しました

・ver.0.01
・コミュ太郎氏の助言を受けてcard_numberとsame_number_countの処理を簡略化
・ワンゲームが終わった後にゲームを終了しようとしても終われないバグを修正
・アンティの額を変えられるように変更
・チップ制度を追加。

 

【RGSS3】混乱時行動拡張スクリプト(Script : Extend Actions in Confusing)

f:id:kanjinokusa0405:20170803204301p:plain

混乱時の行動パターンを拡張するスクリプトです。混乱時に混乱しているアクターが敵にアイテムを使ったり、味方に攻撃スキルを使ったりするようになります。某最終幻想よりの仕様です。

 

スクリプト

https://github.com/KanjiTheGrass/train/blob/master/RGSS3ConfusingAction.rb

 

利用規約はこちら(http://kanjinokusargss3.hatenablog.com/entry/2017/08/03/150359

 

【更新履歴】
・ver.1.00 公開しました
・ver.1.00a コミュ太郎氏により使用不能のスキルがあるとまれに行動できなくなる不具合の修正とスクリプトの簡略化が行われました。

【RGSS3】技の攻撃対象拡張スクリプト(Script : Extend the Target of specific skill or item)

f:id:kanjinokusa0405:20170803151054p:plain

味方を殴ったり敵を回復したりできるようになるスクリプトです。攻撃対象を決めるウィンドウでRかLキーを押すと攻撃対象が敵から味方、味方から敵へ変わります。混乱・眠り状態の仲間を治したいときや、レベル調整で仲間を間引きたいときなどに使えるでしょう。

 

スクリプト

 https://raw.githubusercontent.com/KanjiTheGrass/train/master/RGSS3TargetExtend.rb 

 

【「XPスタイルバトル」および「戦闘コマンド消したりするやつ」対応版(コミュ太郎氏制作)】(ver.1.00)

http://wikiwiki.jp/comtarorgss/?RGSS3%2F%B5%BB%A4%CE%C2%D0%BE%DD%CA%D1%B9%B9_XP%A5%B9%A5%BF%A5%A4%A5%EB%A5%D0%A5%C8%A5%EB%C2%D0%B1%FE%C8%C7

 

更新履歴:

・ver.1.00 公開しました。

・ver.1.10 一部スキルでの対象変更を禁止できるようにしました。 

・ver.1.11 一度対象変化できるスキルを使おうとすると、次の対象変化禁止のスキルでも対象変化できてしまうバグを修正。

 ・ver.1.12 戦闘開始時にスキルを選んでも正常に対象変化が行われないバグを修正。

・ver.1.13 敵全体スキルを味方対象にしたときに味方単体にしか攻撃しない仕様を変更しました。

 

利用規約

・利用報告は不要ですが、報告していただけると舞い上がります。

・素材の改変は自由ですが、無断で素材単体を二次配布する行為は禁止です。

・Readmeやスタッフロールなどのクレジットに当サイト名(莞爾の草原。)や作者の名前(莞爾の草)、もしくはスクリプト/プラグイン名のどれか一つを必ず明記してください。

・商用利用も可。成人ゲームでも使っていただいて構いません。

・公式非公認の二次創作などを含む違法なゲームでは使用しないでください(公認の場合はOKです)。この件に関してのご相談は受け付けません。ご自身で考えて決めてください。

・他の制作者様のスクリプトとの競合に関しましては一切相談を受け付けません。

バグ報告は当ブログもしくは作者Twitterhttps://twitter.com/kanjinokusa)からお願いします。

【RPGツクールVX Ace】動くタイトル画面を作ろう!(ウィンドウ編)【初心者向け】

どうも、つい最近自転車を撤去された莞爾です。以後気を付けます、もとい、以後お見知りおきを。

f:id:kanjinokusa0405:20170720184429p:plain
さて、デフォルトのタイトル画面には「ニューゲーム、コンティニュー、シャットダウン」のコマンドがありますが、「ウィンドウの位置を変えたーい」とか、「選択肢を中央揃えにしたーい」とか、「ウィンドウを消して選択肢だけにしたいてー」とか、「オリジナルのコマンドをつけくわえたいロドリゲスー」とか、いろいろやりたいことはあると思います。

それとこれは独自の見解ですが、何かと疎まれがちなツクール感はここから出ているような気もします。何て言ったって一番最初にプレイヤーが見る画面ですから。
……と、前置きはさておいて、早速動かしていきましょう。

 

目次

■ウィンドウの位置を変える

■ウィンドウの大きさを変える

選択肢を中央揃えにする(行間の長さを変える)

ウィンドウを消して選択肢だけにする

■選択肢を横に並べる

■オリジナルのコマンドをつけくわえる

 

■ウィンドウの位置を変える

f:id:kanjinokusa0405:20170720184627p:plain

まず、デフォルトのウィンドウの位置はclass Window_TitleCommandのupdate_placementというメソッドの中で決められています。このメソッドはinitializeというクラスを読み込んだ時に一度だけ実行されるメソッドから呼ばれています。

ではさっそく、数値の変えていきましょう。デフォルトのXは(ゲーム画面の横幅(Graphics.width、デフォルトでは544)-このウィンドウの横幅)÷2となっており、Yのほうは(ゲーム画面の縦幅(Graphics.height、デフォルトでは416)×1.6-このウィンドウの縦幅)÷2となっています。

f:id:kanjinokusa0405:20170720185507p:plain

では、試しにこの位置設定の部分を#でコメントアウト(該当の部分を評価しないこと)してみましょう。すると、ほかにこのウィンドウの位置を設定している箇所がないため、ウィンドウX・Yはデフォルト設定の0になります。つまり、こうです。

f:id:kanjinokusa0405:20170720185806p:plain

さて、では次にこのウィンドウを任意の位置に持っていきましょう。例えば、右に50下に300のところに持っていきたいというなら、

f:id:kanjinokusa0405:20170720190625p:plain

こうです。そしてこうすると……

f:id:kanjinokusa0405:20170720190701p:plain

こうなります。だいぶ雰囲気が変わりますね。

ちなみに、Xの数字は数学みたく正のほうに増えるにつれて右のほうにずれ、負のほうに増えると左にずれていきますが、Yは正のほうに増えるにつれて位置が下がっていき、負のほうに増えるにつれて位置が上がっていきます。

X=30,Y=-15の場合の図。

f:id:kanjinokusa0405:20170720190135p:plain

それと、数字で直接指定していると、Graphics.resize_screenで画面のサイズを変えたときや、このウィンドウのサイズを変えたときなんかに、ウィンドウが思ってた位置よりずれてしまうことがあります。

f:id:kanjinokusa0405:20170720191146p:plain

先ほどちょっと触れましたデフォルトの位置設定ではそれを避けるために、直接数字で指定することなく、画面のサイズやこのウィンドウのサイズ、倍率などを使って位置を調整していました。まあ、そんなに頻繁に画面のサイズもろもろを変えることはないと思うので大丈夫だと思いますが、もし気になる方はそういった方法で位置調整すればいいでしょう。

ちなみに、Scene_Titleでも位置を変えることができます。Window_TitleCommandで設定した座標はScene_Titleで設定されたものに加算されます。基本的に使うならどちらか一つでいいです。

f:id:kanjinokusa0405:20170720193220p:plain

 

 

■ウィンドウの大きさを変える

タイトル画面の選択肢のウィンドウの横幅はWindow_TitleCommand内のwindow_widthによって160と決められています。

f:id:kanjinokusa0405:20170720190455p:plain

この数値を変更することによって、ウィンドウの横幅を自由に変えることができます。

ちなみに、縦幅を決めるwindow_heightというメソッドはWindow_TitleCommand内にはなく、Window_TitleCommandのスーパークラスであるWindow_Commandの中に入っています。スーパークラスとは、サブクラス(子クラス、ここでいうWindow_TitleCommand)のもととなるクラスのことで、スーパークラスで決められた命令は、特に変更がない限りサブクラスでも同様に行われます(画像編でもスーパークラスについて説明しています

【RPGツクールVX Ace】動くタイトル画面を作ろう!(画像編)【初心者向け】 - 莞爾の草原。

)。

話を戻します。つまり、Window_TitleCommandクラスにはないメソッドなので、スーパークラスのWindow_Commandからメソッドwindow_heightをコピペしてきます。

f:id:kanjinokusa0405:20170720195645p:plain

「fitting_heightって何?」とお思いの方もいると思います。これはWindow_Commandのスーパークラススーパークラス、Window_Base内にあるメソッドです。ひいおじいちゃんの形見って感じですね。……違いますかそうですか。とにかくスーパークラスは何個でも呼び出せるんです。

f:id:kanjinokusa0405:20170720200336p:plain

見てみると、line_number×行の高さ(デフォルトでは24)+行間(12)×2という計算になっています。このline_numberというのはこのメソッドを呼ぶときに、呼んだ側が指定した引数を格納する変数です。

window_heightではfitting_height(visible_line_number)となっていて、今回はline_numberにはvisible_line_numberが代入されていることになります。このvisible_line_numberというのはWindow_Command内にあるメソッドで選択肢の数を返します。つまり、3です。つまり、Window_TitleCommandデフォルトのウィンドウの縦幅は3×24(行の高さ)+12(行間)×2、ということで96であることが分かります。くどい。

ちなみに、縦幅をwindow_heightの数字より1でも小さくすると、下の図のように矢印が表示され一つ下の選択肢が表示されなくなります。

f:id:kanjinokusa0405:20170720202158p:plain

f:id:kanjinokusa0405:20170720202504p:plain

スクリプトを組めばこうなることを避けることもできますが、特に理由のない限りはwindow_heightの数字より大きい数字にすることをおすすめします。

それと、大きさを変えるとウィンドウが画面からはみ出ることがあります。ウィンドウの位置変更の方法は上記参照。

f:id:kanjinokusa0405:20170720201845p:plain

f:id:kanjinokusa0405:20170720201716p:plain

 それと、WindowクラスはSpriteクラスではないので、ウィンドウを画像として拡大したり角度をつけたりということはできません。

 

選択肢を中央揃えにする(行間の長さを変える)

f:id:kanjinokusa0405:20170720203353p:plain

いくらウィンドウの横幅を大きくできたとしても選択肢が全部左揃えだとなんだかちょっと不揃い感を感じるという人もいると思います。

ということで選択肢を中央揃えにしましょう。

基本的に、ウィンドウ上で文字を描写するときはWindowクラスのcontentsというBitmapのdraw_textというメソッドを使うのですが、このときに文字のアライメント(揃え方)を決めることができます。そして、そのアライメントはWindow_Command内で自由にいじれるようになっています(デフォルトで)。

そういうことで、アライメントを決めているこのdef alignmentをWindow_TitleCommandにコピペします。

f:id:kanjinokusa0405:20170720203808p:plain

アライメントの設定は簡単で、0が右揃えで、1が中央、2が左です。今回は中央揃えなのでreturn 0の0を1に変えます。

f:id:kanjinokusa0405:20170720204641p:plain

 

 

f:id:kanjinokusa0405:20170720204715p:plain

するとちゃんと中央揃えになります。

ちなみにこれ、RPGツクールVX Ace付属の説明書にちゃんとやり方が書いてあります。だからといって受け売りを話してたわけじゃないですけど。受け売りを話してたわけじゃないですけど。

f:id:kanjinokusa0405:20170720204909p:plain

 

次に行間を広くします。こんな感じです。

f:id:kanjinokusa0405:20170720215008p:plain

f:id:kanjinokusa0405:20170720215140p:plain

まず、Window_Baseからline_heightというメソッドをWindow_TitleCommandに持ってきます。次に任意の高さに変えます。これだけです。

 

 

ウィンドウを消して選択肢だけにする

f:id:kanjinokusa0405:20170720205404p:plain

これも説明書にやり方が書いてあるので、使用例だけ紹介するとこんな感じです。

f:id:kanjinokusa0405:20170720205612p:plain

f:id:kanjinokusa0405:20170720205708p:plain

ただ、デフォルトだと黒い影が薄いので、Window_Commandからdraw_itemをコピペしてきてこうすると影が濃くなります。

f:id:kanjinokusa0405:20170720210139p:plain

f:id:kanjinokusa0405:20170720210216p:plain

 

■選択肢を横に並べる

f:id:kanjinokusa0405:20170720211042p:plain

ちょうどこんな感じです。ではさっそく作っていきましょう。

f:id:kanjinokusa0405:20170720212013p:plain

変更点は3点。まとめるとこんな感じです。

スーパークラスをWindow_CommandからWindow_HorzCommandに変える。

・新たにcol_maxというメソッドを設ける。

・window_widthをGraphics.widthに変える。

これだけでOKです。Window_HorzCommandのスーパークラスがWindow_Commandのため、Window_Commandのメソッドも使うことができます。

 

オリジナルのコマンドをつけくわえる【上級者向け】

 これ、コマンドを作るだけなら簡単ですが、その先の実行内容を作るのは上級者向けです。いろんなケースが想像できるので、全てを対応することはできませんのでコマンドの作り方だけを説明していきます。

まずWindow_TitleCommandクラスのメソッドmake_command_listに任意のコマンドを付け加えます。

f:id:kanjinokusa0405:20170720213026p:plain

次に、Scene_Titleのcreate_command_windowにも同じ任意のコマンドを加えます。どちらかが抜けているとうまく実行しません。

f:id:kanjinokusa0405:20170720213433p:plain

そして次に、set_handlerの中で作ったメソッドを作ります(この場合command_additionになります)。

f:id:kanjinokusa0405:20170720214107p:plain

f:id:kanjinokusa0405:20170720213700p:plain

 起動するとこうなります。

ただ、今回の場合command_additionの中が空なので、このコマンドを押すとフリーズします。

ここから先どうするのかはあなた次第です。

 

さて、この記事で私は何回デフォルトという言葉を使ったでしょうか。あ、数えなくて結構です。