From 6952bef874a8364484b8fc0d2bfd1be13f74d00b Mon Sep 17 00:00:00 2001 From: Ren Erthilo Date: Fri, 30 Mar 2012 04:19:22 +0100 Subject: [PATCH] Reverting disabilities, headsets, murder sydie pack, photo removal, isbreathing and internals. --- .../Cael_Aislinn/Tajara/examine.dm | 26 ++-- code/defines/obj/weapon.dm | 2 +- .../gamemodes/changeling/changeling_powers.dm | 6 +- .../objects/items/weapons/dna_injector.dm | 2 +- code/game/objects/radio/headset.dm | 112 +++++++----------- code/game/objects/storage/storage.dm | 8 +- code/modules/chemical/Chemistry-Tools.dm | 2 +- code/modules/mob/living/carbon/human/death.dm | 2 +- .../mob/living/carbon/human/examine.dm | 24 ++-- code/modules/mob/living/carbon/human/human.dm | 19 ++- code/modules/mob/living/carbon/human/life.dm | 2 +- icons/mob/back.dmi | Bin 29111 -> 29098 bytes 12 files changed, 87 insertions(+), 118 deletions(-) diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/examine.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/examine.dm index 415555ab422..b205a612d5e 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/examine.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/examine.dm @@ -81,24 +81,24 @@ if (src.wear_id) var/id -// var/photo = 0 + var/photo = 0 if(istype(src:wear_id, /obj/item/device/pda)) var/obj/item/device/pda/pda = src:wear_id id = pda.owner else id = src.wear_id.registered_name -// if (src.wear_id.PHOTO) -// photo = 1 - if (id != src.real_name && in_range(src, usr)) -// if (photo) -// usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo yet doesn't seem to be that person!!!" -// else - usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!" + if (src.wear_id.PHOTO) + photo = 1 + if (id != src.real_name && in_range(src, usr) && prob(10)) + if (photo) + usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo yet doesn't seem to be that person!!!" + else + usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!" else -// if (photo) -// usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo." -// else - usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]." + if (photo) + usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo." + else + usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]." if (src.is_jittery) @@ -195,4 +195,4 @@ print_flavor_text() - usr << "\blue *---------*" + usr << "\blue *---------*" \ No newline at end of file diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index ca26c5bd7a3..338065b34b9 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -520,7 +520,7 @@ var/access = list() var/registered_name = null var/assignment = null -// var/obj/item/weapon/photo/PHOTO = null + var/obj/item/weapon/photo/PHOTO = null var/over_jumpsuit = 1 // If set to 0, it won't display on top of the mob's jumpsuit var/dorm = 0 // determines if this ID has claimed a dorm already diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 3f3967ae194..bad30e598ff 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -100,7 +100,7 @@ usr << "\red This creature is not compatible with our biology." return - if (M.mutations & NOCLONE) + if (M.mutations2 & NOCLONE) usr << "\red This creature's DNA is ruined beyond useability!" return @@ -608,9 +608,9 @@ usr << "\blue We stealthily sting [T]." if(!T.changeling) - T.sdisabilities |= 4 + T.disabilities |= 32 spawn(300) - T.sdisabilities &= ~4 + T.disabilities &= ~32 usr.verbs -= /client/proc/changeling_deaf_sting diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index 6059f5eeca7..d12382c165e 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -23,7 +23,7 @@ /obj/item/weapon/dnainjector/proc/inject(mob/M as mob) M.radiation += rand(20,50) - if (!(M.mutations & NOCLONE)) // prevents drained people from having their DNA changed + if (!(M.mutations2 & NOCLONE)) // prevents drained people from having their DNA changed if (dnatype == "ui") if (!block) //isolated block? if (ue) //unique enzymes? yes diff --git a/code/game/objects/radio/headset.dm b/code/game/objects/radio/headset.dm index e98a94907f1..dfd8fd08690 100644 --- a/code/game/objects/radio/headset.dm +++ b/code/game/objects/radio/headset.dm @@ -1,141 +1,142 @@ /obj/item/device/radio/headset - name = "radio headset" - desc = "An updated, modular intercom that fits over the head. Takes encryption keys" + name = "Radio Headset" + desc = "An intercom that fits over the head." icon_state = "headset" item_state = "headset" g_amt = 0 m_amt = 75 subspace_transmission = 1 - canhear_range = 1 // can't hear headsets from very far away - - var/translate_binary = 0 - var/translate_hive = 0 - var/obj/item/device/encryptionkey/keyslot1 = null - var/obj/item/device/encryptionkey/keyslot2 = null + protective_temperature = 0 + canhear_range = 1 + var + translate_binary = 0 + translate_hive = 0 + obj/item/device/encryptionkey/keyslot1 = null + obj/item/device/encryptionkey/keyslot2 = null /obj/item/device/radio/headset/New() ..() - keyslot1 = new /obj/item/device/encryptionkey/ + keyslot1 = new /obj/item/device/encryptionkey recalculateChannels() /obj/item/device/radio/headset/traitor origin_tech = "syndicate=3" canhear_range = 0 -/obj/item/device/radio/headset/traitor/New() - ..() - del(keyslot1) - keyslot1 = new /obj/item/device/encryptionkey/traitor - recalculateChannels() + + New() + ..() + del(keyslot1) + keyslot1 = new /obj/item/device/encryptionkey/traitor /obj/item/device/radio/headset/binary origin_tech = "syndicate=3" canhear_range = 0 -/obj/item/device/radio/headset/binary/New() - ..() - del(keyslot1) - keyslot1 = new /obj/item/device/encryptionkey/binary - recalculateChannels() + + New() + ..() + del(keyslot1) + keyslot1 = new /obj/item/device/encryptionkey/binary /obj/item/device/radio/headset/headset_sec - name = "security radio headset" + name = "Security Radio Headset" desc = "This is used by your elite security force. To access the security channel, use :s." icon_state = "sec_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_sec /obj/item/device/radio/headset/headset_eng - name = "engineering radio headset" + name = "Engineering Radio Headset" desc = "When the engineers wish to chat like girls. To access the engineering channel, use :e. " icon_state = "eng_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_eng /obj/item/device/radio/headset/headset_rob - name = "robotics radio headset" + name = "Robotics Radio Headset" desc = "Made specifically for the roboticists who cannot decide between departments. To access the engineering channel, use :e. For research, use :n." icon_state = "rob_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_rob /obj/item/device/radio/headset/headset_med - name = "medical radio headset" + name = "Medical Radio Headset" desc = "A headset for the trained staff of the medbay. To access the medical channel, use :m." icon_state = "med_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_med /obj/item/device/radio/headset/headset_sci - name = "science radio headset" + name = "Science Radio Headset" desc = "A sciency headset. Like usual. To access the science channel, use :n." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_sci /obj/item/device/radio/headset/headset_medsci - name = "medical research radio headset" + name = "Medical Research Radio Headset" desc = "A headset that is a result of the mating between medical and science. To access the medical channel, use :m. For science, use :n." icon_state = "med_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_medsci /obj/item/device/radio/headset/headset_com - name = "command radio headset" + name = "Command Radio Headset" desc = "A headset with a commanding channel. To access the command channel, use :c." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_com /obj/item/device/radio/headset/heads/captain - name = "captain's headset" + name = "Captain's Headset" desc = "The headset of the boss. Channels are as follows: :c - command, :s - security, :e - engineering, :d - mining, :q - cargo, :m - medical, :n - science." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/captain /obj/item/device/radio/headset/heads/rd - name = "research director's deadset" + name = "Research Director's Headset" desc = "Headset of the researching God. To access the science channel, use :n. For command, use :c." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/rd /obj/item/device/radio/headset/heads/hos - name = "head of security's headset" + name = "Head of Security's Headset" desc = "The headset of the man who protects your worthless lifes. To access the security channel, use :s. For command, use :c." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/hos /obj/item/device/radio/headset/heads/ce - name = "chief engineer's headset" + name = "Chief Engineer's Headset" desc = "The headset of the guy who is in charge of morons. To access the engineering channel, use :e. For command, use :c." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/ce /obj/item/device/radio/headset/heads/cmo - name = "chief medical officer's headset" + name = "Chief Medical Officer's Headset" desc = "The headset of the highly trained medical chief. To access the medical channel, use :m. For command, use :c." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/cmo /obj/item/device/radio/headset/heads/hop - name = "head of personnel's headset" + name = "Head of Personnel's Headset" desc = "The headset of the guy who will one day be captain. Channels are as follows: :c - command, :s - security, :q - cargo, :d - mining." icon_state = "com_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/heads/hop /obj/item/device/radio/headset/headset_mine - name = "mining radio headset" + name = "Mining Radio Headset" desc = "Headset used by miners. How useless. To access the mining channel, use :d." icon_state = "mine_headset" item_state = "headset" keyslot2 = new /obj/item/device/encryptionkey/headset_mine /obj/item/device/radio/headset/heads/qm - name = "quartermaster's headset" + name = "Quartermaster's Headset" desc = "The headset of the man who control your toiletpaper supply. To access the cargo channel, use :q. For mining, use :d." icon_state = "cargo_headset" item_state = "headset" @@ -153,7 +154,7 @@ keyslot2 = new /obj/item/device/encryptionkey/ert /obj/item/device/radio/headset/headset_cargo - name = "cargo radio headset" + name = "Cargo Radio Headset" desc = "Headset used by the QM's slaves. To access the cargo channel, use :q." icon_state = "cargo_headset" item_state = "headset" @@ -162,32 +163,17 @@ /obj/item/device/radio/headset/attackby(obj/item/weapon/W as obj, mob/user as mob) // ..() user.machine = src - if (!( istype(W, /obj/item/weapon/screwdriver) || (istype(W, /obj/item/device/encryptionkey/ )))) + if (!istype(W, /obj/item/weapon/screwdriver) && !istype(W, /obj/item/device/encryptionkey/)) return if(istype(W, /obj/item/weapon/screwdriver)) if(keyslot1 || keyslot2) - - for(var/ch_name in channels) - radio_controller.remove_object(src, radiochannels[ch_name]) - secure_radio_connections[ch_name] = null - - if(keyslot1) - var/turf/T = get_turf(user) - if(T) - keyslot1.loc = T - keyslot1 = null - - + user.put_in_hands(keyslot1) if(keyslot2) - var/turf/T = get_turf(user) - if(T) - keyslot2.loc = T - keyslot2 = null - + user.put_in_hands(keyslot2) recalculateChannels() user << "You pop out the encryption keys in the headset!" @@ -210,9 +196,7 @@ W.loc = src keyslot2 = W - recalculateChannels() - return @@ -220,13 +204,10 @@ src.channels = list() src.translate_binary = 0 src.translate_hive = 0 + var/temp_channels = list() if(keyslot1) - for(var/ch_name in keyslot1.channels) - if(ch_name in src.channels) - continue - src.channels += ch_name - src.channels[ch_name] = keyslot1.channels[ch_name] + temp_channels += keyslot1.channels if(keyslot1.translate_binary) src.translate_binary = 1 @@ -235,11 +216,7 @@ src.translate_hive = 1 if(keyslot2) - for(var/ch_name in keyslot2.channels) - if(ch_name in src.channels) - continue - src.channels += ch_name - src.channels[ch_name] = keyslot2.channels[ch_name] + temp_channels += keyslot2.channels if(keyslot2.translate_binary) src.translate_binary = 1 @@ -247,14 +224,13 @@ if(keyslot2.translate_hive) src.translate_hive = 1 + config(temp_channels) for (var/ch_name in channels) if(!radio_controller) sleep(30) // Waiting for the radio_controller to be created. if(!radio_controller) - src.name = "broken radio headset" + src.name = "Broken Radio Headset" return - secure_radio_connections[ch_name] = radio_controller.add_object(src, radiochannels[ch_name], RADIO_CHAT) - return \ No newline at end of file diff --git a/code/game/objects/storage/storage.dm b/code/game/objects/storage/storage.dm index 60c5395ed5e..a43a1d6e6eb 100644 --- a/code/game/objects/storage/storage.dm +++ b/code/game/objects/storage/storage.dm @@ -315,7 +315,7 @@ /obj/item/weapon/storage/box/syndicate/New() ..() - switch (pickweight(list("bloodyspai" = 1, "stealth" = 1, "screwed" = 1, "guns" = 1, "murder" = 1, "freedom" = 1))) + switch (pickweight(list("bloodyspai" = 1, "stealth" = 1, "screwed" = 1, "guns" = 1, "freedom" = 1))) if ("bloodyspai") new /obj/item/clothing/under/chameleon(src) new /obj/item/clothing/mask/gas/voice(src) @@ -344,12 +344,6 @@ new /obj/item/weapon/plastique(src) return - if ("murder") - new /obj/item/weapon/melee/energy/sword(src) - new /obj/item/clothing/glasses/thermal(src) - new /obj/item/weapon/card/emag(src) - return - if("freedom") var/obj/item/weapon/implanter/O = new /obj/item/weapon/implanter(src) O.imp = new /obj/item/weapon/implant/freedom(O) diff --git a/code/modules/chemical/Chemistry-Tools.dm b/code/modules/chemical/Chemistry-Tools.dm index 7955f181e2a..23bcf7c88aa 100644 --- a/code/modules/chemical/Chemistry-Tools.dm +++ b/code/modules/chemical/Chemistry-Tools.dm @@ -966,7 +966,7 @@ if(!T.dna) usr << "You are unable to locate any blood. (To be specific, your target seems to be missing their DNA datum)" return - if(T.mutations & NOCLONE) //target done been et, no more blood in him + if(T.mutations2 & NOCLONE) //target done been et, no more blood in him user << "\red You are unable to locate any blood." return B.holder = src diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index b08d24d45c0..7aac84a9b57 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -93,5 +93,5 @@ /mob/living/carbon/human/proc/Drain() ChangeToHusk() - mutations |= NOCLONE + mutations2 |= NOCLONE return \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 37d2c9dc214..a3d46a69553 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -89,24 +89,24 @@ if (src.wear_id) var/id -// var/photo = 0 + var/photo = 0 if(istype(src:wear_id, /obj/item/device/pda)) var/obj/item/device/pda/pda = src:wear_id id = pda.owner else id = src.wear_id.registered_name -// if (src.wear_id.PHOTO) -// photo = 1 + if (src.wear_id.PHOTO) + photo = 1 if (id != src.real_name && in_range(src, usr)) -// if (photo) -// usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo yet doesn't seem to be that person!!!" -// else - usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!" + if (photo) + usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo yet doesn't seem to be that person!!!" + else + usr << "\red [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] yet doesn't seem to be that person!!!" else -// if (photo) -// usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo." -// else - usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]." + if (photo) + usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name] with a photo." + else + usr << "\blue [src.name] is wearing \icon[src.wear_id] [src.wear_id.name]." if (src.is_jittery) @@ -207,4 +207,4 @@ print_flavor_text() - usr << "\blue *---------*" + usr << "\blue *---------*" \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 668ce4ce379..c75ca057d15 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1533,8 +1533,7 @@ del(src) return if("internal") - if ((!( (istype(target.wear_mask, /obj/item/clothing/mask) && istype(target.back, /obj/item/weapon/tank) && !( target.internal )) ) && !( target.internal ))) - //SN src = null + if ((!( (istype(target.wear_mask, /obj/item/clothing/mask) && (istype(target.back, /obj/item/weapon/tank) || istype(target.belt, /obj/item/weapon/tank) || istype(target.s_store, /obj/item/weapon/tank)) && !( target.internal )) ) && !( target.internal ))) //SN src = null del(src) return else @@ -1702,7 +1701,7 @@ return message = text("\red [] is trying to empty []'s pockets!!", source, target) if("CPR") - if (target.cpr_time >= world.time + 3) + if (target.cpr_time + 3 >= world.time) //SN src = null del(src) return @@ -2163,7 +2162,7 @@ It can still be worn/put on as normal. target.handcuffed = item item.loc = target if("CPR") - if (target.cpr_time >= world.time + 30) + if (target.cpr_time + 30 >= world.time) //SN src = null del(src) return @@ -2239,11 +2238,11 @@ It can still be worn/put on as normal. if (!( istype(target.wear_mask, /obj/item/clothing/mask) )) return else - if (istype(target.back, /obj/item/weapon/tank)) + if (istype(target.back, /obj/item/weapon/tank) && (internalloc == "back" || !internalloc)) target.internal = target.back - else if (istype(target.s_store, /obj/item/weapon/tank)) + else if (istype(target.s_store, /obj/item/weapon/tank) && (internalloc == "store" || !internalloc)) target.internal = target.s_store - else if (istype(target.belt, /obj/item/weapon/tank)) + else if (istype(target.belt, /obj/item/weapon/tank) && (internalloc == "belt" || !internalloc)) target.internal = target.belt if (target.internal) for(var/mob/M in viewers(target, 1)) @@ -2284,12 +2283,12 @@ It can still be worn/put on as normal.
Right Ear: [(r_ear ? r_ear : "Nothing")]
Head: [(head ? head : "Nothing")]
Shoes: [(shoes ? shoes : "Nothing")] -
Belt: [(belt ? belt : "Nothing")] +
Belt: [(belt ? belt : "Nothing")] [(istype(wear_mask, /obj/item/clothing/mask) && istype(belt, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : ""]
Uniform: [(w_uniform ? w_uniform : "Nothing")]
(Exo)Suit: [(wear_suit ? wear_suit : "Nothing")] -
Back: [(back ? back : "Nothing")] [((istype(wear_mask, /obj/item/clothing/mask) && istype(back, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : "")] +
Back: [(back ? back : "Nothing")][(istype(wear_mask, /obj/item/clothing/mask) && istype(back, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : ""]
ID: [(wear_id ? wear_id : "Nothing")] -
Suit Storage: [(s_store ? s_store : "Nothing")] +
Suit Storage: [(s_store ? s_store : "Nothing")] [(istype(wear_mask, /obj/item/clothing/mask) && istype(s_store, /obj/item/weapon/tank) && !( internal )) ? text(" Set Internal", src) : ""]
[(handcuffed ? text("Handcuffed") : text("Not Handcuffed"))]
[(internal ? text("Remove Internal") : "")]
Empty Pockets diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 9bafddc407a..d2a60c0ed07 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -514,7 +514,7 @@ adjustOxyLoss(3) // Lets hurt em a little, let them know we mean business if(world.time - co2overloadtime > 300) // They've been in here 30s now, lets start to kill them for their own good! adjustOxyLoss(8) - if(prob(20)) // Lets give them some chance to know somethings not right though I guess. + if(prob(20) && isbreathing) // Lets give them some chance to know somethings not right though I guess. spawn(0) emote("cough") else diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index b9b87afa56d4cdda5b4abecb3f2e80fabf3480c9..6c9c65aa09b525b33f1af6e0f357a8fc27bf6f53 100644 GIT binary patch delta 7887 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