private static void CastBOSS2_3(Skill s, GameMode game) { SkillCaster.CastToVoid(s); BoomDeBUFF debuff = new BoomDeBUFF(s.skillName, s.Caster, 10f, s.Power); if (game.TeamDic[TeamDuty.MeleeDPS].Count > 0) { List <Character> list = game.TeamDic[TeamDuty.MeleeDPS]; list[UnityEngine.Random.Range(0, list.Count - 1)].Buffs.Add(debuff); } else if (game.TeamDic[TeamDuty.Tank].Count > 0) { List <Character> list = game.TeamDic[TeamDuty.Tank]; list[UnityEngine.Random.Range(0, list.Count - 1)].Buffs.Add(debuff); } debuff = new BoomDeBUFF(s.skillName, s.Caster, 10f, s.Power); if (game.TeamDic[TeamDuty.RangeDPS].Count > 0) { List <Character> list = game.TeamDic[TeamDuty.RangeDPS]; list[UnityEngine.Random.Range(0, list.Count - 1)].Buffs.Add(debuff); } else if (game.TeamDic[TeamDuty.Healer].Count > 0) { List <Character> list = game.TeamDic[TeamDuty.Healer]; list[UnityEngine.Random.Range(0, list.Count - 1)].Buffs.Add(debuff); } }
/// <summary> /// 神圣之光,直接治疗并添加一个HOT 持续治疗 /// </summary> private static void CastHolyLight(Skill s, GameMode game) { SkillCaster.CastSingleSkill(s, game.FocusCharacter); HotBuff buff = new HotBuff(s.Caster, 18f, 3f, 100); game.FocusCharacter.Buffs.Add(buff); }
private static void CastShield(Skill s, GameMode game) { SkillCaster.CastToVoid(s); ShieldBUFF buff = new ShieldBUFF(s.Caster, 10f, s.Power); game.FocusCharacter.Buffs.Add(buff); }
private static void CastTeamBuff(Skill s, GameMode game) { SkillCaster.CastToVoid(s); foreach (Character v in game.TeamCharacters) { PTeamBuff buff = new PTeamBuff(s.Caster); v.Buffs.Add(buff); } }
private void CastSkill3(Skill s) { List <Character> list = new List <Character>(); foreach (var c in game.TeamCharacters) { if (c.CanHit(0f)) { list.Add(c); } } SkillCaster.CastAOESkill(s, list); }
/// <summary> /// 随机向团队发射,命中取决于闪避 /// </summary> /// <param name="s"></param> /// <param name="game"></param> private static void CastToTeamRandom2(Skill s, GameMode game) { List <Character> list = new List <Character>(); foreach (Character c in game.TeamCharacters) { if (c.IsAlive) { list.Add(c); } } //取随机两次 List <Character> re = new List <Character>(); int index = UnityEngine.Random.Range(0, list.Count - 1); re.Add(list[index]); list.RemoveAt(index); index = UnityEngine.Random.Range(0, list.Count - 1); re.Add(list[index]); SkillCaster.CastMultiSkill(s, re); }
private void CastSkill2(Skill s) { SkillCaster.CastSingleSkill(s, GetTank()); }
private void CastSkill1(Skill s) { SkillCaster.CastAOESkill(s, game.TeamCharacters); }
private static void CastToFocus(Skill s, GameMode game) { SkillCaster.CastSingleSkill(s, game.FocusCharacter); }
private static void CastToTank(Skill s, GameMode game) { SkillCaster.CastSingleSkill(s, GetTank(game)); }
private static void CastToBoss(Skill s, GameMode game) { SkillCaster.CastSingleSkill(s, game.Boss); }
private static void CastToTeam(Skill s, GameMode game) { SkillCaster.CastMultiSkill(s, game.TeamAlive); }
public override void OnRemove() { SkillCaster.CastSingleSkill(skill, Target); }