예제 #1
0
        protected bool CheckUnderDamageEffectCondition(Condition conditionData, ConditionMessage message)
        {
            if (!(message is UnderDamageEffectConditionMessage))
            {
                return(false);
            }
            UnderDamageEffectConditionMessage underDamageEffectConditionMessage = message as UnderDamageEffectConditionMessage;

            return(this.CheckConditionExtraInspection(conditionData, underDamageEffectConditionMessage.caster, underDamageEffectConditionMessage.announcer) && (conditionData.effectIdList.get_Count() == 0 || conditionData.effectIdList.Contains(underDamageEffectConditionMessage.effectID)));
        }
예제 #2
0
    public static void Announce(EntityParent announcer, EntityParent caster, int effectID)
    {
        UnderDamageEffectConditionMessage underDamageEffectConditionMessage = new UnderDamageEffectConditionMessage();

        underDamageEffectConditionMessage.type      = UnderDamageEffectAnnouncer.type;
        underDamageEffectConditionMessage.announcer = announcer;
        underDamageEffectConditionMessage.caster    = caster;
        underDamageEffectConditionMessage.effectID  = effectID;
        EventDispatcher.Broadcast <ConditionMessage>(ConditionManagerEvent.CheckCondition, underDamageEffectConditionMessage);
    }