コード例 #1
0
    bool IsGoodTouch(TouchSectorType touchSectorType)
    {
        int   type     = (int)touchSectorType;
        float playTime = musicManager.GetPlayTime();

        for (int i = 0; i < touchableNotes[type].Count; i++)
        {
            if (playTime >= touchableNotes[type][i].playTime - goodTime &&
                playTime < touchableNotes[type][i].playTime + goodTime)
            {
                touchableNotes[type].RemoveAt(i);
                return(true);
            }
        }

        return(false);
    }
コード例 #2
0
    void GoodNote(TouchSectorType type)
    {
        // good count
        good++;

        // combo
        combo++;
        Combo();

        // max combo
        if (combo > maxCombo)
        {
            maxCombo = combo;
            MaxCombo();
        }

        // score
        score += Defines.Default_NoteToScore * multiply;
        Score();

        // multiply
        int mf = 1;

        for (int i = 1; i < Defines.Multiply_SectorCount - 1; i++)
        {
            if (combo >= multiplyComboCounts[i] &&
                combo < multiplyComboCounts[i + 1])
            {
                mf = i * 2;
            }
        }

        if (mf > multiply)
        {
            multiply = mf;
            Multiply();
        }
    }