You don't need to repeatedly re-show the resource:
- Set the lifetime of the resource to 9999999.
- Add an event handler to the display definition:
onLoad = "nil = _this spawn myMapResourceShown;";
- In the function, myMapResourceShown, the first parameter (_this select 0) is the display (type display, not just the ID) so you can manipulate the map as much as you like with that. Within the function, animate the map within a waitUntil loop.