Esempio n. 1
0
    // -------------------------------------------------------------------------
    // ColPos_Judge
    // それぞれの床に聞きに行く
    // フィールドにカードが乗っているか否か
    // -------------------------------------------------------------------------
    static bool ColPos_Judge()  // それぞれの床に聞きに行く
    {
        // ないとエラーが出る。原因不明
        GameObject CardField = GameObject.Find("CardField");
        foreach (Transform child in CardField.transform)
        {
            foreach(Transform son in child.transform)
            {
                if(Common.Left(son.name,7) == "ColPos_")
                {
                    FieldCube script = son.GetComponent<FieldCube>();
                    if (script.flg_Put == true)
                        return true;

                }
            }
        }

        return false;
    }
Esempio n. 2
0
    // -------------------------------------------------------------------------
    // ButtonClick_JudgenChange()
    // Judge n Change ボタンクリック処理
    // -------------------------------------------------------------------------
    public void ButtonClick_JudgenChange()
    {
        //flg_operate = false;    // ボタン操作フラグオフ
        Change_JudgenChangeButton(false);
        // 載っているカードの枚数を取得するとして
        // どうやればそれができるのか。
        // それぞれのCardFieldに聞きにいくしかあるまい。
        int cnt = 0;

        // 正解・不正解判定
        cnt = 0; // カウント用
        foreach(Transform child in OBJ_DECK.transform)
        {
            cnt++;
        }
        strArray = new string[cnt];

        for(int i = 0; i < cnt; i++)
        {
            strArray[i] = "";   // 配列の初期化
        }

        // どのカードがどのlsCodeかはこのScriptが持っている。
        // 問題はどれがどのフィールドに置かれているかということ
        // これを取得すればよい。

        foreach(Transform CFChild in OBJ_CARD_FIELD.transform)
        {
            foreach(Transform son in CFChild.transform)
            {
                if(son.name == "ColPos_JH") // 小学生
                {
                    FieldCube script = son.GetComponent<FieldCube>();
                    for ( int i = 0; i< cnt; i++)
                    {
                        if(script.Card_Put(i) == true)
                        {
                            switch (Card_All_str[i])
                            {
                                case "":
                                    strArray[i] = "-";
                                    break;
                                case "JH":
                                    strArray[i] = "正解";
                                    break;
                                default:
                                    strArray[i] = "不正解";
                                    break;
                            }
                        }
                    }
                }
                if (son.name == "ColPos_M") // 小学生
                {
                    FieldCube script = son.GetComponent<FieldCube>();
                    for (int i = 0; i < cnt; i++)
                    {
                        if (script.Card_Put(i) == true)
                        {
                            switch (Card_All_str[i])
                            {
                                case "":
                                    strArray[i] = "-";
                                    break;
                                case "MD":
                                    strArray[i] = "正解";
                                break;
                                default:
                                    strArray[i] = "不正解";
                                break;
                            }
                        }
                    }
                }

            }
        }

        flg_Miss = false; // ミスフラグ初期化

        for (int i = 0; i < cnt; i++)
        {
            if(strArray[i] == "正解" || strArray[i] == "不正解")
            {
                foreach (Transform child in OBJ_DECK.transform)
                {
                    if(child.name == "card_" + i)
                    {
                        // カード操作不能にする
                        CardDrag script = child.GetComponent<CardDrag>();
                        script.flg_EnableMove = false;
                        foreach(Transform son in child.transform)
                        {
                            // 花丸の表示 正解処理
                            if (strArray[i] == "正解" && son.name == "Hanamaru")
                            {
                                if(mode == 13)  // 復習モードなら
                                    CorrectToReview(Card_All_int[i]);    // 正解の問題除外
                                son.GetComponent<Image>().enabled = true;
                                break;
                            }
                            // バツの表示
                            else if 
                            (strArray[i] == "不正解" && son.name == "Batu") 
                            {
                                son.GetComponent<Image>().enabled = true;
                                Card_queue.Enqueue(Card_All_int[i]);
                                WrongToReview(Card_All_int[i]); // 復習に情報追加

                                if (SETTING_DB.CardInclude == true && mode != 13)
                                {  // カード追加用設定がOnなら
                                    flg_Miss = true;    // ミスフラグオン
                                    CardInclude();  // ミス時のカード追加処理
                                }
                                break;
                            }
                        }
                        // helpの表示
                        CardDrag CDScript = child.GetComponent<CardDrag>();
                        CDScript.flg_Help = true; // help表示フラグを更新
                        if(child.name == strDisplayNow) // 現在表示中の問題であったらば
                            CDScript.DisplayText_SC(); // 表示の更新
                    }
                }
            }
        }
        CVS_NEXT_BUTTON.enabled = true;    // NextCardボタン表示
        flg_Put = false;    // カード置きフラグオフ
    }