コード例 #1
0
        public static bool HasValidWeapon(Pawn pawn)
        {
            var primaryWeaponVerb = FireProperties.GetEquippedWeaponVerb(pawn);

            if (primaryWeaponVerb?.verbProps?.defaultProjectile?.projectile == null)
            {
                return(false);
            }

            if (primaryWeaponVerb.verbProps.defaultProjectile.projectile.explosionRadius > 0.2f)
            {
                // Can't handle explosive projectiles yet
                return(false);
            }

            // TODO check if projectile is flyOverhead

            return(true);
        }
コード例 #2
0
        public static float GetEquippedWeaponRange(Pawn pawn)
        {
            var primaryWeaponVerb = FireProperties.GetEquippedWeaponVerb(pawn);

            return(primaryWeaponVerb?.verbProps.range ?? 0);
        }