A system should always either provide something unique or a common idea but very well executed.
For instance a footman dies --> create a random item is not a system.
A system would be A unit dies --> create an item out of an itempool which is linked to the dying unit unittype. The main system code should be not configurable, because it pursues a given goal. On the other side some values should be configurable / dynamic in order to adopt the system to the users needs.
Based of the headline, your idea was to create a response attackanimation to an attack event. Thus your system should provide configurable unique attack animations per unit model (best would be by id). Also a timeout to prevent spaming plus the option to add actions on attack. An animation only, is not interesting in the long run, as it does not influence ingame actions.
Eyecandy is on the one side nice to have, but what really sticks people to a game is ingame mechanics. --> Can I be better than others in certain actions. Is there a learning curve. Such issue provide replayability.
More specific: a unit dies --> create an item. Many spells written in GUI ( Your post is GUI aswell) create tons of units just for missles, or similar spell action. All these missiles will either be removed or die. If they die a random item will be created .... -> ~15 items withing 1 second, depeding on the spell, therefore a filter is defently required here (check for 'Aloc', Locust).
A footman takes damage --> What happens if I'm not using footman, but paladins or a custom model?
This Demo Including Hit Animation Beta
Posting a beta demo is not an option in the spell section. Your resource should be 100% finished from your point of view. This is not an interactive forum section to improve or develop your code.
In other words in your eyes your code should be complete. Users and especially moderators may point out the mistakes you've made.