Especially when you begin creating, it’s often easy to think that copying and modifying objects to do the new thing that you’re being asked to do is a good way to go. It’s fast and builds on previous code and concepts, but often can easily result in nasty hacks that obfuscate the purposes of the object (for example if you just copy and paste old comments into the code that apply only to the previous iteration). This makes the code more difficult to maintain in the future.
It’s always important to remember as you copy and modify things, to add refactoring and simplifying into your processes. Often if you do this, you can also improve the original code as well by creating a more generalized system to handle both tasks. This may take a little more time when you are writing the new code, but can save a lot of time in the future!