本文整理汇总了C#中DOL.GS.GameNPC.CastSpell方法的典型用法代码示例。如果您正苦于以下问题:C# GameNPC.CastSpell方法的具体用法?C# GameNPC.CastSpell怎么用?C# GameNPC.CastSpell使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DOL.GS.GameNPC
的用法示例。
在下文中一共展示了GameNPC.CastSpell方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LaunchSpell
/// <summary>
/// Method to launch a spell
/// </summary>
/// <param name="spellLevel">The spell level</param>
/// <param name="spellLineName">The spell line</param>
/// <param name="guard">The guard caster</param>
public static void LaunchSpell(int spellLevel, string spellLineName, GameNPC caster)
{
if (caster.TargetObject == null)
return;
Spell castSpell = null;
SpellLine castLine = null;
castLine = SkillBase.GetSpellLine(spellLineName);
List<Spell> spells = SkillBase.GetSpellList(castLine.KeyName);
foreach (Spell spell in spells)
{
if (spell.Level == spellLevel)
{
castSpell = spell;
break;
}
}
if (caster.AttackState)
caster.StopAttack();
if (caster.IsMoving)
caster.StopFollowing();
caster.TurnTo(caster.TargetObject);
caster.CastSpell(castSpell, castLine);
}
示例2: CastHealSpell
/// <summary>
/// Method to cast a heal spell
/// </summary>
/// <param name="guard">The guard object</param>
/// <param name="target">The spell target</param>
public static void CastHealSpell(GameNPC guard, GameLiving target)
{
//decide which healing spell
Spell spell = GetGuardHealSmallSpell((eRealm)guard.Realm);
//cast the healing spell
if (spell != null && !guard.IsStunned && !guard.IsMezzed )
{
guard.StopAttack();
guard.TargetObject = target;
guard.CastSpell(spell, SpellMgr.GuardSpellLine);
}
}