P2.玉転がし.23「最終回 YOU WIN」
「Unity の玉転がし風ゲーム」あくまで風な、フウ、最終回。長かったなー。(Gate)
Canvas に Text を追加
ちょっと時間が経つとどーやるんだか忘れちゃうんだよなー。Canvas(UI)はシーンに付けたんだよな Trait。
開くと、結構でかい窓が開くが、俺的にスクショを撮るのに不便なので Canvas の大きさを変えたかったが、恐ろしい事に、テキストの位置や大きさは論理値ではなく、実ドットの大きさらしい。(マジか! マジなら不便過ぎる! 俺が間違っていたらいいんだが・・・)
だから、[▶ Play] して開く窓の大きさと違ってると表示の大きさがおかしなことになる。うむむ、下図の様に合わせておいた方が無難か・・・。Canvas の方の Anchor をいじれば、位置は何とかなるけど、文字の大きさがどうにもならないな。
で、ツールパレットから [Text] ボタンをクリックしてテキストを追加だ。前も書いたが、ボタンをクリックすると左上に追加されるので、マウスドラッグで移動。位置・大きさ・色は何度か [▶ Play] させてみて気に入った感じに設定すればいい。ただ、大事なのは、位置とか変えたら、 [Save] な。これ忘れがち。
❶ [Text] クリック。
❷ 左上に追加されるので、マウスドラッグで適当に移動。前も書いたが、初期設定では 20 ドットづつスナップするようになっている。
❸ X, Y は左上からの位置。W, H は文字入れ部分の横幅と高さ。文字の大きさは高さに同期するらしい。まだフォントとか選べないのかな。
❹ Text は確認のため、"YOU WIN" と入れておく。位置、大きさ、色が決まったら消し、空欄にする。
❺ 名前を変えておかないと、Outliner 上で "Text" と2つ並んでしまうので変えておく。ちなみに、Outliner 上での名前のことを Element(エレメント)と言うんだったよな。あと、これも書いたけど、一旦置いたエレメントは、Canvas 上でクリックできなくなるから、Outliner でクリックして指定してね。
❻ 色は適当に。
❼ Anchor とは、どこから絶対距離を取るかの設定。Top-Left を選んでるので、左上からの絶対距離(X: 440, Y: 140)が絶対取られる。
❽ [Save] ボタン。押せよ!
イイ感じに表示出来たら、さっきも書いたが、"YOU WIN" と入れた部分は削除しておくこと。じゃないと、ゲーム開始直後に勝ってしまうかなら。
スクリプト加筆
"kuruNokori" から "1" 引いた後、"0" になったら、さっき削除した Text 内容に "YOU WIN" と情報を送ればイイよね。つまり、"kuruNokori" と "0" とを比較をするノードが必要だ、それができるのが Gate ノード。
❶ 値1: 左辺に該当するんだろーな。 ❷ 値2: こっちは右辺だな。
❸ ❶と❷をどう比べるか、ここで選べ。まあ分かるよなー。だが俺たちは、算数でも数学でも、基本的に数値は左右で比べてきたから、なんか上下で比べるのはちょっと違和感あるよなー。
❹ 比べて、真なら❹-1 True(トゥルー)、偽なら❹-2 False(フォールス)から信号が出る。
そういうこと。
だから、❶に "kuruNokori"、❷に "0" を繋いでやればいい。で、比較項目は "Equal" でいいよね。まー、こうなればイイよ。
❶ Cube オブジェクトの "kuruNokori" だろ。
❷ Integer で "0" だろ。
❸ Equal で比較だろ。「"kuruNokori" = "0"」で信号だしてほしいんだから、True から線出るだろ。
❹ Element は間違えるな、"Text_YouWin" だぞ。Canvas で名前変えたろ。送る Text 情報は、ここに "YOU WIN" って書いちゃえばいいじゃん。
親切だな、俺って。え? 一番最初にスクショあるじゃんって? 忘れてたわ俺。テヘ。
完成 Gif
カックカクやねん。キャンバスいじってから、なんかカクつくな。ま、いっか。
完成。
本日の確認
- Gate ノード: 2つの値を比較して、真偽でぴ~。