キーを押すと、テキストが順番に送られていくように、スクリプトを作成してみましょう。
今回の例では、Enterキーを押せば、テキストが順番に表示されるようにします。
少し長めのセリフを順に表示させたい場合などに、活用できる仕組みです。
関連記事:
Enterキーでテキストを順送り
UIテキストの表示・非表示
テキストを分割して順に表示
1文字ずつ流れるようにテキスト表示
ボタンを押して入力テキストを表示させる
キー操作で長めの文章を表示
テキストを作成します。
幅と高さを指定して、位置やサイズを変更。
デフォルトの文字は消しておきましょう。
垂直オーバーフローをoverflowに設定することで、折り返した文字が、次の行に表示されます。
空のオブジェクトを作成。
TextManager.csを作成し、GameObject(空のオブジェクト)に追加します。
TextManager.csを記述します。
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 32 |
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class TextManager : MonoBehaviour { [SerializeField] Text talkText; private int count; void Start() { count = 0; } void Update() { if (Input.GetKeyDown(KeyCode.Return)) count++; if(count == 0) talkText.text = ""; else if(count == 1) talkText.text = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"; else if(count == 2) talkText.text = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"; else if(count == 3) talkText.text = "CCCCCCCCCCCCCCCCCCCCCCC"; else talkText.text = ""; } } |
UIテキストを扱い際には、using UnityEngine.UI; を忘れずに書いておきましょう。
TalkTextのフィールドに、Textオブジェクトを入れます。
ゲームプレイして、Enterキーを押していきましょう。
テキストが順番に表示されます。
関連記事:
Enterキーでテキストを順送り
UIテキストの表示・非表示
テキストを分割して順に表示
1文字ずつ流れるようにテキスト表示
ボタンを押して入力テキストを表示させる