Hi Marky,
Good job on developing your own solution. What is the difference betweem your solution and Rick’s? Do you see anything that could cause a problem in the future?
Generally, unless I know of a potential problem, I would not worry if your solution will still work in the future. Why? When you were able to write your solution, you will probably also be able to adjust it.
Furthermore, we try to follow the single responsibility principle, which is one of the main principles of object-oriented programming. This means that we try to make our “modules” not to depends on too many things.
When Rick instantiates an attacker in his code, he does not check a dozen conditions and does not rely on the existence of any external objects. He instantiates it. Done. Next problem.
If your solution does not do anything else but instantiating an attacker at the expected position, your solution should be fine. Our defenders will check if there are any attackers in their lane, not what algorithm placed them in the scene.
With this in mind, what do you think about your solution?