// Use this for initialization void Start() { for (int i = 0; i < 8; i++) { ghosts[i] = Instantiate(transform, transform.position, transform.rotation, transform.parent); foreach (Component component in ghosts[i].GetComponents <Component>()) { if (!(component is Renderer || component is Transform || component is MeshFilter || component is Collider)) { DestroyImmediate(component); } } GhostController gc = ghosts [i].gameObject.AddComponent <GhostController> (); gc.Initialize(gameObject); } PositionGhosts(); }
public override void StageEnter() { //プレイヤーの初期化 foreach (SkinnedMeshRenderer mesh in player.GetComponentsInChildren <SkinnedMeshRenderer>()) { mesh.enabled = true; } player.GetComponentInChildren <Light>().enabled = true; playerStateMachine.enabled = true; player.transform.position = startPosition; animator.SetBool("Idle", true); //ゴーストに前回の位置記録を渡す Vector3[] tmp = new Vector3[posRecord.Count]; for (int i = 0; i < tmp.Length; i++) { tmp[i] = posRecord[i]; } ghostController.Initialize(tmp, deadTimes); posRecord.Clear(); //reset trap trapController.Initialize(); }