Exemplo n.º 1
0
    //表演後
    private void DoAfterPerformance1(Pfm1CallBackFunc callBackFunc = null)
    {
        _pfm1CallBackFunc = null;
        _pfm1CallBackFunc = callBackFunc;

        Debug.Log("DoAfterPerformance1");

        if(_pfm1CallBackFunc != null)
        {
            _pfm1CallBackFunc();
        }
    }
Exemplo n.º 2
0
    // 表演前
    private void DoBeforePerformance1(Pfm1CallBackFunc callBackFunc = null)
    {
        _pfm1CallBackFunc = null;
        _pfm1CallBackFunc = callBackFunc;

        /*
        HelpInfo
        成績資訊(int[0]:藍色, int[1]:綠色, int[2]:紫色, int[3]:紅色)
        位置(0:左上,1:右上,2:左下,3:右下)
        */
        // 隱藏所有頭像組
        for (byte posTag = 0; posTag < Sct_DEFCONST.LAVA_AMOUNT_MAX; posTag++)
        {
            SettingUI(posTag,false);
        }

        lavaIdOnPos.Clear();
        lavaGetRoseAmount.Clear();
        //設定顯示頭像和記錄資料
        for (int lavaTag = 0; lavaTag < Sct_DEFCONST.LAVA_AMOUNT_MAX; lavaTag++)
        {
            bool joinGame = isJoinGame[lavaTag];

            if(joinGame)//有加入遊戲
            {
                int posID = lavaPos[lavaTag];//位置ID
                SettingUI(posID,true);
                int lavaId = lavaTag+1;
                string caterpillarNamePrefix = string.Format("Png_Score_Caterpillar0{0}-",lavaId);
                string caterpillarBody = string.Format("Png_Score_CaterpillarBody-0{0}",lavaId);
                string roseCloundNamePrefix = string.Format("Png_Score_Rose_");

                SettingLavaUI(posID,caterpillarNamePrefix,caterpillarBody,roseCloundNamePrefix);
                SettingRoseNumber(posID,"0","0");

                lavaIdOnPos.Add(posID,lavaTag);//記錄位置ID 對應的 蟲蟲ID
                lavaGetRoseAmount.Add(lavaTag,0);//初始化累積玫瑰數量
            }
        }

        if(_pfm1CallBackFunc != null)
        {
            _pfm1CallBackFunc();
        }
    }
Exemplo n.º 3
0
    //表演
    private IEnumerator DoPerformance1(Pfm1CallBackFunc callBackFunc = null)
    {
        _pfm1CallBackFunc = null;
        _pfm1CallBackFunc = callBackFunc;

        int allRoseAmount = roseNum[0] + roseNum[1] + roseNum[2] + roseNum[3];//要送出多少次玫瑰花
        int giveAmount = 0;//已經送出的數量
        while(giveAmount < allRoseAmount)
        {
            //要送的位置
            posID++;
            if(posID > Sct_DEFCONST.LAVA_AMOUNT_MAX-1)posID = 0;
            //判斷這個位置有沒有蟲
            if(lavaIdOnPos.ContainsKey(posID) == false) continue;

            //判斷這隻蟲蟲是否已經拿完了
            int lavaID = lavaIdOnPos[posID];
            if(lavaGetRoseAmount.ContainsKey(lavaID) == false)
            {
                Debug.LogError("Error: lavaID is not exist in lavaGetRoseAmount!");
                break;
            }
            if(lavaGetRoseAmount[lavaID] >= roseNum[lavaID])continue;

            SettingRoseMoveEndPos(posID);//設定玫瑰花移動的終點
            yield return new WaitForSeconds(0.1f);
            _bushAni.Reset();
            _roseTweenControl.PlayMoveAni(DoLavaInfoAni);
            yield return new WaitForSeconds(0.1f);

            lavaGetRoseAmount[lavaID]++;
            giveAmount++;
            //string info = string.Format("allRoseAmount{0},GiveAmount:{1},posID{2}",allRoseAmount,giveAmount,posID);
            //Debug.Log(info);
        }
        yield return new WaitForSeconds(1.0f);

        if(_pfm1CallBackFunc != null)
        {
            _pfm1CallBackFunc();
        }
    }