Damage Type and Armor Type system

I’m working on a tower defense game, and as I was starting on the damage system I quickly became a little lost. I want to be able to assign an armor type to enemies running through, with each armor taking less or more damage from certain damage types. What would be the best way to go about this? I was thinking of creating an enumeration for armor and damage types, but then I got lost when deciding where to put the logic for everything. Should I create an actor component for each damage type, then have them all include logic for when to increase or decrease damage depending on the armor type set for whichever unit it’s attacking?

On Recive Damage → Check if you have resistance against Damage Type → Decrease Damage and Apply to Character.

Thanks for the help, I got it to work. In case anyone finds this and needs help, I created a damage type blueprint for each damage type I’ll be using. I made an enumeration that includes each armor type. Then in a scene component I added the enumeration, with a switch to set a float array that includes the resistance for each damage type. In the blueprint for the units, I created an array that includes all the damage types (make sure they’re in the same order as you set them in the array for your scene component,) then compare it to the array you created in the scene component. It’s working pretty well, here are some screen shots so you can see.