Beispiel #1
0
    // 시작시 도구들을 셋팅한다.
    void ToolSetting()
    {
        int recipeId = 0;

        switch (GameManager.instance.IngameType)
        {
        case IngameType.스토리:
            recipeId = StageChart.instance.GetStageChartInfo(GameManager.instance.currentStageId).RecipeId;
            break;

        case IngameType.랭킹:
            recipeId = GameManager.instance.recipeId;
            break;

        case IngameType.캐릭터승급:
            recipeId = StageChart.instance.GetStageChartInfo(GameManager.instance.currentStageId).RecipeId;
            break;
        }
        RecipeChartInfo recipeChartInfo = RecipeChart.instance.GetRecipeChartInfo(recipeId);
        List <int>      toolList        = new List <int>();

        toolList.Add(recipeChartInfo.FirstToolId);
        toolList.Add(recipeChartInfo.SecondToolId);
        toolList.Add(recipeChartInfo.ThirdToolId);
        toolList.Add(recipeChartInfo.FourthToolId);

        for (int i = 0; i < pannel.childCount; i++)
        {
            Destroy(pannel.GetChild(i).gameObject);
        }

        for (int i = 0; i < toolList.Count; i++)
        {
            ToolChartInfo toolChartInfo = ToolChart.instance.GetToolChartInfo(toolList[i]);

            if (toolChartInfo != null)
            {
                GameObject toolPrepab = ToolChart.instance.GetToolChartInfo(toolList[i]).Prefab;
                toolPrepab = Instantiate(toolPrepab, Vector3.zero, Quaternion.identity, pannel);

                int[] materialList = new int[0];
                float coolTime     = 0;
                int   finishFoodId = 0;

                switch (i)
                {
                case 0:
                    materialList = recipeChartInfo.FirstMaterialId;
                    coolTime     = recipeChartInfo.FirstToolCoolTime;
                    finishFoodId = recipeChartInfo.FirstFinishFoodId;
                    break;

                case 1:
                    materialList = recipeChartInfo.SecondMaterialId;
                    coolTime     = recipeChartInfo.SecondToolCoolTime;
                    finishFoodId = recipeChartInfo.SecondFinishFoodId;
                    break;

                case 2:
                    materialList = recipeChartInfo.ThirdMaterialId;
                    coolTime     = recipeChartInfo.ThirdToolCoolTime;
                    finishFoodId = recipeChartInfo.ThirdFinishFoodId;
                    break;

                case 3:
                    materialList = recipeChartInfo.FourthMaterialId;
                    coolTime     = recipeChartInfo.FourthToolCoolTime;
                    finishFoodId = recipeChartInfo.FourthFinishFoodId;
                    break;
                }

                toolPrepab.GetComponent <Tool>().SetTool(i, toolList[i], materialList, coolTime, finishFoodId);
            }
        }
    }
