예제 #1
0
    public string GetMatrixBenefit(int i) //コードからステータス獲得し、その後のためにstringを返す。
    {
        string ReString = "Error";
        int    code     = GetNumInMatrixCode(i); //コードを値に変換

        sdReader.SetMatrixIsOpenTrue(i);         //マトリックスをオープンに

        int front = (int)(code / 1000);
        int rear  = code % 1000;

        if (1 <= front && front <= 6) //ステータスアップ系
        {
            switch (front)
            {
            case 1:
                sdReader.SetHP(rear);
                ReString = "HP+" + rear.ToString();
                break;

            case 2:
                sdReader.SetPOWER(rear);
                ReString = "力+" + rear.ToString();
                break;

            case 3:
                sdReader.SetMAJICPOWER(rear);
                ReString = "魔力+" + rear.ToString();
                break;

            case 4:
                sdReader.SetSPRECOVER(rear);
                ReString = "魔素回復力+" + rear.ToString();
                break;

            case 5:
                sdReader.SetSP(rear);
                ReString = "魔素+" + rear.ToString();
                break;

            case 6:
                sdReader.SetDEFENCE(rear);
                ReString = "防御力+" + rear.ToString();
                break;
            }
        }
        else if (front == 7)//コマンド系
        {
            sdReader.SetHaveCommandTrue(code % 1000);
            ReString = "技\n" + aReader.GetAbilityName(rear);
        }
        else if (front == 8)//コマンド枠増加
        {
            if (rear == 999)
            {
                sdReader.SetCommandNumPlus(1); //一こ増やす
            }
            ReString = "コマンド装備枠+" + 1;
        }
        else if (front == 9)//隠しステージ
        {
            if (rear == 999)
            {
                sdReader.SetHideQuestNum(1); //0隠しクエスト解放
                ReString = "隠しステージ";
            }
            else if (rear == 000)
            {
                ReString = "残念!はずれ";
            }
        }
        return(ReString);
    }