//料理の効果 public IEnumerator DishEffect(int cardID, bool isStrong, int damageCal, bool isAttacker) { messageController.messagePanel.SetActive(true); messageController.ChangeMessageColor(isAttacker); this.isStrong = isStrong; this.damageCal = damageCal; this.isAttacker = isAttacker; effectMessage = null; if (isAttacker) { attacker = player[0]; defender = player[1]; attackerName = gameManager.playerName[0]; defenderName = gameManager.playerName[1]; } else { attacker = player[1]; defender = player[0]; attackerName = gameManager.playerName[1]; defenderName = gameManager.playerName[0]; } if (cardID == 0) { messageController.EatMessage(gameManager.eatCardController[attacker.playerIndex].model, isAttacker); yield return(new WaitForSeconds(2f)); } //攻撃できなくても効果が出るもの switch (cardID) { case 0: RandomEffect(); break; case 1: GamblingAttack(); break; case 2: RandomDamage(); break; case 3: EnemyCostBonus(); break; case 4: MyConditionBonus(); break; case 5: TurnCountBonus(); break; case 6: ThrowEnemyRare(); break; case 7: IncreaseMyRare(); break; case 8: StealEnemyRare(); break; case 9: HealHp(); break; case 10: DamageHealHp(); break; case 11: HealCondition(); break; case 12: DishAttack(); break; case 13: ConditionAttack(); break; case 14: BadIngredientAttack(); break; case 15: StealEnemyCost(); break; case 16: IncreaseMyCost(); break; case 17: ReduceEnemyCost(); break; case 18: Clumsy(); break; case 19: Dark(); break; case 20: Poison(); break; case 21: ReduceDamage(); break; case 22: DamageCounter(); break; case 23: InvalidateEffect(); break; case 24: WeakenIngredient("赤食材"); break; case 25: WeakenIngredient("黄食材"); break; case 26: WeakenIngredient("緑食材"); break; default: Debug.Log("料理範囲外"); break; } if (effectMessage != null) { messageController.EffectMessage(effectMessage); effectMessage = null; yield return(new WaitForSeconds(2f)); } //ランダム if (cardID == 0) { gameManager.eatCardController[attacker.playerIndex].model.cardID = randomCardID; randomCardID = -1; if (isAttacker || gameManager.single) { gameManager.DamageCalculation(); } } else { gameManager.CheckStatus(); } }