diff --git a/code/__HELPERS/do_after.dm b/code/__HELPERS/do_after.dm index 3ec1aa9b08..5b17ed687c 100644 --- a/code/__HELPERS/do_after.dm +++ b/code/__HELPERS/do_after.dm @@ -121,7 +121,7 @@ break // CLEANUP - qdel(progbar) + progbar.end_progress() // If we failed, just return. if(!.) return FALSE @@ -206,8 +206,9 @@ if((!drifting && user.loc != user_loc) || target.loc != target_loc || (!ignorehelditem && user.get_active_held_item() != holding) || user.incapacitated() || user.lying || (extra_checks && !extra_checks.Invoke())) . = 0 break - if(progress) - qdel(progbar) + + if(!QDELETED(progbar)) + progbar.end_progress() if(!QDELETED(target)) LAZYREMOVE(user.do_afters, target) @@ -296,8 +297,10 @@ if(user.get_active_held_item() != holding) . = 0 break - if(progress) - qdel(progbar) + + if(!QDELETED(progbar)) + progbar.end_progress() + if(!QDELETED(target)) LAZYREMOVE(user.do_afters, target) @@ -351,8 +354,10 @@ if((!drifting && user_loc != user.loc) || QDELETED(target) || originalloc[target] != target.loc || user.get_active_held_item() != holding || user.incapacitated() || user.lying || (extra_checks && !extra_checks.Invoke())) . = 0 break mainloop - if(progbar) - qdel(progbar) + + if(!QDELETED(progbar)) + progbar.end_progress() + for(var/thing in targets) var/atom/target = thing if(!QDELETED(target)) diff --git a/code/datums/components/storage/concrete/rped.dm b/code/datums/components/storage/concrete/rped.dm index 3744e833ac..9d85dc6173 100644 --- a/code/datums/components/storage/concrete/rped.dm +++ b/code/datums/components/storage/concrete/rped.dm @@ -39,7 +39,7 @@ var/datum/progressbar/progress = new(M, length(things), T) while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M))) stoplag(1) - qdel(progress) + progress.end_progress() A.do_squish(0.8, 1.2) /datum/component/storage/concrete/bluespace/rped @@ -83,5 +83,5 @@ var/datum/progressbar/progress = new(M, length(things), T) while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M))) stoplag(1) - qdel(progress) + progress.end_progress() A.do_squish(0.8, 1.2) diff --git a/code/datums/components/storage/storage.dm b/code/datums/components/storage/storage.dm index c291a416fc..00a58a75f8 100644 --- a/code/datums/components/storage/storage.dm +++ b/code/datums/components/storage/storage.dm @@ -215,7 +215,7 @@ var/list/rejections = list() while(do_after(M, 10, TRUE, parent, FALSE, CALLBACK(src, .proc/handle_mass_pickup, things, I.loc, rejections, progress))) stoplag(1) - qdel(progress) + progress.end_progress() to_chat(M, "You put everything you could [insert_preposition] [parent].") A.do_squish(1.4, 0.4) @@ -273,7 +273,7 @@ var/datum/progressbar/progress = new(M, length(things), T) while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M))) stoplag(1) - qdel(progress) + progress.end_progress() A.do_squish(0.8, 1.2) /datum/component/storage/proc/mass_remove_from_storage(atom/target, list/things, datum/progressbar/progress, trigger_on_found = TRUE, mob/user) diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index eda3470a0b..77638d157b 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -69,7 +69,7 @@ ..() /datum/status_effect/vanguard_shield/Destroy() - qdel(progbar) + progbar.end_progress() progbar = null return ..() diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 6f8faad7c3..daa195df25 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -891,7 +891,7 @@ return while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(STR, /datum/component/storage.proc/handle_mass_item_insertion, things, src_object, user, progress))) stoplag(1) - qdel(progress) + progress.end_progress() to_chat(user, "You dump as much of [src_object.parent]'s contents into [STR.insert_preposition]to [src] as you can.") if(user.active_storage) //refresh the HUD to show the transfered contents user.active_storage.ui_show(user) diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 88ca8a0250..dc44ac728f 100755 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -388,7 +388,7 @@ GLOBAL_LIST_EMPTY(station_turfs) var/datum/progressbar/progress = new(user, things.len, src) while (do_after(usr, 1 SECONDS, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage.proc/mass_remove_from_storage, src, things, progress, TRUE, user))) stoplag(1) - qdel(progress) + progress.end_progress() return TRUE diff --git a/code/modules/antagonists/clockcult/clock_scripture.dm b/code/modules/antagonists/clockcult/clock_scripture.dm index 6922c7cd81..feb724dceb 100644 --- a/code/modules/antagonists/clockcult/clock_scripture.dm +++ b/code/modules/antagonists/clockcult/clock_scripture.dm @@ -310,7 +310,7 @@ Judgement 80k power or nine converts var/datum/progressbar/progbar /datum/clockwork_scripture/ranged_ability/Destroy() - qdel(progbar) + progbar.end_progress() return ..() /datum/clockwork_scripture/ranged_ability/scripture_effects() @@ -333,7 +333,7 @@ Judgement 80k power or nine converts (allow_mobility || (can_recite() && T == get_turf(invoker)))) if(progbar) if(slab.slab_ability.in_progress) - qdel(progbar) + progbar.end_progress() else progbar.update(end_time - world.time) stoplag(1) diff --git a/code/modules/vehicles/secway.dm b/code/modules/vehicles/secway.dm index 8ad8b5f1ee..ea0ea2140b 100644 --- a/code/modules/vehicles/secway.dm +++ b/code/modules/vehicles/secway.dm @@ -43,7 +43,8 @@ . = ..(M, force, check_loc) if(.) if(progressbars_by_rider[M]) - qdel(progressbars_by_rider[M]) + var/datum/progressbar/to_delete = progressbars_by_rider[M] + to_delete.end_progress() var/datum/progressbar/D = new(M, chargemax, src) D.update(charge) progressbars_by_rider[M] = D @@ -51,12 +52,14 @@ /obj/vehicle/ridden/secway/unbuckle_mob(mob/living/M, force) . = ..(M, force) if(.) - qdel(progressbars_by_rider[M]) + var/datum/progressbar/to_delete = progressbars_by_rider[M] + to_delete.end_progress() progressbars_by_rider -= M /obj/vehicle/ridden/secway/Destroy() for(var/i in progressbars_by_rider) - qdel(progressbars_by_rider[i]) + var/datum/progressbar/to_delete = progressbars_by_rider[i] + to_delete.end_progress() progressbars_by_rider.Cut() STOP_PROCESSING(SSfastprocess, src) return ..()