How would I make a system that handles different enemy AI scripts

I’m making a tower defense game and want to make different enemies/towers have different behaviours/AI

Currently, my system works using OOP to create the enemy/tower that is then placed into a list where it is then put through a loop and actions are done depending on the state of the enemy/tower. The loop is run every 0.1 seconds (the loop and list for enemies are a separate thing to the loop and list for the towers)

The actions I’ve made are all in one module script, basic and can be applied to all enemies/towers so, how would I go about trying to make specific behaviours/AI for specific enemies/towers

I’ve tried just finding the specific module script that corresponds to the current enemy/tower but I don’t know a way to do that without having lines of if statements