public GameStacks BuildGameStacks(GameStacksMeta metaPair, PrefabsManager prefabsManager) { Stack startStack = BuildStackFromStackMeta(metaPair.start, prefabsManager); startStack.gameObject.tag = Tags.STACK; startStack.transform.position = Vector3.right * 2f; Stack targetStack = BuildStackFromStackMeta(metaPair.target, prefabsManager); targetStack.gameObject.tag = Tags.STACK_TARGET; targetStack.IsTargetStack = true; targetStack.Meta.isTargetStack = true; targetStack.transform.position = Vector3.zero; GameObject targetIndicator = prefabsManager.CreateTargetIndicator(); targetIndicator.transform.SetParent(targetStack.transform); targetIndicator.transform.localRotation = Quaternion.Euler(new Vector3(-134.1f, -90f, 90f)); targetIndicator.transform.localPosition = new Vector3(0, 0, 0); return(new GameStacks(targetStack, startStack, metaPair.nFlips)); }