I've double-checked this; the onhit gets called if I remove the proximity explosion, but does not get called when I add it back in. Presumably it has something to do with the projectile exploding without touching anything- the damage applied by the flak AoE returns null if you try to get its projectile ID or source weapon.
.wpn file, in case I'm smoking something (the script is just some extra damage and graphical effects, nothing terribly fancy):
Spoiler
{
"id":"apex_flak_shot",
"specClass":"projectile",
"spawnType":"BALLISTIC",
"collisionClass":"PROJECTILE_FF",
"collisionClassByFighter":"PROJECTILE_FIGHTER",
"onHitEffect":"data.weapons.proj.ApexQGOnHit",
"length":35.0,
#"length":0,
"hitGlowRadius":10,
"width":6.5,
"fadeTime":0.2,
"fringeColor":[255,245,175,200],
"coreColor":[255,250,225,200],
#"fringeColor":[255,50,50,0],
#"coreColor":[255,255,200,0],
"textureScrollSpeed":64.0,
"pixelsPerTexel":5.0,
"bulletSprite":"graphics/missiles/shell_large_blue.png",
#"bulletSprite":"",
"behaviorSpec":{"behavior":"PROXIMITY_FUSE",
"range":35,
#"vsMissileRange":100,
"explosionSpec":{"duration":0.1f,
"radius":50,
"coreRadius":35, # full damage within core radius - also equal to proximity fuse range
"collisionClass":PROJECTILE_FF,
"collisionClassByFighter":PROJECTILE_FIGHTER,
"particleSizeMin":3.0,
"particleSizeRange":3.0,
"particleDuration":1,
"particleCount":100,
"particleColor":[255,245,175,255],
"sound":"explosion_flak"},
}
}
Also, do CombatEngineAPI's applyDamage(), spawnDamagingExplosion(), and spawnEmpArc() methods automatically do Targeting Analysis's bonus damage vs different ship sizes? Or do I need to add that in myself?