ACR_Traps.TrapTrigger.FitsTrapTargetRestriction C# (CSharp) Method

FitsTrapTargetRestriction() public static method

public static FitsTrapTargetRestriction ( CLRScriptBase s, ALFA trap, uint target ) : bool
s CLRScriptFramework.CLRScriptBase
trap ALFA
target uint
return bool
        public static bool FitsTrapTargetRestriction(CLRScriptBase s, ALFA.Shared.ActiveTrap trap, uint target)
        {
            if (s.GetIsDead(target, FALSE) == TRUE)
            {
                return false;
            }
            if (trap.TargetAlignment != ALIGNMENT_ALL)
            {
                if ((trap.TargetAlignment == ALIGNMENT_CHAOTIC ||
                    trap.TargetAlignment == ALIGNMENT_LAWFUL ||
                    trap.TargetAlignment == ALIGNMENT_NEUTRAL) &&
                    s.GetAlignmentLawChaos(target) != trap.TargetAlignment)
                {
                    return false;
                }
                if ((trap.TargetAlignment == ALIGNMENT_GOOD ||
                    trap.TargetAlignment == ALIGNMENT_EVIL ||
                    trap.TargetAlignment == ALIGNMENT_NEUTRAL) &&
                    s.GetAlignmentGoodEvil(target) != trap.TargetAlignment)
                {
                    return false;
                }
            }
            if (trap.TargetRace != RACIAL_TYPE_ALL)
            {
                if (trap.TargetRace != s.GetRacialType(target))
                {
                    return false;
                }
            }
            return true;
        }
    }