These are the functions which can be called on a DamageSourceData object. bypassesArmor: Arguments: boolean Usage: true/false Notes: Sets if the damage source bypasses armor. getSourceData: Notes: Returns the EntityData object for the source entity (This would be for the player/skeleton/etc.) so functions can be called on it. isFire: Arguments: boolean Usage: true/false Notes: Sets if the damage source is fire. bypassesMagic: Arguments: boolean Usage: true/false Notes: Sets if the damage source bypasses magic. isMagic: Arguments: boolean Usage: true/false Notes: Sets if the damage source is magic. isExplosion: Arguments: boolean Usage: true/false Notes: Sets if the damage source is an explosion. isProjectile: Arguments: boolean Usage: true/false Notes: Sets if the damage source is a projectile. getImmediateSourceData: Notes: Returns the EntityData object for the immediate source entity (This would be for things like projectiles.) so functions can be called on it. bypassesInvulnerability: Arguments: boolean Usage: true/false Notes: Sets if the damage source bypasses invulerability.