So I've updated the entity code to the following:
Code:
new ent = CreateEntityByName("prop_physics_override");
SetEntityModel(ent,mdlMine);
DispatchKeyValue(ent, "StartDisabled", "false");
DispatchSpawn(ent);
TeleportEntity(ent, end, normal, NULL_VECTOR);
SetEntProp(ent, Prop_Send, "m_usSolidFlags", 152);
SetEntProp(ent, Prop_Send, "m_CollisionGroup", 1);
SetEntityMoveType(ent, MOVETYPE_NONE);
// SetEntProp(ent, Prop_Send, "m_MoveCollide", 0);
SetEntProp(ent, Prop_Send, "m_nSolidType", 6);
SetEntPropEnt(ent, Prop_Data, "m_hLastAttacker", client);
DispatchKeyValue(ent, "targetname", beammdl);
DispatchKeyValue(ent, "ExplodeRadius", "256");
DispatchKeyValue(ent, "ExplodeDamage", "400");
Format(tmp, sizeof(tmp), "%s,Break,,0,-1", beammdl);
DispatchKeyValue(ent, "OnHealthChanged", tmp);
Format(tmp, sizeof(tmp), "%s,Kill,,0,-1", beam);
DispatchKeyValue(ent, "OnBreak", tmp);
// SetEntProp(ent, Prop_Send, "m_takedamage", 2);
AcceptEntityInput(ent, "Enable");
HookSingleEntityOutput(ent, "OnBreak", mineBreak, true);
Which now works perfectly! (and is really quite freaking cool). My remaining problem is friendly fire... Because this is a system environment, the explosion does damage indiscriminately (which is a problem!) Is there any way to get an entity explosion to respect the friend fire setting?