public void ProjectileDataOnCollision(coProjectileData datablock, coProjectile projectile, coShapeBase shapebase, string fad, Point3F pos, string normal)
 {
     // Apply damage to the object all shape base objects
     if (datablock["directDamage"].AsFloat() > 0)
     {
         if ((console.getTypeMask(shapebase) & (uint)SceneObjectTypesAsUint.ShapeBaseObjectType) == (uint)SceneObjectTypesAsUint.ShapeBaseObjectType)
         {
             ShapeBaseDamage(shapebase, projectile.ID, pos, datablock["directDamage"].AsFloat(), datablock["damageType"]);
         }
     }
 }
        public void ProjectileDataOnExplode(coProjectileData data, coProjectile proj, Point3F position, string mod)
        {
            // Damage objects within the projectiles damage radius
            float radius = data["damageRadius"].AsFloat();

            if (radius <= 0)
            {
                return;
            }
            string damageType   = data["damageType"];
            float  areaImpulse  = data["areaImpulse"].AsFloat();
            float  radiusDamage = data["radiusDamage"].AsFloat();

            RadiusDamage((coPlayer)proj.ID, position, radius, radiusDamage, damageType, areaImpulse);
        }