ゲームオーバー画面を作る
EndGame Scene
Scene > new > User Interface (Controle) で作る
1. Layout > FullRect
2. Add > TextureRect > Texture = bg_layer1.png > Expand: true & Scale on Expand
テキストボックスを作る
1. Add > Controle > CenterContainer
Add > VBoxContainer
Add > Label
2. Labelにカスタムフォントを追加
Labelのプロパティではなく、Labelが継承しているControlの方のプロパティ
CustomFont > 新規Dynamic Font > クリック > ttfをドロップ
Custom Color > 色を調整
Custom Fonts > Setting > サイズを調整
https://gyazo.com/e34f647eec8b809fc144c2cb70f7e91d
Layoutは、Controlノードを選択しているときに上に出るレイアウトボタンから、
alignmentやfull Rectなどを選択できる
https://gyazo.com/3e5104f67d83b0c2fd35a5f64a4e3dd3
Control Nodeのコンテナ
UIを並べるのに便利
中央寄せ
CenterContainer
縦横にrow/columnを並べる
VBoxContainer
HBoxContainer
UIというのは、箱を水平、垂直に分割していくことで作れるという基本を守りつつ
色々作ってみるべし(Webフロントエンドと似ている)
画面を作る
最終的に、以下のようなレイアウトにしてみる
https://gyazo.com/348279be9e082e6d75adf5d5a64dbd63
GameOver Sceneのスクリプトを書く
1. ルートのControlにスクリプトをアタッチ
2. RestartButton > ノード > シグナル > BaseButton > pressed() を接続
3. SceneTreeインスタンスを操作して、sceneを変更する。
code: py
extends Control
func _on_RestartButton_pressed():
get_tree().change_scene("res://Levels/Level1.tscn")