// 現在のノーツと攻撃する為のノーツが合っているか見比べる public void MatchAttackRecipe(int nowCost) { // マッチしたか比較する為のノーツレシピを保持する変数 string mathcAttackNotes = "00"; // マッチした場合にレートを一時的に保持する変数 string matchRate = "00"; // 設定したCSVの中身を変数に保持 m_csvDatas = m_csvHolder.CSVDatas; for (int i = 1; i < m_csvDatas.Count; i++) { // i = 行,Data_Column.ATK_NOTES = 列 mathcAttackNotes = m_csvDatas[i][(int)Data_Column.ATK_NOTES]; int attackNum = System.Convert.ToInt32(mathcAttackNotes); if (attackNum != 0) { // 生成されたノーツの番号とCSVのデータを比較 if (m_notesInstance.SearchInstanceNotes() == attackNum) { int nowAbility = System.Convert.ToInt32(m_csvDatas[i][(int)Data_Column.ATK_COST]); if (nowCost >= nowAbility) { // 一致していたレシピが回復でなければ攻撃 if (m_notesInstance.SearchInstanceNotes() != 111111) { // 技の名前をクリーチャーに教える m_pCreature_Script.AbiltyName = m_csvDatas[i][(int)Data_Column.ATK_NAME]; // 技のレートをクリーチャーに教える matchRate = m_csvDatas[i][(int)Data_Column.ATK_RATE]; m_pCreature_Script.Rate = System.Convert.ToInt32(matchRate); } else if (m_notesInstance.SearchInstanceNotes() == 111111) { // 技のレートをクリーチャーに教える matchRate = m_csvDatas[i][(int)Data_Column.ATK_RATE]; m_pCreature_Script.Rate = System.Convert.ToInt32(matchRate); // 回復する m_pCreature_Script.Heal(); } // 技の名前を表示する m_abilityNameUI_Script.DrawStringAttackName(m_csvDatas[i][(int)Data_Column.ATK_NAME], 100); } else { // 技の名前を表示する m_abilityNameUI_Script.DrawStringAttackName("コストが足りません", 100); } // UI の動作 // // コスト消費 m_costUI_Script.CostDawn(System.Convert.ToInt32(m_csvDatas[i][(int)Data_Column.ATK_COST])); // 攻撃指示が完了したフラグ m_attackCompFlag = true; } } } }
// Update is called once per frame void Update() { m_sliderCompnent.value = m_nowValue; m_costText.NowCost = m_nowValue; int minValue = 10; if (m_recoveryFlag != true) { if (m_attackRecipeManegerScrit.csvDatas != null) { if (!m_captureDrum.CaptureMode) { for (int i = 1; i < m_attackRecipeManegerScrit.csvDatas.Count; i++) { if (minValue > int.Parse(m_attackRecipeManegerScrit.csvDatas[i][4])) { minValue = int.Parse(m_attackRecipeManegerScrit.csvDatas[i][4]); } } } else { minValue = 0; } if (m_nowValue < minValue) { m_recoveryFlag = true; } } else { if (m_nowValue <= 0) { m_recoveryFlag = true; } } } if (GageEnd() == true) { m_attackAbilityNameUIScrit.DrawStringAttackName("コスト回復中\n(連打で回復速度UP)", 50); GageRecovery(m_waitTime); } }