Added new DMFlags: "sv_shootthroughallies" and "sv_dontpushallies"
These are two new DMFlags that a lot people have been requesting for a long time. "sv_shootthroughallies" allows a player's attacks, either projectiles or hitscans, to safely pass through their teammates and "sv_dontpushallies" prevents a player's attacks from thrusting their teammates should they hit them, whether directly or indirectly. The latter also covers a player exploding a barrel next to their teammates.
This should help against potential trolling that ruins the game for others, whether one (un)intentionally steps in front of their teammate while they're firing rockets so they end up killing themselves, throwing teammates around with BFG9K tracers or BFG10K projectiles, etc.
Thanks for the patch! The implementation itself looks good, but I think the function name PLAYER_CannotShootOrPushAlly is extremely misleading, as it suggests that it will return true if the player either cannot shoot or cannot push allies, but actually will only check exactly one of these conditions.
Thanks for the updated patch! I added it.