+ overlay = self._vehicle.roach_management_overlay()
+ base = overlay.copy()
+ if self._level_scene is not None:
+ base.fill((0, 0, 0))
+ self._level_scene.draw(Screen(base))
+ else:
+ base.fill((10, 10, 10))
+ base.blit(overlay, (0, 0))
+ frame = self._vehicle.roach_management_frame()
+ if frame is not None:
+ frame = frame.copy()
+ frame.fill((255, 255, 255, 8), None, BLEND_RGBA_MULT)
+ frame_rect = frame.get_rect()
+ base.blit(frame, (
+ VEHICLE_MID_X - frame_rect.w // 2,
+ VEHICLE_MID_Y - frame_rect.h // 2),
+ None, BLEND_RGBA_SUB)
+ self.actors.default.add(SurfActor(base))