私が達成しようとしているのは、自分のファイルに保存されている情報に応じて特定のオブジェクトをアクティブまたは非アクティブにしたいシーンです。Unityのシーンにgameobjectsの状態を保存してロードする
ている例:私のゲームでは
、私は壁がある私のシーンの一つをロードするとき、私は特定のポイントに本棚を押して、非アクティブに設定する壁をトリガします。私はこのシーンを終了し、シーンに戻ってくると、壁が再びアクティブになります。私が望むのは、壁が非アクティブに設定されていて、シーンを離れても非アクティブなままで、後でシーンに戻ったときには表示されません。
私が抱えている問題は、これを行う方法です。
[Serializable]
public class Game_Info {
public bool WoodWallEnabled;
public void Default(){
WoodWallEnabled = true;
}
}
マイWoodWallスクリプト:
public class Get_WoodWall_Info : MonoBehaviour {
void Awake() {
gameObject.SetActive (Helper_Manager.instance.gameInfo.WoodWallEnabled);
}
}
私が持っている現時点では、私が持っていることは、プレイヤーが「新しいゲーム」ボタンをクリックしたときに、私は新しいGame_Infoを生成し、デフォルトを()を選択しています私はこれを正しい方法でやっていないと感じています。特にこれを行うと、保存されたファイル(Get_WoodWall_Info、Get_WoodWall_Info1など)を操作したい各ゲームオブジェクトに固有のスクリプトが必要になるため、これを処理するより良い方法があります。 ..)しかし、これを行うために膨大な量のスクリプトを作成したとしても、私はゲームオブジェクトの状態を保存する方法を見つけることができません。
このようなデータをどのように処理して渡しますか?
私はあなたの質問の他の部分のための私の答えを編集しました。前にその部分に気付かなかったのは残念です。とにかく、助けてくれる希望。 – DRKblade