Esempio n. 1
0
    public void ClearAllDanmu(bool getScore)
    {
        for (int i = state.Danmus.Count - 1; i >= 0; i--)
        {
            Danmu danmu = state.Danmus[i];
            danmu.OnDestroy();
            state.Danmus.Remove(danmu);
            mUICtrl.ShowDanmuEffect(danmu.transform.position);
            if (danmu.isBad)
            {
                GainScore(-2);
            }
            else
            {
                GainScore(1);
            }
        }

        for (int i = state.SuperDanmus.Count - 1; i >= 0; i--)
        {
            if (state.SuperDanmus[i].HasDisapeared)
            {
                continue;
            }
            state.SuperDanmus[i].Disappear();
        }
        state.SuperDanmus.Clear();
        mUICtrl.ClearSuperDanmu();
    }
Esempio n. 2
0
    public void DestroyBadRandomly(int num)
    {
        List <Danmu> toClean = randomPickBadDanmu(num);

        for (int i = 0; i < toClean.Count; i++)
        {
            Danmu danmu = toClean[i];
            danmu.OnDestroy();
            state.Danmus.Remove(danmu);
            GainScore(10);
        }
    }
Esempio n. 3
0
 public void DestroyDanmu(Danmu danmu)
 {
     if (!danmu.isBad)
     {
         GainScore(danmu.isBig ? 3 : 1);
         danmu.view.Content.color        = Color.gray;
         danmu.view.Hengfu.raycastTarget = false;
         mUICtrl.ShowDanmuEffect(danmu.transform.position);
     }
     else
     {
         danmu.OnDestroy();
         state.Danmus.Remove(danmu);
     }
 }