本文整理汇总了C#中SpellCast类的典型用法代码示例。如果您正苦于以下问题:C# SpellCast类的具体用法?C# SpellCast怎么用?C# SpellCast使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SpellCast类属于命名空间,在下文中一共展示了SpellCast类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SummonEffectHandler
public SummonEffectHandler(SpellCast cast, SpellEffect effect)
: base(cast, effect)
{
// MiscValueB:
// 41 -> NonCombat Companion
//
}
示例2: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (!(target is Character))
{
failReason = SpellFailedReason.TargetNotPlayer;
}
}
示例3: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (target.MaxPower == 0 || target.PowerType != (PowerType)m_spellEffect.MiscValue)
{
failReason = SpellFailedReason.BadTargets;
}
}
示例4: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterRef, Unit target, ref SpellFailedReason failReason)
{
var caster = creatingCast.CasterReference.Object as Unit;
if (caster == null)
{
failReason = SpellFailedReason.BadTargets;
}
else
{
if (caster.Charm != null)
{
failReason = SpellFailedReason.AlreadyHaveCharm;
}
else if (target.HasMaster)
{
failReason = SpellFailedReason.CantDoThatRightNow;
}
else if (caster.HasMaster)
{
failReason = SpellFailedReason.Possessed;
}
else if (caster is Character)
{
if (((Character)caster).ActivePet != null)
{
failReason = SpellFailedReason.AlreadyHaveSummon;
}
}
}
}
示例5: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterRef, Unit target, ref SpellFailedReason failReason)
{
if (!(target is NPC))
{
failReason = SpellFailedReason.BadTargets;
}
if (casterRef != null && casterRef.Object is Unit)
{
var caster = (Unit)casterRef.Object;
//if (target.Target == caster)
//{
// failReason = SpellFailedReason.NoValidTargets;
//}
//else
{
var spell = m_aura.Spell;
var hasSingleFriendTarget = spell.HasBeneficialEffects && !spell.IsAreaSpell && spell.HasTargets;
if (hasSingleFriendTarget && caster.Target != null && caster.IsFriendlyWith(caster.Target))
{
// taunting a friend, means we want to taunt his attackers
// needed for Righteous defense, amongst others
if (target.Target != caster.Target)
{
failReason = SpellFailedReason.NoValidTargets;
}
}
}
}
}
示例6: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
Caster = casterReference.Object as Unit;
if (Caster == null || Caster is Vehicle)
{
log.Warn("Invalid SpellCaster \"{0}\" for Spell: {1}", Caster, SpellEffect.Spell);
failReason = SpellFailedReason.Error;
return;
}
Vehicle = target as Vehicle;
if (Vehicle == null)
{
failReason = SpellFailedReason.BadTargets;
}
else
{
Seat = Vehicle.GetSeatFor(Caster);
if (Seat == null)
{
// must never happen since Vehicle is unclickable when full
failReason = SpellFailedReason.BadTargets;
}
}
}
示例7: Start
// Use this for initialization
void Start()
{
longc = GameObject.Find ("LongCast");
spellcast1 = longc.GetComponent<SpellCast> ();
_sih = GameObject.Find ("Sihir");
mc = _sih.GetComponent<Encolhimento> ();
}
示例8: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (m_spellEffect.TriggerSpell == null)
{
failReason = SpellFailedReason.Error;
log.Warn("Tried to cast Spell \"{0}\" which has invalid TriggerSpellId {1}", m_spellEffect.Spell, m_spellEffect.TriggerSpellId);
}
}
示例9: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (target.Class != ClassId.Hunter)
{
failReason = SpellFailedReason.BadTargets;
return;
}
}
示例10: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (!(target is Character)) return;
var chr = (Character)target;
if (chr.Class != ClassId.Hunter)
{
failReason = SpellFailedReason.BadTargets;
}
}
示例11: NotImplementedEffect
public NotImplementedEffect(SpellCast cast, SpellEffect effect)
: base(cast, effect)
{
if (cast.Caster is Character)
{
(cast.Caster as Character).SendSystemMessage(
"Spell {0} ({1}) has not implemented Effect {2}. Please report this to the developers",
cast.Spell.Name, cast.Spell.Id, effect.EffectType);
}
}
示例12: Start
// Use this for initialization
void Start()
{
//Os gameobjects a seguir sao inicializados para conseguir componentes de outros scripts utilizando
//as variaveis ja declaradas.
longc = GameObject.Find ("SpellCast");
spellcast1 = longc.GetComponent<SpellCast> ();
GameObject u = GameObject.Find ("UnObj");
un = u.GetComponent<Unlockeds> ();
}
示例13: CheckInitialize
protected internal override void CheckInitialize(SpellCast creatingCast, ObjectReference casterReference, Unit target, ref SpellFailedReason failReason)
{
if (target is Character)
{
var chr = (Character)target;
if (!chr.CanFly)
{
failReason = SpellFailedReason.NotHere;
}
}
}
示例14: Cast
public SpellCast Cast(double crit_chance, double haste, int spell_power, double hit_chance = 0.99, double mana_cost_modifier = 1, double casting_time_modifier = 0)
{
SpellCast result = new SpellCast();
result.IsResisted = r.NextDouble() < hit_chance ? false : true;
result.IsCrit = can_crit && !result.IsResisted && r.NextDouble() < crit_chance ? true : false;
int min = (int)Math.Floor((min_base_dmg + spell_power * spell_power_coeff) * (1 + (result.IsCrit ? crit_bonus_dmg : 0)) * dmg_multiplier);
int max = (int)Math.Ceiling((max_base_dmg + spell_power * spell_power_coeff) * (1 + (result.IsCrit ? crit_bonus_dmg : 0)) * dmg_multiplier);
result.Damage = r.Next(min, max + 1);
result.ManaUsed = result.IsResisted ? 0 : (int)Math.Round(mana_cost * mana_cost_modifier);
result.CastTime = (casting_time - casting_time_modifier) / (1 + haste);
return result;
}
示例15: Start
void Start()
{
//Os gameobjects a seguir sao inicializados para conseguir componentes de outros scripts utilizando
//as variaveis ja declaradas.
GameObject s = GameObject.Find ("SpellCast");
castspell = s.GetComponent<SpellCast> ();
DesoxField = GameObject.Find ("desoxfield");
GameObject h = GameObject.Find ("Sihir");
hp = h.GetComponent<Hpsih> ();
trsihir = GameObject.Find ("Sihir");
GameObject a = GameObject.Find ("Sihir");
SihirSounds = a.GetComponent <SihirSounds> ();
}