Beispiel #2
0
    public void LoadChart(System.Action loadAction)
    {
        BackendAsyncClass.BackendAsync(Backend.Chart.GetChartContents, field, (backendCallback) => {
            JsonData jsonData = backendCallback.GetReturnValuetoJSON()["rows"];
            recipeChartInfos  = new RecipeChartInfo[jsonData.Count];

            for (int i = 0; i < jsonData.Count; i++)
            {
                recipeChartInfos[i] = new RecipeChartInfo();
                JsonData rowData    = jsonData[i];
                if (rowData["RecipeId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].RecipeId = int.Parse(rowData["RecipeId"]["S"].ToString());
                }

                string[] tempMaterialId = rowData["MaterialId"]["S"].ToString().Split('-');
                if (rowData["MaterialId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].MaterialId = new int[tempMaterialId.Length];
                }
                for (int j = 0; j < recipeChartInfos[i].MaterialId.Length; j++)
                {
                    recipeChartInfos[i].MaterialId[j] = int.Parse(tempMaterialId[j]);
                }

                if (rowData["FirstToolId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FirstToolId = int.Parse(rowData["FirstToolId"]["S"].ToString());
                }

                if (rowData["FirstToolCoolTime"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FirstToolCoolTime = float.Parse(rowData["FirstToolCoolTime"]["S"].ToString());
                }

                string[] tempFirstMaterialId = rowData["FirstMaterialId"]["S"].ToString().Split('-');
                if (rowData["FirstMaterialId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FirstMaterialId = new int[tempFirstMaterialId.Length];
                }
                for (int j = 0; j < recipeChartInfos[i].FirstMaterialId.Length; j++)
                {
                    recipeChartInfos[i].FirstMaterialId[j] = int.Parse(tempFirstMaterialId[j]);
                }

                if (rowData["FirstFinishFoodId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FirstFinishFoodId = int.Parse(rowData["FirstFinishFoodId"]["S"].ToString());
                }

                if (rowData["SecondToolId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].SecondToolId = int.Parse(rowData["SecondToolId"]["S"].ToString());
                }

                if (rowData["SecondToolCoolTime"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].SecondToolCoolTime = float.Parse(rowData["SecondToolCoolTime"]["S"].ToString());
                }

                string[] tempSecondMaterialId = rowData["SecondMaterialId"]["S"].ToString().Split('-');
                if (rowData["SecondMaterialId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].SecondMaterialId = new int[tempSecondMaterialId.Length];
                }
                for (int j = 0; j < recipeChartInfos[i].SecondMaterialId.Length; j++)
                {
                    recipeChartInfos[i].SecondMaterialId[j] = int.Parse(tempSecondMaterialId[j]);
                }

                if (rowData["SecondFinishFoodId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].SecondFinishFoodId = int.Parse(rowData["SecondFinishFoodId"]["S"].ToString());
                }

                if (rowData["ThirdToolId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].ThirdToolId = int.Parse(rowData["ThirdToolId"]["S"].ToString());
                }
                if (rowData["ThirdToolCoolTime"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].ThirdToolCoolTime = float.Parse(rowData["ThirdToolCoolTime"]["S"].ToString());
                }


                string[] tempThirdMaterialId = rowData["ThirdMaterialId"]["S"].ToString().Split('-');
                if (rowData["ThirdMaterialId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].ThirdMaterialId = new int[tempThirdMaterialId.Length];
                }
                for (int j = 0; j < recipeChartInfos[i].ThirdMaterialId.Length; j++)
                {
                    recipeChartInfos[i].ThirdMaterialId[j] = int.Parse(tempThirdMaterialId[j]);
                }

                if (rowData["ThirdFinishFoodId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].ThirdFinishFoodId = int.Parse(rowData["ThirdFinishFoodId"]["S"].ToString());
                }

                if (rowData["FourthToolId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FourthToolId = int.Parse(rowData["FourthToolId"]["S"].ToString());
                }
                if (rowData["FourthToolCoolTime"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FourthToolCoolTime = float.Parse(rowData["FourthToolCoolTime"]["S"].ToString());
                }
                string[] tempFourthMaterialId = rowData["FourthMaterialId"]["S"].ToString().Split('-');
                if (rowData["FourthMaterialId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FourthMaterialId = new int[tempFourthMaterialId.Length];
                }
                for (int j = 0; j < recipeChartInfos[i].FourthMaterialId.Length; j++)
                {
                    recipeChartInfos[i].FourthMaterialId[j] = int.Parse(tempFourthMaterialId[j]);
                }

                if (rowData["FourthFinishFoodId"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].FourthFinishFoodId = int.Parse(rowData["FourthFinishFoodId"]["S"].ToString());
                }

                if (rowData["LastFood"]["S"].ToString() != "null")
                {
                    recipeChartInfos[i].LastFood = int.Parse(rowData["LastFood"]["S"].ToString());
                }
            }
            if (loadAction != null)
            {
                loadAction();
            }
        });
    }