An Add-on is never limited to a file.
Lets say I release an add-on called "script_jackstuff.cs" with the contents of:
//This code does nothing
Obviously, that code does nothing. However, it still would be on th add-on list. All the add-on list does is provide an array of files that are executed by another script Badspot made.
However, that doesn't explain why you need a scrip that only has an emitter for a datablock. Doesn't the map send the file automatically?