From 33394d6d07fa61e40c4b1e030040eca0fd8cdbb2 Mon Sep 17 00:00:00 2001 From: Digi Purpur Date: Mon, 3 Jul 2023 07:32:01 -0700 Subject: [PATCH 1/3] Supermatter Lighters balanced, and added fully. <3 ALL experimental features for /selfattack added. (Procs on opening the lighter). It'll be turned into a WMD eventually <3 --- .../loadout/loadout_smoking_ch.dm | 27 ++- icons/obj/zippo_ch.dmi | Bin 3422 -> 4971 bytes .../objects/items/weapons/cigs_lighters.dm | 208 ++++++++++++++++-- modular_chomp/sound/items/button-close.ogg | Bin 0 -> 8290 bytes modular_chomp/sound/items/button-open.ogg | Bin 0 -> 8586 bytes 5 files changed, 218 insertions(+), 17 deletions(-) create mode 100644 modular_chomp/sound/items/button-close.ogg create mode 100644 modular_chomp/sound/items/button-open.ogg diff --git a/code/modules/client/preference_setup/loadout/loadout_smoking_ch.dm b/code/modules/client/preference_setup/loadout/loadout_smoking_ch.dm index c8818f5016..1cbfb42cf2 100644 --- a/code/modules/client/preference_setup/loadout/loadout_smoking_ch.dm +++ b/code/modules/client/preference_setup/loadout/loadout_smoking_ch.dm @@ -8,4 +8,29 @@ for(var/cigar in (typesof(/obj/item/weapon/storage/fancy/cigar))) var/obj/item/weapon/storage/fancy/cigar/cigar_brand = cigar cigars[initial(cigar_brand.name)] = cigar_brand - gear_tweaks += new/datum/gear_tweak/path(sortAssoc(cigars)) \ No newline at end of file + gear_tweaks += new/datum/gear_tweak/path(sortAssoc(cigars)) +/* // The two below here are the versions outside of a tgui selection prompt. +/datum/gear/sm_lighter/safesmzippo + display_name = "Supermatter Lighter, Hardlight" // Base Supermatter zippo + description = "A State of the Art Lighter holding an active supermatter shard in a containment field, this one is contained with a hardlight barrier." + path = /obj/item/weapon/flame/lighter/safesmzippo + +/datum/gear/sm_lighter/syndismzippo + display_name = "Supermatter Lighter, Phoron" // Syndicate Supermatter zippo + description = "A State of the Art Lighter holding an active supermatter shard in a containment field, this one is contained with a phoron shield." + path = /obj/item/weapon/flame/lighter/syndismzippo +*/ +/datum/gear/sm_lighter + display_name = "Supermatter Lighter Selection" + path = /obj/item/weapon/flame/lighter/supermatter + description = "State of the Art Supermatter Lighters." + +/datum/gear/sm_lighter/New() + ..() + var/list/sm_lighters = list() + for(var/sm_lighter in typesof(/obj/item/weapon/flame/lighter/supermatter)) + if(sm_lighter in typesof(/obj/item/weapon/flame/lighter/supermatter/expsmzippo)) // Removes the experimental/weapon variant of the SM Lighter + continue + var/obj/item/weapon/flame/lighter/supermatter/sm_lighter_type = sm_lighter + sm_lighters[initial(sm_lighter_type.name)] = sm_lighter_type + gear_tweaks += new/datum/gear_tweak/path(sortAssoc(sm_lighters)) diff --git a/icons/obj/zippo_ch.dmi b/icons/obj/zippo_ch.dmi index 98a028f4b283248680e2efc6b750848aca7b11db..0f1b9b3f75f9147b7a28c3b7dec1bb3abac67427 100644 GIT binary patch literal 4971 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 literal 3422 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 E0c4=B6aWAK diff --git a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm index c4d485e14f..f55aebe798 100644 --- a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm +++ b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm @@ -1,5 +1,5 @@ -/obj/item/weapon/flame/lighter/safesmzippo - name = "Supermatter Zippo" +/obj/item/weapon/flame/lighter/supermatter + name = "Hardlight Supermatter Zippo" desc = "State of the Art Supermatter Lighter." description_fluff = "A zippo style lighter with a tiny supermatter sliver held by a hardlight shield. When lighting a cigar, make sure to hover the tip near the sliver, not against it!" icon = 'icons/obj/zippo_ch.dmi' @@ -8,8 +8,8 @@ activation_sound = 'modular_chomp/sound/items/open.ogg' deactivation_sound = 'sound/items/zippo_off.ogg' -/obj/item/weapon/flame/lighter/syndismzippo - name = "Syndicate SM Zippo" +/obj/item/weapon/flame/lighter/supermatter/syndismzippo + name = "Phoron Supermatter Zippo" // Syndicate SM Lighter desc = "State of the Art Supermatter Lighter." description_fluff = "A red zippo style lighter with a tiny supermatter sliver held by a phoron field." icon = 'icons/obj/zippo_ch.dmi' @@ -18,8 +18,18 @@ activation_sound = 'modular_chomp/sound/items/open.ogg' deactivation_sound = 'sound/items/zippo_off.ogg' +/obj/item/weapon/flame/lighter/supermatter/expsmzippo + name = "Experimental SM Lighter" + desc = "State of the Art Supermatter Lighter" + description_fluff = "A unique take originating from the zippo design, a shard of supermatter placed within lead-lined walls. Cautious, VERY DANGEROUS do NOT touch!" + icon = 'icons/obj/zippo_ch.dmi' + icon_state = "ExpSMzippo" + item_state = "ExpSMzippo" + activation_sound = 'modular_chomp/sound/items/button-open.ogg' + deactivation_sound = 'modular_chomp/sound/items/button-close.ogg' + // safe smzippo -/obj/item/weapon/flame/lighter/safesmzippo/attack_self(mob/living/user) +/obj/item/weapon/flame/lighter/supermatter/attack_self(mob/living/user) if(!base_state) base_state = icon_state if(!lit) @@ -40,10 +50,10 @@ user.apply_damage(3,CLONE,"l_hand") user.apply_damage(4,ELECTROMAG,"l_hand") else - user.apply_damage(1,SEARING,"l_hand") + user.apply_damage(1,SEARING,"r_hand") user.apply_damage(2,ELECTROCUTE,"r_hand") user.apply_damage(3,CLONE,"r_hand") - user.apply_damage(4,ELECTROMAG,"l_hand") + user.apply_damage(4,ELECTROMAG,"r_hand") user.visible_message("After a few attempts, [user] manages to activate the [src], they however sting themselves on the shielding!") set_light(2) @@ -53,7 +63,7 @@ icon_state = "[base_state]" item_state = "[base_state]" playsound(src, deactivation_sound, 75, 1) - if(istype(src, /obj/item/weapon/flame/lighter/safesmzippo) ) + if(istype(src, /obj/item/weapon/flame/lighter/supermatter) ) user.visible_message("You hear a quiet click, as [user] shuts the [src] without even looking at what they're doing.") else user.visible_message("[user] quietly shuts the [src].") @@ -63,7 +73,7 @@ return -/obj/item/weapon/flame/lighter/safesmzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) +/obj/item/weapon/flame/lighter/supermatter/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) if(!istype(M, /mob)) return @@ -76,21 +86,21 @@ if(M == user) cig.attackby(src, user) else - if(istype(src, /obj/item/weapon/flame/lighter/zippo)) + if(istype(src, /obj/item/weapon/flame/lighter/supermatter)) cig.light("[user] whips the [name] out and holds it for [M].") else cig.light("[user] holds the [name] out for [M], and lights the [cig.name].") else ..() -/obj/item/weapon/flame/lighter/safesmzippo/process() +/obj/item/weapon/flame/lighter/supermatter/process() var/turf/location = get_turf(src) if(location) location.hotspot_expose(700, 5) return // syndicate smzippo -/obj/item/weapon/flame/lighter/syndismzippo/attack_self(mob/living/user) +/obj/item/weapon/flame/lighter/supermatter/syndismzippo/attack_self(mob/living/user) if(!base_state) base_state = icon_state if(!lit) @@ -101,7 +111,7 @@ if(prob(50)) user.visible_message("[user] safely activates the [src] with a push of a button!") else - if(prob(99)) + if(prob(95)) user.visible_message("After a few attempts, [user] manages to excite the supermatter within the [src].") else to_chat(user, "You singe yourself on the phoron shielding the excited supermatter!") @@ -124,7 +134,7 @@ icon_state = "[base_state]" item_state = "[base_state]" playsound(src, deactivation_sound, 75, 1) - if(istype(src, /obj/item/weapon/flame/lighter/syndismzippo) ) + if(istype(src, /obj/item/weapon/flame/lighter/supermatter/syndismzippo) ) user.visible_message("You hear a quiet click, as [user] shuts the [src] without even looking at what they're doing.") else user.visible_message("[user] quietly shuts the [src].") @@ -134,7 +144,7 @@ return -/obj/item/weapon/flame/lighter/syndismzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) +/obj/item/weapon/flame/lighter/supermatter/syndismzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) if(!istype(M, /mob)) return @@ -147,7 +157,7 @@ if(M == user) cig.attackby(src, user) else - if(istype(src, /obj/item/weapon/flame/lighter/syndismzippo)) + if(istype(src, /obj/item/weapon/flame/lighter/supermatter/syndismzippo)) cig.light("[user] whips the [name] out and holds it for [M].") else cig.light("[user] holds the [name] out for [M], and lights the [cig.name].") @@ -159,3 +169,169 @@ if(location) location.hotspot_expose(700, 5) return + +// Experimental smzippo +/obj/item/weapon/flame/lighter/supermatter/expsmzippo/attack_self(mob/living/user) + if (!base_state) + base_state = icon_state + if (!lit) + lit = 1 + icon_state = "[base_state]on" + item_state = "[base_state]on" + playsound(src, activation_sound, 75, 1) + var/i = rand(1, 100) + switch(i) + if(1 to 22) + to_chat("[user] safely reveals the supermatter shard within the [src]!") + user.visible_message("You safely revealed the supermatter shard within the [src]!") + if (user.get_left_hand() == src) + user.apply_damage(1, IRRADIATE, "l_hand") + else + user.apply_damage(1, IRRADIATE, "r_hand") + if(23 to 33) + to_chat(user, "[user]'s hand slipped and they brush against the supermatter within [src]!") + user.visible_message("You accidentally grazed your hand across the supermatter!") + if (user.get_left_hand() == src) + user.apply_damage(10, IRRADIATE, "l_hand") + user.apply_damage(20, BURN, "l_hand") + user.apply_damage(20, ELECTROCUTE, "l_hand") + user.apply_damage(50, AGONY, "l_hand") + else + user.apply_damage(10, IRRADIATE, "r_hand") + user.apply_damage(20, BURN, "r_hand") + user.apply_damage(20, ELECTROCUTE, "r_hand") + user.apply_damage(50, AGONY, "r_hand") + if(34 to 44) + to_chat(user, "[user] burned themselves on the [src]!") + user.visible_message("You accidentally burn yourself on the [src]!") + if (user.get_left_hand() == src) + user.apply_damage(30, IRRADIATE, "l_hand") + user.apply_damage(20, SEARING, "l_hand") + user.apply_damage(15, BURN, "l_hand") + else + user.apply_damage(30, IRRADIATE, "r_hand") + user.apply_damage(20, SEARING, "r_hand") + user.apply_damage(15, BURN, "r_hand") + if(45 to 55) + to_chat(user, "[user] fumbled the [src] and the supermatter let out sparks!") + user.visible_message("You fumble the [src], letting the supermatter spark as the case opens!") + if (user.get_left_hand() == src) + user.apply_damage(1, ELECTROCUTE, "l_hand") + user.apply_damage(100, ELECTROMAG, "l_hand") + else + user.apply_damage(1, ELECTROCUTE, "r_hand") + user.apply_damage(100, ELECTROMAG, "r_hand") + if(56 to 66) + to_chat(user, "[user] struggles to open their [src], but when they do they get burned by the extreme heat within!") + user.visible_message("You struggle to get the case to open, and when it does the heat that pours out of the [src] burns!") + if (user.get_left_hand() == src) + user.apply_damage(1, IRRADIATE, "l_hand") + user.apply_damage(1, BRUISE, "l_hand") + user.apply_damage(200, BURN, "l_hand") + user.drop_l_hand() + else + user.apply_damage(1, IRRADIATE, "r_hand") + user.apply_damage(1, BRUISE, "r_hand") + user.apply_damage(200, BURN, "r_hand") + user.drop_r_hand() + if(67 to 77) + to_chat(user, "Ouch! While pushing on the release to open the [src], [user]'s finger slipped right as the case opened, pressing their finger firm against the supermatter!") + user.visible_message("You accidentally pushed your finger against the supermatter!") + if (user.get_left_hand() == src) + user.apply_damage(50, HALLOSS, "l_hand") + user.apply_damage(40, IRRADIATE, "l_hand") + user.apply_damage(30, BURN, "l_hand") + user.apply_damage(20, TOX, "l_hand") + user.apply_damage(10, ELECTROCUTE, "l_hand") + user.apply_effect(25, STUTTER) + user.apply_effect(15, SLUR) + user.apply_effect(5, STUN) + else + user.apply_damage(50, HALLOSS, "r_hand") + user.apply_damage(40, IRRADIATE, "r_hand") + user.apply_damage(30, BURN, "r_hand") + user.apply_damage(20, TOX, "r_hand") + user.apply_damage(10, ELECTROCUTE, "r_hand") + user.apply_effect(25, STUTTER) + user.apply_effect(15, SLUR) + user.apply_effect(5, STUN) + if(78 to 88) + to_chat(user, "[user] managed to pinch themselves on the case of their [src]... it could have been worse.") + user.visible_message("You manage to pinch yourself on the case!") + if (user.get_left_hand() == src) + user.apply_damage(1, CLONE, "l_hand") + user.apply_damage(1, HALLOSS, "l_hand") + else + user.apply_damage(1, CLONE, "r_hand") + user.apply_damage(1, HALLOSS, "r_hand") + if(89 to 99) + to_chat(user, "[user] opened the [src] but forgot that you aren't supposed to look at supermatter!") + user.visible_message("You find yourself looking at the supermatter for longer than you should...") + if (user.get_left_hand() == src) + user.apply_damage(15, HALLOSS, "l_hand") + user.apply_effect(5, WEAKEN) + user.apply_damage(15, IRRADIATE, "l_hand") + user.apply_effect(100, EYE_BLUR) + user.apply_effect(505, AGONY) + user.apply_damage(5, OXY) + user.eye_blurry = 10 + else + user.apply_damage(15, HALLOSS, "r_hand") + user.apply_effect(5, WEAKEN) + user.apply_damage(15, IRRADIATE, "l_hand") + user.apply_effect(100, EYE_BLUR) + user.apply_effect(50, AGONY) + user.apply_damage(15, OXY) + user.eye_blurry = 10 + if(100) + to_chat(user, "OH NO! [user] almost dropped their live [src]! Thank goodness they caught it... by the glowing yellow crystal... oh.") + user.visible_message("You almost dropped your [src], thank goodness you caught it! By the glowing crystal within. You find your ears filled with unearthly ringing and your last thought is \"Oh, fuck.\"") + user.drop_r_hand() // To ensure the lighter is dropped <3 + user.drop_l_hand() // To ensure the lighter is dropped <3 + for(var/obj/item/e in user) + user.drop_from_inventory(e) + log_and_message_admins("[user] dusted themselves and caused massive radiation with [src]!",user) + user.dust() + var/rads = 500 + SSradiation.radiate(src, rads) + + set_light(5) + START_PROCESSING(SSobj, src) + else + lit = 0 + icon_state = "[base_state]" + item_state = "[base_state]" + playsound(src, deactivation_sound, 75, 1) + if (istype(src, /obj/item/weapon/flame/lighter/supermatter/expsmzippo)) + user.visible_message("You hear a quiet click, as [user] closes the [src].") + else + user.visible_message("[user] quietly shuts the [src].") + + set_light(0) + STOP_PROCESSING(SSobj, src) + +/obj/item/weapon/flame/lighter/supermatter/expsmzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) + if (!istype(M, /mob)) + return + + if (lit == 1) + M.IgniteMob() + add_attack_logs(user, M, "Lit on fire with [src]") + + if (istype(M.wear_mask, /obj/item/clothing/mask/smokable/cigarette) && user.zone_sel.selecting == O_MOUTH && lit) + var/obj/item/clothing/mask/smokable/cigarette/cig = M.wear_mask + if (M == user) + cig.attackby(src, user) + else + if (istype(src, /obj/item/weapon/flame/lighter/supermatter/expsmzippo)) + cig.light("[user] whips the [name] out and holds it for [M].") + else + cig.light("[user] holds the [name] out for [M], and lights the [cig.name].") + else + ..() + +/obj/item/weapon/flame/lighter/supermatter/expsmzippo/process() + var/turf/location = get_turf(src) + if (location) + location.hotspot_expose(700, 5) + return diff --git a/modular_chomp/sound/items/button-close.ogg b/modular_chomp/sound/items/button-close.ogg new file mode 100644 index 0000000000000000000000000000000000000000..4139ac6e84053beb025a03f411c8749d34af6abc GIT binary patch literal 8290 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 TZ!v>kfA{Y#US)^D!_EH%`$FnH literal 0 HcmV?d00001 diff --git a/modular_chomp/sound/items/button-open.ogg b/modular_chomp/sound/items/button-open.ogg new file mode 100644 index 0000000000000000000000000000000000000000..83bedcdd3624f8aa358f5114ca8ecd8db3438413 GIT binary patch literal 8586 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 R<+0vH>l3f8UbWsd`Cn(EUY!5{ literal 0 HcmV?d00001 From 6e45df98a0090f1eb0619ace1abe1bec6a0bad1e Mon Sep 17 00:00:00 2001 From: Purdev <125158082+FoxglovePurpur@users.noreply.github.com> Date: Mon, 3 Jul 2023 07:57:39 -0700 Subject: [PATCH 2/3] Update cigs_lighters.dm - Adding a closing tag that I had forgotten. --- modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm index f55aebe798..09338b4f7d 100644 --- a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm +++ b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm @@ -183,7 +183,7 @@ switch(i) if(1 to 22) to_chat("[user] safely reveals the supermatter shard within the [src]!") - user.visible_message("You safely revealed the supermatter shard within the [src]!") + user.visible_message("You safely revealed the supermatter shard within the [src]!") if (user.get_left_hand() == src) user.apply_damage(1, IRRADIATE, "l_hand") else From 0985e7c7f8b6dc36224208a0b65da19a526629b1 Mon Sep 17 00:00:00 2001 From: Digi Purpur Date: Wed, 5 Jul 2023 09:20:26 -0700 Subject: [PATCH 3/3] Added Summary Comments - Hardlight Supermatter Zippo is the safest SM Zippo. If you "fumble" it, you get a tiny shock and that's basically it. - Phoron Supermatter Zippo is safe for station use but its effects are worse, at least on the pain side of things as fumbling it can cause a stun and if you have low health already can crit you. Though neither should really be capable of killing, just like the base cheap lighters. These are just "a tiny bit more dangerous". - The EXPERIMENTAL SM LIGHTER is ADMIN ONLY (for use in events and special POIs atm only) > You have a 22/100 change to use it safely. All effects give a small amount of radiation (1 irradiate, it's literally nothing and goes away basically instantly). > You have a 1/10 chance to burn and shock yourself. > You have a 1/10 chance to major burn yourself. > You have a 1/10 chance to emag/EMP yourself. > You have a 1/10 chance to dust your hand. > You have a 1/10 chance to burn and tox yourself, as well as putting yourself in a fake crit state due to pain and stutter procs. > You have a 1/10 chance to pinch yourself, dealing a "pain" damage of, basically nothing. But this does do one point of genetic damage. Again, shouldn't really do anything. You have a 1/10 chance to look at the supermatter, causing you go to weak, get put into a blind state for a second. Nothing actually lethal though, and you'll get up soon after. (I also had to fix an issue, I accidentally typed 505 agony, not 50 agony, at least when you're holding it in y our left hand. Oops. > Finally, you have a 1/100 chance to heavily irradiate the area you're in and insta dust yourself, just as if you touched the station's supermatter crystal. --- .../objects/items/weapons/cigs_lighters.dm | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm index 09338b4f7d..c8bb3aae23 100644 --- a/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm +++ b/modular_chomp/code/game/objects/items/weapons/cigs_lighters.dm @@ -1,5 +1,5 @@ /obj/item/weapon/flame/lighter/supermatter - name = "Hardlight Supermatter Zippo" + name = "Hardlight Supermatter Zippo" // Base SM Lighter desc = "State of the Art Supermatter Lighter." description_fluff = "A zippo style lighter with a tiny supermatter sliver held by a hardlight shield. When lighting a cigar, make sure to hover the tip near the sliver, not against it!" icon = 'icons/obj/zippo_ch.dmi' @@ -19,7 +19,7 @@ deactivation_sound = 'sound/items/zippo_off.ogg' /obj/item/weapon/flame/lighter/supermatter/expsmzippo - name = "Experimental SM Lighter" + name = "Experimental SM Lighter" // Dangerous WIP (admin/event only ATM) desc = "State of the Art Supermatter Lighter" description_fluff = "A unique take originating from the zippo design, a shard of supermatter placed within lead-lined walls. Cautious, VERY DANGEROUS do NOT touch!" icon = 'icons/obj/zippo_ch.dmi' @@ -42,7 +42,7 @@ else if(prob(95)) user.visible_message("After a few attempts, [user] manages to excite the supermatter within the [src].") - else + else // Just like the cheap lighter, this time you can shock/burn yourself a little on the hardlight shield to_chat(user, "You hurt yourself on the shielding!") if (user.get_left_hand() == src) user.apply_damage(1,SEARING,"l_hand") @@ -113,16 +113,16 @@ else if(prob(95)) user.visible_message("After a few attempts, [user] manages to excite the supermatter within the [src].") - else + else // Just like with the cheap lighter, but this time you can hurt yourself on the heated phoron field to_chat(user, "You singe yourself on the phoron shielding the excited supermatter!") if (user.get_left_hand() == src) user.apply_damage(30,HALLOSS,"l_hand") - user.apply_damage(20,CLONE,"l_hand") + user.apply_effect(20,IRRADIATE) user.apply_damage(5,BURN,"l_hand") user.apply_damage(5,ELECTROCUTE,"l_hand") else user.apply_damage(30,HALLOSS,"r_hand") - user.apply_damage(20,CLONE,"r_hand") + user.apply_effect(20,IRRADIATE) user.apply_damage(5,BURN,"r_hand") user.apply_damage(5,ELECTROCUTE,"r_hand") user.visible_message("After a few attempts, [user] manages to activate the [src], they however burn themselves with the heated phoron field!") @@ -186,7 +186,7 @@ user.visible_message("You safely revealed the supermatter shard within the [src]!") if (user.get_left_hand() == src) user.apply_damage(1, IRRADIATE, "l_hand") - else + else // Even using this safely will irradiate you a tiny tiny bit. user.apply_damage(1, IRRADIATE, "r_hand") if(23 to 33) to_chat(user, "[user]'s hand slipped and they brush against the supermatter within [src]!") @@ -196,7 +196,7 @@ user.apply_damage(20, BURN, "l_hand") user.apply_damage(20, ELECTROCUTE, "l_hand") user.apply_damage(50, AGONY, "l_hand") - else + else // One of the outcomes will burn and shock you, the pain is the worst part of this one though. user.apply_damage(10, IRRADIATE, "r_hand") user.apply_damage(20, BURN, "r_hand") user.apply_damage(20, ELECTROCUTE, "r_hand") @@ -208,7 +208,7 @@ user.apply_damage(30, IRRADIATE, "l_hand") user.apply_damage(20, SEARING, "l_hand") user.apply_damage(15, BURN, "l_hand") - else + else // One of the outcomes is pure burn and radiation. user.apply_damage(30, IRRADIATE, "r_hand") user.apply_damage(20, SEARING, "r_hand") user.apply_damage(15, BURN, "r_hand") @@ -218,7 +218,7 @@ if (user.get_left_hand() == src) user.apply_damage(1, ELECTROCUTE, "l_hand") user.apply_damage(100, ELECTROMAG, "l_hand") - else + else // This one is mostly dangerous to synthetics and it will EMP you. But otherwise it's safe. user.apply_damage(1, ELECTROCUTE, "r_hand") user.apply_damage(100, ELECTROMAG, "r_hand") if(56 to 66) @@ -229,7 +229,7 @@ user.apply_damage(1, BRUISE, "l_hand") user.apply_damage(200, BURN, "l_hand") user.drop_l_hand() - else + else // This will INSTA-DUST your hand that you're holding the item in, and then make you drop the lighter. user.apply_damage(1, IRRADIATE, "r_hand") user.apply_damage(1, BRUISE, "r_hand") user.apply_damage(200, BURN, "r_hand") @@ -246,7 +246,7 @@ user.apply_effect(25, STUTTER) user.apply_effect(15, SLUR) user.apply_effect(5, STUN) - else + else // This one is VERY punishing, you get a ton of damage, a lot of pain, and a minor stun. Once the stun goes away you'll be stuttering for awhile as if in crit. user.apply_damage(50, HALLOSS, "r_hand") user.apply_damage(40, IRRADIATE, "r_hand") user.apply_damage(30, BURN, "r_hand") @@ -261,7 +261,7 @@ if (user.get_left_hand() == src) user.apply_damage(1, CLONE, "l_hand") user.apply_damage(1, HALLOSS, "l_hand") - else + else // Aside from the base, this one isn't punishing outside of giving you genetic damage. user.apply_damage(1, CLONE, "r_hand") user.apply_damage(1, HALLOSS, "r_hand") if(89 to 99) @@ -272,10 +272,10 @@ user.apply_effect(5, WEAKEN) user.apply_damage(15, IRRADIATE, "l_hand") user.apply_effect(100, EYE_BLUR) - user.apply_effect(505, AGONY) + user.apply_effect(50, AGONY) user.apply_damage(5, OXY) user.eye_blurry = 10 - else + else // This one just blinds and blurs your screen, but otherwise doesn't actually risk harming you. Even the oxy damage heals on its own. user.apply_damage(15, HALLOSS, "r_hand") user.apply_effect(5, WEAKEN) user.apply_damage(15, IRRADIATE, "l_hand") @@ -283,7 +283,7 @@ user.apply_effect(50, AGONY) user.apply_damage(15, OXY) user.eye_blurry = 10 - if(100) + if(100) // This is the part that makes it admin only for the moment, it spawns 500 rads from the carbon's position, and dusts the carbon instantly. It does also drop everything unlike the supermatter crystal though, so hopefully you won't lose any items if you fumble this badly! to_chat(user, "OH NO! [user] almost dropped their live [src]! Thank goodness they caught it... by the glowing yellow crystal... oh.") user.visible_message("You almost dropped your [src], thank goodness you caught it! By the glowing crystal within. You find your ears filled with unearthly ringing and your last thought is \"Oh, fuck.\"") user.drop_r_hand() // To ensure the lighter is dropped <3