コード例 #1
0
    private void FindAndDestroyTarget()
    {
        var      cubes          = FindObjectsOfType <NoteCube>();
        var      gameController = FindObjectOfType <GameController>();
        NoteCube correctCube    = null;

        foreach (var cube in cubes)
        {
            if (cube.note.ToString() == Pitch && cube.Player == forPlayer)
            {
                correctCube = cube;
            }
        }
        var targetPosition = new Vector3(0f, 25f, 100f);

        if (correctCube != null)
        {
            gameController.Hit(forPlayer, correctCube.note);
            targetPosition = correctCube.transform.position;
            correctCube.Explode();
        }
        else
        {
            gameController.Miss(forPlayer);
        }
        var newBeam = Instantiate(beam, transform.position, Quaternion.identity).GetComponent <LineRenderer>();

        newBeam.SetPositions(new Vector3[] { transform.position, targetPosition });
        newBeam.GetComponent <Beam>().SetColor(activeColor);
    }
コード例 #2
0
    public void Generate(string note)
    {
        NoteCube newCube = Instantiate(noteCube, transform.position, Quaternion.identity).GetComponent <NoteCube>();

        audioSource.clip = FindObjectOfType <AudioController>().GetGeneratorPitch(note);
        audioSource.Play();
        newCube.SetTargetPosition(targetPosition);
        newCube.SetNote(note);
        newCube.SetColor(color);
        newCube.SetPlayer(forPlayer);
        newCube.HideNoteTexts(gameController.GetHintDisplayTime(forPlayer, note));
        newCube.transform.parent = GameObject.Find("Active Cubes").transform;
        Helpers.Instantiate(particleEffect, transform.position, Quaternion.identity, "Particle Effects");
    }