From 39d14dd0ca876c84fbaaa273748d1ad400b4a930 Mon Sep 17 00:00:00 2001 From: Killian <49700375+KillianKirilenko@users.noreply.github.com> Date: Wed, 13 Apr 2022 03:51:04 +0100 Subject: [PATCH] more new/init fixes --- code/_helpers/unsorted.dm | 24 ++++++++----------- code/datums/ghost_query.dm | 8 +++---- .../objects/items/weapons/material/bats.dm | 10 ++++---- code/game/objects/structures/catwalk.dm | 6 +++-- .../objects/structures/ghost_pods/human.dm | 2 +- code/modules/food/food/cans.dm | 4 ++-- .../station/protean_vr/protean_blob.dm | 24 +++++++++---------- 7 files changed, 38 insertions(+), 40 deletions(-) diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index 9d7e9495ab..37da921409 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -1166,18 +1166,16 @@ var/list/WALLITEMS = list( var/color = hex ? hex : "#[num2hex(red, 2)][num2hex(green, 2)][num2hex(blue, 2)]" return "___" + var/mob/dview/dview_mob = new //Version of view() which ignores darkness, because BYOND doesn't have it. /proc/dview(var/range = world.view, var/center, var/invis_flags = 0) if(!center) return - if(!dview_mob) //VOREStation Add: Debugging - dview_mob = new - log_error("Had to recreate the dview mob!") dview_mob.loc = center - + dview_mob.see_invisible = invis_flags . = view(range, dview_mob) @@ -1185,10 +1183,10 @@ var/mob/dview/dview_mob = new /mob/dview invisibility = 101 - density = FALSE + density = 0 - anchored = TRUE - simulated = FALSE + anchored = 1 + simulated = 0 see_in_dark = 1e6 @@ -1197,7 +1195,6 @@ var/mob/dview/dview_mob = new color = origin.color set_light(origin.light_range, origin.light_power, origin.light_color) -INITIALIZE_IMMEDIATE(/mob/dview) /mob/dview/Initialize() . = ..() // We don't want to be in any mob lists; we're a dummy not a mob. @@ -1207,18 +1204,17 @@ INITIALIZE_IMMEDIATE(/mob/dview) else living_mob_list -= src -/mob/dview/Life() - mob_list -= src - dead_mob_list -= src - living_mob_list -= src - /mob/dview/Destroy(var/force) - stack_trace("Attempt to delete the dview_mob: [log_info_line(src)]") + crash_with("Attempt to delete the dview_mob: [log_info_line(src)]") if (!force) return QDEL_HINT_LETMELIVE global.dview_mob = new return ..() +// call to generate a stack trace and print to runtime logs +/proc/crash_with(msg) + CRASH(msg) + /proc/screen_loc2turf(scr_loc, turf/origin) var/tX = splittext(scr_loc, ",") var/tY = splittext(tX[2], ":") diff --git a/code/datums/ghost_query.dm b/code/datums/ghost_query.dm index 6a342f5820..83015e6be1 100644 --- a/code/datums/ghost_query.dm +++ b/code/datums/ghost_query.dm @@ -20,10 +20,10 @@ // Then wait awhile. while(!finished) - sleep(1 SECOND) - wait_time -= 1 SECOND - if(wait_time <= 0) - finished = TRUE + spawn(1 SECOND) + wait_time -= 1 SECOND + if(wait_time <= 0) + finished = TRUE // Prune the list after the wait, incase any candidates logged out. for(var/mob/observer/dead/D as anything in candidates) diff --git a/code/game/objects/items/weapons/material/bats.dm b/code/game/objects/items/weapons/material/bats.dm index 7c4296fb1c..3a9c8419bc 100644 --- a/code/game/objects/items/weapons/material/bats.dm +++ b/code/game/objects/items/weapons/material/bats.dm @@ -14,16 +14,16 @@ //Predefined materials go here. /obj/item/weapon/material/twohanded/baseballbat/metal/Initialize(var/ml) - ..(ml, MAT_STEEL) + . = ..(ml, MAT_STEEL) /obj/item/weapon/material/twohanded/baseballbat/uranium/Initialize(var/ml) - ..(ml, MAT_URANIUM) + . = ..(ml, MAT_URANIUM) /obj/item/weapon/material/twohanded/baseballbat/gold/Initialize(var/ml) - ..(ml, MAT_GOLD) + . = ..(ml, MAT_GOLD) /obj/item/weapon/material/twohanded/baseballbat/platinum/Initialize(var/ml) - ..(ml, MAT_PLATINUM) + . = ..(ml, MAT_PLATINUM) /obj/item/weapon/material/twohanded/baseballbat/diamond/Initialize(var/ml) - ..(ml, MAT_DIAMOND) + . = ..(ml, MAT_DIAMOND) diff --git a/code/game/objects/structures/catwalk.dm b/code/game/objects/structures/catwalk.dm index abd0665898..f1fab238f1 100644 --- a/code/game/objects/structures/catwalk.dm +++ b/code/game/objects/structures/catwalk.dm @@ -19,9 +19,11 @@ /obj/structure/catwalk/Initialize() . = ..() - for(var/obj/structure/catwalk/C in get_turf(src)) + //Delete ourselves if we find extra mapped in catwalks + for(var/obj/structure/catwalk/C in loc) if(C != src) - qdel(C) + log_debug("Duplicate catwalks at [x],[y],[z]") + return INITIALIZE_HINT_QDEL update_connections(1) update_icon() diff --git a/code/game/objects/structures/ghost_pods/human.dm b/code/game/objects/structures/ghost_pods/human.dm index f2b3291597..e26c3d6c02 100644 --- a/code/game/objects/structures/ghost_pods/human.dm +++ b/code/game/objects/structures/ghost_pods/human.dm @@ -38,7 +38,7 @@ clothing_possibilities |= /obj/item/device/radio/headset /obj/structure/ghost_pod/ghost_activated/human/create_occupant(var/mob/M) - ..() + . = ..() var/turf/T = get_turf(src) var/mob/living/carbon/human/H = new(src) diff --git a/code/modules/food/food/cans.dm b/code/modules/food/food/cans.dm index 10a6ebf0c9..9d500d11f1 100644 --- a/code/modules/food/food/cans.dm +++ b/code/modules/food/food/cans.dm @@ -70,8 +70,8 @@ center_of_mass = list("x"=16, "y"=8) /obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb/Initialize() - ..() - reagents.add_reagent("dr_gibb", 30) + . = ..() + reagents.add_reagent("dr_gibb", 30) /obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb_diet name = "\improper Diet Dr. Gibb" diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm index faf6b5f29d..5575d7be12 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm @@ -265,18 +265,18 @@ icon_state = "wake" animate(src,alpha = 255,time = 1 SECOND) plane = MOB_PLANE - sleep(7) - update_icon() - //Potential glob noms - if(can_be_drop_pred) //Toggleable in vore panel - var/list/potentials = living_mobs(0) - if(potentials.len) - var/mob/living/target = pick(potentials) - if(istype(target) && target.devourable && target.can_be_drop_prey && vore_selected) - if(target.buckled) - target.buckled.unbuckle_mob(target, force = TRUE) - target.forceMove(vore_selected) - to_chat(target,"\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!") + spawn(7) + update_icon() + //Potential glob noms + if(can_be_drop_pred) //Toggleable in vore panel + var/list/potentials = living_mobs(0) + if(potentials.len) + var/mob/living/target = pick(potentials) + if(istype(target) && target.devourable && target.can_be_drop_prey && vore_selected) + if(target.buckled) + target.buckled.unbuckle_mob(target, force = TRUE) + target.forceMove(vore_selected) + to_chat(target,"\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!") /mob/living/simple_mob/protean_blob/attack_target(var/atom/A) if(refactory && istype(A,/obj/item/stack/material))