In its original form you are creating a new image and not freeing the previous one stored at bat(num). On the other hand your modified copy function does not create a new image. If as you say a resize only happens every five minutes or so of gameplay then it is not going to cause major problems, not straight away anyway.
However the fact that in its original form you are creating a new image and trying to store its handle in the bat array is I fear terribly significant and you still have failed to provide us with one single very important and absolutely vital piece of information... The datatype of the bat array.
However the fact that in its original form you are creating a new image and trying to store its handle in the bat array is I fear terribly significant and you still have failed to provide us with one single very important and absolutely vital piece of information... The datatype of the bat array.