public static void Announce(EntityParent announcer, EntityParent target, int effectID)
    {
        CauseDamageEffectMessage causeDamageEffectMessage = new CauseDamageEffectMessage();

        causeDamageEffectMessage.type      = CauseDamageEffectAnnouncer.type;
        causeDamageEffectMessage.announcer = announcer;
        causeDamageEffectMessage.target    = target;
        causeDamageEffectMessage.effectID  = effectID;
        EventDispatcher.Broadcast <ConditionMessage>(ConditionManagerEvent.CheckCondition, causeDamageEffectMessage);
    }
예제 #2
0
        protected bool CheckCauseDamageEffectCondition(Condition conditionData, ConditionMessage message)
        {
            if (!(message is CauseDamageEffectMessage))
            {
                return(false);
            }
            CauseDamageEffectMessage causeDamageEffectMessage = message as CauseDamageEffectMessage;

            return(this.CheckConditionExtraInspection(conditionData, causeDamageEffectMessage.announcer, causeDamageEffectMessage.target) && (conditionData.effectIdList.get_Count() == 0 || conditionData.effectIdList.Contains(causeDamageEffectMessage.effectID)));
        }