private void LoadStates(Transform container, List<State> states) { if (container == null || states == null || states.Count == 0) { return; } foreach (var state in states) { var stateContainer = Instantiate(StatePrefab); container.AppendChild(stateContainer); foreach (var literal in state.Elements) { var stateElement = Instantiate(LiteralPrefab); var script = stateElement.GetComponent<StateElementComponent>(); script.SetData(literal.Key, literal.Value == 0); stateContainer.AppendChild(stateElement); } } }