What are the difference between “does implement interface” and “actor has tag”? What are the cons and pros between them?
Tags on Actors are just quite simply labels to help you identify them. There are no pros or cons about using Actor Tags in relation to Interfaces except for the situation where all your attempting to do is identify an Actor and nothing else (I would use a Tag in that case).
Interfaces are like a contract, when you add one to an Actor or Class you are saying that it has the ability to perform the functions expressed by that Interface. They are used in a vastly different capacity to Actor Tags. Though when you think about it, you can use Interfaces like Tags, albeit with a much larger overhead than that of simply adding an Tag to an Actor.
I suggest you find some reading material on what Interfaces are, as they are a powerful tool.
I asked this because regarding to “TwinShooter” Tutorial. He used both codes to define who can take the damage.