TG sync Sunday (#201)

* stage one

* datums and shit

* game stuff

* modules

* tgstation.dme

* tools

* these things for icons

* compiling fixes

* merge spree on TG

* other updates

* updated maps with deepfryers

* My helpers were not helping
This commit is contained in:
Poojawa
2017-02-06 00:36:56 -06:00
committed by GitHub
parent aeeca195c7
commit 73b6b33f79
279 changed files with 3548 additions and 2585 deletions
+1 -1
View File
@@ -264,7 +264,7 @@ list(name = "- Carbon Dioxide", desc = " This informational poster teaches the v
playsound(D.loc, 'sound/items/poster_being_created.ogg', 100, 1)
if(do_after(user,D.placespeed,target=src))
if(!D || qdeleted(D))
if(!D || QDELETED(D))
return
if(iswallturf(src) && user && user.loc == temp_loc) //Let's check if everything is still there
+1 -1
View File
@@ -42,7 +42,7 @@
return
/obj/effect/countdown/process()
if(!attached_to || qdeleted(attached_to))
if(!attached_to || QDELETED(attached_to))
qdel(src)
forceMove(get_turf(attached_to))
var/new_val = get_value()
+4
View File
@@ -42,3 +42,7 @@
/obj/effect/experience_pressure_difference()
return
/obj/effect/singularity_act()
qdel(src)
return 0
+6 -5
View File
@@ -258,10 +258,11 @@
/obj/effect/overlay/temp/ratvar/door
icon_state = "ratvardoorglow"
layer = CLOSED_FIREDOOR_LAYER //above closed doors
layer = CLOSED_DOOR_LAYER //above closed doors
/obj/effect/overlay/temp/ratvar/door/window
icon_state = "ratvarwindoorglow"
layer = ABOVE_WINDOW_LAYER
/obj/effect/overlay/temp/ratvar/beam
icon_state = "ratvarbeamglow"
@@ -295,7 +296,10 @@
/obj/effect/overlay/temp/ratvar/window
icon_state = "ratvarwindowglow"
layer = ABOVE_WINDOW_LAYER
layer = ABOVE_OBJ_LAYER
/obj/effect/overlay/temp/ratvar/window/single
icon_state = "ratvarwindowglow_s"
/obj/effect/overlay/temp/ratvar/gear
icon_state = "ratvargearglow"
@@ -308,9 +312,6 @@
/obj/effect/overlay/temp/ratvar/grille/broken
icon_state = "ratvarbrokengrilleglow"
/obj/effect/overlay/temp/ratvar/window/single
icon_state = "ratvarwindowglow_s"
/obj/effect/overlay/temp/ratvar/volt_hit
name = "volt blast"
layer = ABOVE_MOB_LAYER
+3 -3
View File
@@ -503,7 +503,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
else ..()
/obj/item/throw_impact(atom/A)
if(A && !qdeleted(A))
if(A && !QDELETED(A))
var/itempush = 1
if(w_class < 4)
itempush = 0 //too light to push anything
@@ -582,7 +582,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
return 0
/obj/item/burn()
if(!qdeleted(src))
if(!QDELETED(src))
var/turf/T = get_turf(src)
var/ash_type = /obj/effect/decal/cleanable/ash
if(w_class == WEIGHT_CLASS_HUGE || w_class == WEIGHT_CLASS_GIGANTIC)
@@ -592,7 +592,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
..()
/obj/item/acid_melt()
if(!qdeleted(src))
if(!QDELETED(src))
var/turf/T = get_turf(src)
var/obj/effect/decal/cleanable/molten_object/MO = new(T)
MO.pixel_x = rand(-16,16)
+1 -1
View File
@@ -124,7 +124,7 @@
/obj/item/toy/crayon/proc/check_empty(mob/user)
// When eating a crayon, check_empty() can be called twice producing
// two messages unless we check for being deleted first
if(qdeleted(src))
if(QDELETED(src))
return TRUE
. = FALSE
+1 -1
View File
@@ -36,7 +36,7 @@
flick("carp_swell", src)
//Wait for animation to end
sleep(6)
if(!src || qdeleted(src))//we got toasted while animating
if(!src || QDELETED(src))//we got toasted while animating
return
//Make space carp
var/mob/living/M = new mobtype(get_turf(src))
+2 -2
View File
@@ -663,7 +663,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
M << "[link] <span class='name'>[msg.sender] </span><span class='game say'>PDA Message</span> --> <span class='name'>[multiple ? "Everyone" : msg.recipient]</span>: <span class='message'>[msg.message][msg.get_photo_ref()]</span></span>"
/obj/item/device/pda/proc/can_send(obj/item/device/pda/P)
if(!P || qdeleted(P) || P.toff)
if(!P || QDELETED(P) || P.toff)
return null
var/obj/machinery/message_server/useMS = null
@@ -676,7 +676,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/datum/signal/signal = src.telecomms_process()
if(!P || qdeleted(P) || P.toff) //in case the PDA or mob gets destroyed during telecomms_process()
if(!P || QDELETED(P) || P.toff) //in case the PDA or mob gets destroyed during telecomms_process()
return null
var/useTC = 0
@@ -22,7 +22,7 @@
/obj/item/device/geiger_counter/Destroy()
STOP_PROCESSING(SSobj, src)
..()
return ..()
/obj/item/device/geiger_counter/process()
if(emagged)
@@ -97,11 +97,11 @@
addtimer(CALLBACK(src, .proc/explode), timer * 10)
/obj/item/weapon/c4/proc/explode()
if(qdeleted(src))
if(QDELETED(src))
return
var/turf/location
if(target)
if(!qdeleted(target))
if(!QDELETED(target))
location = get_turf(target)
target.overlays -= image_overlay
target.priority_overlays -= image_overlay
@@ -381,6 +381,25 @@
beakers += B2
/obj/item/weapon/grenade/chem_grenade/ez_clean
name = "cleaner grenade"
desc = "Waffle Co.-brand foaming space cleaner. In a special applicator for rapid cleaning of wide areas."
stage = READY
/obj/item/weapon/grenade/chem_grenade/ez_clean/New()
..()
var/obj/item/weapon/reagent_containers/glass/beaker/large/B1 = new(src)
var/obj/item/weapon/reagent_containers/glass/beaker/large/B2 = new(src)
B1.reagents.add_reagent("fluorosurfactant", 40)
B2.reagents.add_reagent("water", 40)
B2.reagents.add_reagent("ez_clean", 60) //ensures a t h i c c distribution
beakers += B1
beakers += B2
/obj/item/weapon/grenade/chem_grenade/teargas
name = "teargas grenade"
desc = "Used for nonlethal riot control. Contents under pressure. Do not directly inhale contents."
@@ -64,7 +64,7 @@
walk_away(P,loc,rand(1,4))
spawn(rand(15,60))
if(P && !qdeleted(P))
if(P && !QDELETED(P))
P.prime()
qdel(src)
@@ -19,7 +19,7 @@
/obj/item/weapon/grenade/deconstruct(disassembled = TRUE)
if(!disassembled)
prime()
if(!qdeleted(src))
if(!QDELETED(src))
qdel(src)
/obj/item/weapon/grenade/proc/clown_check(mob/living/carbon/human/user)
@@ -128,7 +128,7 @@
/obj/item/weapon/grenade/plastic/c4/prime()
var/turf/location
if(target)
if(!qdeleted(target))
if(!QDELETED(target))
location = get_turf(target)
target.overlays -= image_overlay
target.priority_overlays -= image_overlay
@@ -156,7 +156,7 @@
/obj/item/weapon/grenade/plastic/x4/prime()
var/turf/location
if(target)
if(!qdeleted(target))
if(!QDELETED(target))
location = get_turf(target)
target.overlays -= image_overlay
target.priority_overlays -= image_overlay
@@ -27,7 +27,7 @@
tracked_chem_implants += src
/obj/item/weapon/implant/chem/Destroy()
..()
. = ..()
tracked_chem_implants -= src
@@ -10,7 +10,7 @@
tracked_implants += src
/obj/item/weapon/implant/tracking/Destroy()
..()
. = ..()
tracked_implants -= src
/obj/item/weapon/implanter/tracking/New()
@@ -144,8 +144,8 @@
playsound(loc, 'sound/weapons/batonextend.ogg', 50, 1)
add_fingerprint(user)
sleep(3)
if (H && !qdeleted(H))
if (B && !qdeleted(B))
if (H && !QDELETED(H))
if (B && !QDELETED(B))
H.internal_organs -= B
qdel(B)
new /obj/effect/gibspawner/generic(H.loc, H.viruses, H.dna)
+1 -1
View File
@@ -51,7 +51,7 @@
var/A
A = input(user, "Area to jump to", "BOOYEA", A) as null|anything in teleportlocs
if(!src || qdeleted(src) || !user || !user.is_holding(src) || user.incapacitated() || !A || !uses)
if(!src || QDELETED(src) || !user || !user.is_holding(src) || user.incapacitated() || !A || !uses)
return
var/area/thearea = teleportlocs[A]
@@ -273,13 +273,6 @@
level = 1
cant_hold = list(/obj/item/weapon/storage/backpack/satchel/flat) //muh recursive backpacks
/obj/item/weapon/storage/backpack/satchel/duty
name = "duty satchel"
desc = "An extra trendy looking satchel."
icon_state = "satchel-duty"
/obj/item/weapon/storage/backpack/satchel/flat/hide(var/intact)
if(intact)
invisibility = INVISIBILITY_MAXIMUM
@@ -56,7 +56,6 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible",
if(B.icon_state == "honk1" || B.icon_state == "honk2")
var/mob/living/carbon/human/H = usr
new /obj/item/weapon/bikehorn(B)
H.dna.add_mutation(CLOWNMUT)
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask)
@@ -157,8 +156,4 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible",
/obj/item/weapon/storage/book/bible/booze/New()
..()
new /obj/item/weapon/reagent_containers/food/drinks/beer(src)
new /obj/item/weapon/reagent_containers/food/drinks/beer(src)
new /obj/item/stack/spacecash(src)
new /obj/item/stack/spacecash(src)
new /obj/item/stack/spacecash(src)
new /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey(src)
@@ -301,3 +301,8 @@
new /obj/item/weapon/reagent_containers/glass/bottle/romerol(src)
new /obj/item/weapon/reagent_containers/syringe(src)
new /obj/item/weapon/reagent_containers/dropper(src)
/obj/item/weapon/storage/box/syndie_kit/ez_clean/New()
..()
for(var/i in 1 to 3)
new/obj/item/weapon/grenade/chem_grenade/ez_clean(src)
@@ -116,7 +116,7 @@
var/mob/living/carbon/human/H = user
user.visible_message("<span class='suicide'>[user] is putting [src]'s valve to [user.p_their()] lips! It looks like [user.p_theyre()] trying to commit suicide!</span>")
playsound(loc, 'sound/effects/spray.ogg', 10, 1, -3)
if (H && !qdeleted(H))
if (H && !QDELETED(H))
for(var/obj/item/W in H)
H.dropItemToGround(W)
if(prob(50))
+4 -4
View File
@@ -136,7 +136,7 @@
var/obj/item/weapon/twohanded/O = user.get_inactive_held_item()
if (istype(O) && !istype(O, /obj/item/weapon/twohanded/offhand/)) //If you have a proper item in your other hand that the offhand is for, do nothing. This should never happen.
return
if (qdeleted(src))
if (QDELETED(src))
return
qdel(src) //If it's another offhand, or literally anything else, qdel. If I knew how to add logging messages I'd put one here.
@@ -169,8 +169,8 @@
..()
var/slotbit = slotdefine2slotbit(slot)
if(slot_flags & slotbit)
var/O = user.is_holding_item_of_type(/obj/item/weapon/twohanded/offhand)
if(!O || qdeleted(O))
var/datum/O = user.is_holding_item_of_type(/obj/item/weapon/twohanded/offhand)
if(!O || QDELETED(O))
return
qdel(O)
return
@@ -700,7 +700,7 @@
if(source.z == ZLEVEL_STATION && get_dist(turfhit, source) < maxdist || source.z != ZLEVEL_STATION)
..()
if(do_after_mob(user, src, 5, uninterruptible = 1, progress = 0))
if(qdeleted(src))
if(QDELETED(src))
return
var/turf/landing = get_turf(src)
if (loc != landing)
+1 -1
View File
@@ -141,7 +141,7 @@
/obj/singularity_act()
ex_act(1)
if(src && !qdeleted(src))
if(src && !QDELETED(src))
qdel(src)
return 2
+3 -3
View File
@@ -71,7 +71,7 @@
/obj/proc/rewrite(mob/user)
var/penchoice = alert("What would you like to edit?", "Rename or change description?", "Rename", "Change description", "Cancel")
if(!qdeleted(src) && user.canUseTopic(src, BE_CLOSE))
if(!QDELETED(src) && user.canUseTopic(src, BE_CLOSE))
if(penchoice == "Rename")
rename_obj(user)
if(penchoice == "Change description")
@@ -206,7 +206,7 @@
var/input = stripped_input(M,"What do you want to name \the [name]?", ,"", MAX_NAME_LEN)
var/oldname = name
if(!qdeleted(src) && M.canUseTopic(src, BE_CLOSE) && input != "")
if(!QDELETED(src) && M.canUseTopic(src, BE_CLOSE) && input != "")
if(oldname == input)
M << "You changed \the [name] to... well... \the [name]."
return
@@ -220,7 +220,7 @@
/obj/proc/redesc_obj(mob/M)
var/input = stripped_input(M,"Describe \the [name] here", ,"", 100)
if(!qdeleted(src) && M.canUseTopic(src, BE_CLOSE) && input != "")
if(!QDELETED(src) && M.canUseTopic(src, BE_CLOSE) && input != "")
desc = input
M << "You have successfully changed \the [name]'s description."
return
+2 -2
View File
@@ -51,7 +51,7 @@
if(density)
do_the_flick()
sleep(5)
if(!qdeleted(src))
if(!QDELETED(src))
density = 0
SetOpacity(0)
update_icon()
@@ -63,7 +63,7 @@
do_the_flick()
density = 1
sleep(5)
if(!qdeleted(src))
if(!QDELETED(src))
SetOpacity(1)
update_icon()
air_update_turf(1)
+9 -1
View File
@@ -27,7 +27,15 @@
/obj/structure/grille/Bumped(atom/user)
if(ismob(user))
shock(user, 70)
var/tile_density = FALSE
for(var/atom/movable/AM in get_turf(src))
if(AM == src)
continue
if(AM.density && AM.layer >= layer)
tile_density = TRUE
break
if(!tile_density)
shock(user, 70)
/obj/structure/grille/attack_paw(mob/user)
@@ -79,6 +79,8 @@
return
if(L.buckled)
return
if(user.pulling != L)
return
playsound(src.loc, "sound/effects/splat.ogg", 25, 1)
L.visible_message("<span class='danger'>[user] slams [L] onto the meat spike!</span>", "<span class='userdanger'>[user] slams you onto the meat spike!</span>", "<span class='italics'>You hear a squishy wet noise.</span>")
L.loc = src.loc
+1 -1
View File
@@ -218,7 +218,7 @@ var/global/list/crematoriums = new/list()
new /obj/effect/decal/cleanable/ash(src)
sleep(30)
if(!qdeleted(src))
if(!QDELETED(src))
locked = 0
update_icon()
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) //you horrible people
@@ -146,7 +146,7 @@
open_animation()
sleep(OPEN_DURATION + 2)
pod_moving = 0
if(!qdeleted(pod))
if(!QDELETED(pod))
pod.air_contents.share(loc.return_air()) //mix the pod's gas mixture with the tile it's on
/obj/structure/transit_tube/station/init_tube_dirs()
@@ -68,7 +68,7 @@
add_fingerprint(user)
playsound(src.loc, I.usesound, 50, 1)
if(do_after(user, 40*I.toolspeed, target = src))
if(qdeleted(src))
if(QDELETED(src))
return
user << "<span class='notice'>You attach the [name].</span>"
var/obj/structure/transit_tube/R = new build_type(loc, dir)
@@ -54,7 +54,7 @@
/obj/structure/transit_tube_pod/ex_act(severity, target)
..()
if(!qdeleted(src))
if(!QDELETED(src))
empty_pod()
/obj/structure/transit_tube_pod/contents_explosion(severity, target)
+3 -3
View File
@@ -190,7 +190,7 @@
playsound(loc, I.usesound, 75, 1)
user << "<span class='notice'> You begin to disassemble [src]...</span>"
if(do_after(user, 40*I.toolspeed, target = src))
if(qdeleted(src))
if(QDELETED(src))
return
var/obj/item/stack/sheet/G = new glass_type(user.loc, glass_amount)
@@ -233,7 +233,7 @@
/obj/structure/window/deconstruct(disassembled = TRUE)
if(qdeleted(src))
if(QDELETED(src))
return
if(!disassembled)
playsound(src, "shatter", 70, 1)
@@ -335,7 +335,7 @@
//merges adjacent full-tile windows into one
/obj/structure/window/update_icon()
if(!qdeleted(src))
if(!QDELETED(src))
if(!fulltile)
return