すいませんもう一つだけ教えてください。ついさっきDataがシーン上にない時に試行錯誤しているうち
シングルトンの public GameObject enemy1 = null; を public staticに変えて、
Data.btdata.enemy1 = ... の部分を Data.enemy1 =  ... という記述に変えたことでもエラーが出なくなった事に気づいたのですが、

これは普通のpublicだとbtdataをシーン上に配置してインスタンスしないとアクセスできないけど、
public static だとインスタンス無しでアクセスできる、ということなのでしょうか?