bool ChangeOrCheckPlayer(string impactTarget, string impactContent, PlayerItem playerItem, EffectExeType effectExeType) { bool canExecute = true; switch (impactTarget) { case "Hand": playerItem.DrawCard(Convert.ToInt32(impactContent)); break; //资源上限 case "ManaUpperLimit": playerItem.ChangeManaUpperLimit(Convert.ToInt32(impactContent)); break; case "ManaUsable": if (effectExeType == EffectExeType.Execute) { //恢复至上限使用Max,是不能被转为数字的 if (impactContent == "Max") { playerItem.RestoreToTheUpperLimit(); } else { playerItem.ChangeManaUsable(Convert.ToInt32(impactContent)); } } else if (effectExeType == EffectExeType.Check) { //恢复至上限使用Max,是不能被转为数字的 if (impactContent == "Max") { } else { canExecute = playerItem.CheckCanChangeManaUsable(Convert.ToInt32(impactContent)); } } break; //科技相关 case "TraitAddOne": playerItem.AddTraitType(impactContent); break; case "Score": playerItem.ChangeSocre(Convert.ToInt32(impactContent)); break; case "CanUseResourceNum": if (impactContent == "Max") { // 使用资源牌恢复到最大次数 playerItem.RestoreCanUseResourceNumMax(); } else { } break; } return(canExecute); }