mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 13:37:58 +01:00
Merge remote-tracking branch 'upstream/master' into third_times_the_charm_questionmark
Conflicts: code/modules/mob/living/carbon/human/human.dm ^ This shit is haunted. It's conflicted on two branches for 0 reason, the automatic merge wouldn't work on the fucking end of file.
This commit is contained in:
@@ -62,6 +62,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
|
||||
var/ownrank = null // this one is rank, never alt title
|
||||
|
||||
var/obj/item/device/paicard/pai = null // A slot for a personal AI device
|
||||
var/retro_mode = 0
|
||||
|
||||
/obj/item/device/pda/medical
|
||||
default_cartridge = /obj/item/weapon/cartridge/medical
|
||||
@@ -401,6 +402,8 @@ var/global/list/obj/item/device/pda/PDAs = list()
|
||||
data["idInserted"] = (id ? 1 : 0)
|
||||
data["idLink"] = (id ? text("[id.registered_name], [id.assignment]") : "--------")
|
||||
|
||||
data["useRetro"] = retro_mode
|
||||
|
||||
data["cart_loaded"] = cartridge ? 1:0
|
||||
if(cartridge)
|
||||
var/cartdata[0]
|
||||
@@ -574,6 +577,9 @@ var/global/list/obj/item/device/pda/PDAs = list()
|
||||
mode = 0
|
||||
else if(mode >= 40 && mode <= 49)//Fix for cartridges. Redirects to refresh the menu.
|
||||
cartridge.mode = mode
|
||||
if("Retro")
|
||||
retro_mode = !retro_mode
|
||||
ui_interact(user)
|
||||
if ("Authenticate")//Checks for ID
|
||||
id_check(U, 1)
|
||||
if("UpdateInfo")
|
||||
@@ -1138,7 +1144,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
|
||||
if(T.ptank) atmosanalyzer_scan(T.ptank.air_contents, user, T)
|
||||
else if (istype(A, /obj/machinery/portable_atmospherics/scrubber/huge))
|
||||
var/obj/machinery/portable_atmospherics/scrubber/huge/T = A
|
||||
atmosanalyzer_scan(T.air_contents, user, T)
|
||||
atmosanalyzer_scan(T.air_contents, user, T)
|
||||
else if (istype(A, /obj/machinery/atmospherics/unary/tank))
|
||||
var/obj/machinery/atmospherics/unary/tank/T = A
|
||||
atmosanalyzer_scan(T.air_contents, user, T)
|
||||
@@ -1276,4 +1282,3 @@ var/global/list/obj/item/device/pda/PDAs = list()
|
||||
/obj/item/device/pda/emp_act(severity)
|
||||
for(var/atom/A in src)
|
||||
A.emp_act(severity)
|
||||
|
||||
@@ -114,6 +114,10 @@
|
||||
radio = new /obj/item/radio/integrated/signal(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/cartridge/signal/Destroy()
|
||||
qdel(radio)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/cartridge/quartermaster
|
||||
name = "Space Parts & Space Vendors Cartridge"
|
||||
desc = "Perfect for the Quartermaster on the go!"
|
||||
|
||||
@@ -144,7 +144,7 @@ var/global/list/default_medbay_channels = list(
|
||||
var/chan_stat = channels[ch_name]
|
||||
var/listening = !!(chan_stat & FREQ_LISTENING) != 0
|
||||
|
||||
dat.Add(list(list("chan" = ch_name, "display_name" = ch_name, "secure_channel" = 1, "sec_channel_listen" = !listening)))
|
||||
dat.Add(list(list("chan" = ch_name, "display_name" = ch_name, "secure_channel" = 1, "sec_channel_listen" = !listening, "chan_span" = frequency_span_class(radiochannels[ch_name]))))
|
||||
|
||||
return dat
|
||||
|
||||
@@ -152,7 +152,7 @@ var/global/list/default_medbay_channels = list(
|
||||
var/dat[0]
|
||||
for(var/internal_chan in internal_channels)
|
||||
if(has_channel_access(user, internal_chan))
|
||||
dat.Add(list(list("chan" = internal_chan, "display_name" = get_frequency_name(text2num(internal_chan)))))
|
||||
dat.Add(list(list("chan" = internal_chan, "display_name" = get_frequency_name(text2num(internal_chan)), "chan_span" = frequency_span_class(text2num(internal_chan)))))
|
||||
|
||||
return dat
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ REAGENT SCANNER
|
||||
user.show_message("\t Damage Specifics: <font color='blue'>[OX]</font> - <font color='green'>[TX]</font> - <font color='#FFA500'>[BU]</font> - <font color='red'>[BR]</font>")
|
||||
user.show_message("\blue Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)", 1)
|
||||
if(M.timeofdeath && (M.stat == DEAD || (M.status_flags & FAKEDEATH)))
|
||||
user.show_message("\blue Time of Death: [M.timeofdeath]")
|
||||
user.show_message("\blue Time of Death: [worldtime2text(M.timeofdeath)]")
|
||||
if(istype(M, /mob/living/carbon/human) && mode == 1)
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/list/damaged = H.get_damaged_organs(1,1)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/obj/item/device/sensor_device
|
||||
name = "handheld crew monitor"
|
||||
name = "handheld crew monitor"
|
||||
desc = "A miniature machine that tracks suit sensors across the station."
|
||||
icon = 'icons/obj/device.dmi'
|
||||
icon_state = "scanner"
|
||||
@@ -7,10 +7,15 @@
|
||||
slot_flags = SLOT_BELT
|
||||
origin_tech = "biotech=3;materials=3;magnets=3"
|
||||
var/datum/nano_module/crew_monitor/crew_monitor
|
||||
|
||||
|
||||
/obj/item/device/sensor_device/New()
|
||||
crew_monitor = new(src)
|
||||
|
||||
/obj/item/device/sensor_device/Destroy()
|
||||
qdel(crew_monitor)
|
||||
crew_monitor = null
|
||||
return ..()
|
||||
|
||||
/obj/item/device/sensor_device/attack_self(mob/user as mob)
|
||||
ui_interact(user)
|
||||
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
desc = "A flag proudly proclaiming the superior heritage of Unathi."
|
||||
icon_state = "unathiflag"
|
||||
|
||||
//Nation Flags (Able to spawn outside Nations gamemode)
|
||||
//Department Flags
|
||||
|
||||
/obj/item/flag/cargo
|
||||
name = "Cargonia flag"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench) && sheets_refunded)
|
||||
//new /obj/item/stack/sheet/metal( get_turf(src.loc), sheets_refunded )
|
||||
var/obj/item/stack/sheet/metal/M = PoolOrNew(/obj/item/stack/sheet/metal, get_turf(src))
|
||||
var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal(get_turf(src))
|
||||
M.amount = sheets_refunded
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
else
|
||||
user.visible_message("<span class='warning'>[user] begins to do [H]'s lips with \the [src].</span>", \
|
||||
"<span class='notice'>You begin to apply \the [src].</span>")
|
||||
if(do_after(user, 20, target = H) && do_after(H, 20, 5, 0)) //user needs to keep their active hand, H does not.
|
||||
if(do_after(user, 20, target = H))
|
||||
user.visible_message("<span class='notice'>[user] does [H]'s lips with \the [src].</span>", \
|
||||
"<span class='notice'>You apply \the [src].</span>")
|
||||
H.lip_style = "lipstick"
|
||||
|
||||
@@ -25,10 +25,13 @@
|
||||
/obj/item/weapon/flamethrower/Destroy()
|
||||
if(weldtool)
|
||||
qdel(weldtool)
|
||||
weldtool = null
|
||||
if(igniter)
|
||||
qdel(igniter)
|
||||
igniter = null
|
||||
if(ptank)
|
||||
qdel(ptank)
|
||||
ptank = null
|
||||
return ..()
|
||||
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
|
||||
Destroy()
|
||||
qdel(smoke)
|
||||
smoke = null
|
||||
return ..()
|
||||
|
||||
prime()
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
else
|
||||
usr << "All the leaves have fallen off the nettle from violent whacking."
|
||||
del(src)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/grown/nettle/changePotency(newValue) //-QualityVan
|
||||
potency = newValue
|
||||
@@ -220,7 +220,7 @@
|
||||
|
||||
else
|
||||
usr << "All the leaves have fallen off the deathnettle from violent whacking."
|
||||
del(src)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/grown/deathnettle/changePotency(newValue) //-QualityVan
|
||||
potency = newValue
|
||||
@@ -235,6 +235,6 @@
|
||||
if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/hatchet) || istype(W, /obj/item/weapon/kitchen/utensil/knife) || istype(W, /obj/item/weapon/kitchenknife) || istype(W, /obj/item/weapon/kitchenknife/ritual))
|
||||
user << "<span class='notice'>You use [W] to fashion a pipe out of the corn cob!</span>"
|
||||
new /obj/item/clothing/mask/cigarette/pipe/cobpipe (user.loc)
|
||||
del(src)
|
||||
qdel(src)
|
||||
return
|
||||
*/
|
||||
@@ -1,32 +0,0 @@
|
||||
/obj/item/weapon/module
|
||||
icon = 'icons/obj/module.dmi'
|
||||
icon_state = "std_module"
|
||||
w_class = 2.0
|
||||
item_state = "electronic"
|
||||
flags = CONDUCT
|
||||
var/mtype = 1 // 1=electronic 2=hardware
|
||||
|
||||
/obj/item/weapon/module/card_reader
|
||||
name = "card reader module"
|
||||
icon_state = "card_mod"
|
||||
desc = "An electronic module for reading data and ID cards."
|
||||
|
||||
/obj/item/weapon/module/power_control
|
||||
name = "power control module"
|
||||
icon_state = "power_mod"
|
||||
desc = "Heavy-duty switching circuits for power control."
|
||||
|
||||
/obj/item/weapon/module/id_auth
|
||||
name = "\improper ID authentication module"
|
||||
icon_state = "id_mod"
|
||||
desc = "A module allowing secure authorization of ID cards."
|
||||
|
||||
/obj/item/weapon/module/cell_power
|
||||
name = "power cell regulator module"
|
||||
icon_state = "power_mod"
|
||||
desc = "A converter and regulator allowing the use of power cells."
|
||||
|
||||
/obj/item/weapon/module/cell_power
|
||||
name = "power cell charger module"
|
||||
icon_state = "power_mod"
|
||||
desc = "Charging circuits for power cells."
|
||||
@@ -35,10 +35,6 @@
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/shard/Destroy()
|
||||
..()
|
||||
return QDEL_HINT_PUTINPOOL
|
||||
|
||||
/obj/item/weapon/shard/attackby(obj/item/I, mob/user, params)
|
||||
if(istype(I, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = I
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
max_w_class = 2
|
||||
storage_slots = 30
|
||||
can_hold = list() // any
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear","/obj/item/flag/nation")
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear")
|
||||
|
||||
/obj/item/weapon/storage/bag/trash/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] puts the [src.name] over their head and starts chomping at the insides! Disgusting!</span>")
|
||||
@@ -88,7 +88,7 @@
|
||||
storage_slots = 7
|
||||
display_contents_with_number = 0 //or else this will lead to stupid behavior.
|
||||
can_hold = list() // any
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear","/obj/item/flag/nation")
|
||||
cant_hold = list("/obj/item/weapon/disk/nuclear")
|
||||
var/head = 0
|
||||
|
||||
/obj/item/weapon/storage/bag/plasticbag/mob_can_equip(M as mob, slot)
|
||||
@@ -248,7 +248,7 @@
|
||||
usr.client.screen -= S
|
||||
S.dropped(usr)
|
||||
if(!S.amount)
|
||||
del(S)
|
||||
qdel(S)
|
||||
else
|
||||
S.loc = src
|
||||
|
||||
@@ -293,7 +293,7 @@
|
||||
N.amount = stacksize
|
||||
S.amount -= stacksize
|
||||
if(!S.amount)
|
||||
del(S) // todo: there's probably something missing here
|
||||
qdel(S) // todo: there's probably something missing here
|
||||
orient2hud(usr)
|
||||
if(usr.s_active)
|
||||
usr.s_active.show_to(usr)
|
||||
|
||||
@@ -476,9 +476,9 @@
|
||||
else target.ex_act(1)
|
||||
if (isobj(target))
|
||||
if (target)
|
||||
del(target)
|
||||
qdel(target)
|
||||
if (src)
|
||||
del(src)
|
||||
qdel(src)
|
||||
*/
|
||||
|
||||
/obj/item/weapon/storage/belt/bluespace/attack(mob/M as mob, mob/user as mob, def_zone)
|
||||
|
||||
@@ -10,6 +10,10 @@
|
||||
verbs -= /obj/item/verb/verb_pickup //make sure this is never picked up.
|
||||
..()
|
||||
|
||||
/obj/item/weapon/storage/internal/Destroy()
|
||||
master_item = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/storage/internal/attack_hand()
|
||||
return //make sure this is never picked up
|
||||
|
||||
|
||||
@@ -19,6 +19,10 @@
|
||||
src.ion_trail.set_up(src)
|
||||
return
|
||||
|
||||
/obj/item/weapon/tank/jetpack/Destroy()
|
||||
qdel(ion_trail)
|
||||
ion_trail = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/tank/jetpack/examine(mob/user)
|
||||
if(!..(user, 0))
|
||||
@@ -160,4 +164,4 @@
|
||||
var/allgases = G.carbon_dioxide + G.nitrogen + G.oxygen + G.toxins
|
||||
if(allgases >= 0.005)
|
||||
. = 1
|
||||
qdel(G)
|
||||
qdel(G)
|
||||
|
||||
Reference in New Issue
Block a user