// private List<Node> _resultPointer; public override void StartGameMode() { // Dokapon = this; this.Name = "Dokapon/Bank"; this.Turn = 0; cameras = GameObject.FindGameObjectsWithTag("MainCamera"); GameObject[] NodeObjects = GameObject.FindGameObjectsWithTag("Node"); nodes = new Node[NodeObjects.Length]; for (int i = 0; i < NodeObjects.Length; i++) { nodes[i] = NodeObjects[i].GetComponent <Node>(); } for (int i = 0; i < MaxPlayer; i++) { Poring poring = Instantiate(PoringPrefab).GetComponent <Poring>(); porings.Add(poring); //print(Random.Range(0, nodes.Length));print(porings.Count); // porings[0].transform.position = nodes[0].transform.position; Node node = nodes[UnityEngine.Random.Range(0, nodes.Length)]; node.AddPoring(poring); panelPoringUI.Add("Poring " + (i + 1), 0, 0); } currentCamera = cameras[0]; currentPoring = porings[0]; currentCamera.GetComponent <CameraController>().SetTarget(currentPoring); // Initiailize sounds resource = GetComponent <Resource>(); bgm = SFX.PlayClip(resource.bgm[0], 1, true); bgm.GetComponent <AudioSource>().time = 3; print("Dokapon Start !!"); }
public override void UpdateGameMode() { switch (state) { case DokaponGameState.focus: if (currentPoring == null) { return; } float distance = Vector3.Distance(currentPoring.transform.position, currentCamera.transform.position); //print(distance); if (distance < 11.2f) { state = DokaponGameState.roll; m_timeForRoll = TimeForRoll; // panelRoll.SetRoll(6); } break; case DokaponGameState.roll: m_timeForRoll -= Time.deltaTime; if (m_timeForRoll < 0) { Roll(); } break; case DokaponGameState.plan: if (Input.GetMouseButtonDown(0)) { RaycastHit hit; Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(ray, out hit, 100.0f)) { Node node = hit.transform.parent.GetComponent <Node>(); if (node) { Debug.Log("You selected the " + node.nid); SFX.PlayClip(resource.sound[0]).GetComponent <AudioSource>().time = 0.3f; node.PointRenderer.SetPropertyBlock(MaterialPreset.GetMaterialPreset(EMaterialPreset.selected)); if (node.steps.Count > 0) { MagicCursor.Instance.MoveTo(node); Route.Clear(); // PathToNode(node); // foreach (Node n in PathToNode(node)) { // s += n.nid + ", "; // } RouteToNode(node); // foreach (List) //print(GetNodeString(PathToNode(node))); // print(s); foreach (List <Node> r in Route) { print(GetNodeString(r)); } } } } } break; } }
public void Play() { SFX.PlayClip(audio); }
public void Play(Transform target) { SFX.PlayClip(audio, target); }
public void Play() { SFX.PlayClip(this); }