"Godot Engine" GDScript 3 「インスペクターパネルからスクリプトを付けたり外したり」
“extends” を調べようとして、スクリプトがくっつけられないというとんでもない事にハマってしまった訳だが、まずはコッチの解決方法を先に書いておこうと思う。
既存スクリプトの添付
既存のスクリプトファイルを付けるには、シーンパネルの [スクリプト追加] ボタンでやらないで、インスペクターの一番下、"Node" カテゴリにある “Script” からロードさせると上手くいく。"Node" カテゴリの “Script” 項目はすべてのノードが持っているので、どんなタイプのノードでも大丈夫だ。
開いたメニューを見て分かるように、既存スクリプトの添付だけでなく、新規スクリプトの作成もここで出来るようになっている。
空ファイルネームの対処法
空ファイルネームのスクリプトが開いてしまった場合は、慌てずに [スクリプトを外す] ボタンでスクリプトを外してから、
[A] エディタを一旦終了させて、再起動。
か
[B] スクリプトエディターのメニューから [File] > [閉じる]。(前回やった方法)
で消える。
スクリプトを外すのは、ボタン以外にも、インスペクターパネルからもイケる。
この後、"Script" の項目が “< null >” と表示されれば、スクリプトは外れたという事になるようだ。
[Ctrl] + [S]
いったんスクリプトをセーブして、作られたスクリプトファイルをデリートすればいいや、と思って、 [Ctrl] + [S] してしまうと、変な番号付きの名前になる。
そして、ファイルシステムパネルを確認しても、そんな名前のファイルは無い。
どうなったんだろう? じゃ、インスペクターの一番下の “Script” 項目から追加してみるかと思って見てみると、既に入っている。何か、シーンの名前のよう。
もしかしてと思い、テキストエディタでシーンファイルを開いてみたら、
思わぬ発見
ここにあった。なるほど。これが “Built-in Script"? へー。 "Built-in” にした記憶はないんですけど。
消す
やっぱり、気持ち悪いので、消したい。これも2通りでいけた。慌てずに [スクリプトを外す] ボタンでスクリプトを外してから、
[A] エディタを一旦終了させて、再起動。
か
[B] スクリプトエディターのメニューから [File] > [閉じる]。そして、[Ctrl] + [S] でシーンをセーブ。
で消える。"Built-in" は、ノードに繋がっていない場合は消されてしまうようだ。外部にファイルを作ってた方が安全だな。いろいろあったけど、これで何とか解決できた感じだ。
でも、たま~に
上手くいくときもあるんだよなー。なぜかなー。
本当は何が・・・
うむ。"extends" はどうなった? ググってみた。"what is extends Godot" でググってみた。なんとなく分かった。分かった気がした。いじらない方がいいって事が。あー。