具体情况看如下代码:targets 数据在循环外初始化。循环内将targets中的数据传递给skillEffect_Algorithm.Apply_SkillEffect脚本中的某个方法。当内循环 a=0时,正常读取到targets的数据。当a=1时,targets的数据的元素变为0个了,请解释下这是什么原因造成的?
if (targetType.Count == 1) //全部技能效果的作用目标相同
{
List<Fight_Character> targets = skillTarget_Algorithm.GetSkiilTargets(fight_Control, self_character, skill_Effects[0].targetType, skill_Effects[0].targetNum); //获取技能效果的作用目标
for (int i = 0; i < targets.Count; i++)//给每个目标依次施加全部技能效果
{
if (skillEffect_Algorithm.AttackIsOK(self_character, targets[i])) //如果普攻成功命中
{
for (int a = 0; a < skill_Effects.Count; a++)
{
skillEffect_Algorithm.Apply_SkillEffect(self_character, targets[i], skill_Effects[a]);
}
}
else
{
print("未命中");
//显示闪避UI
//to do
}
}
}
@ada; 你能帮忙么?