From 47a48458adea0420b512a4a89f75614311541dcc Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:09:03 -0400 Subject: [PATCH 1/9] heheheha --- code/modules/surgery/organs/augments_arms.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 10833bf57762..c255a716ee78 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -362,6 +362,11 @@ var/obj/item/assembly/flash/armimplant/F = locate(/obj/item/assembly/flash/armimplant) in items_list F.I = src +/obj/item/organ/cyberimp/arm/flash/rev + name = "revolutionary brainwashing implant" + desc = "An integrated flash projector used alongside syndicate subliminal messaging training to convert loyal crew into violent syndicate activists." + syndicate_implant = TRUE + /obj/item/organ/cyberimp/arm/baton name = "arm electrification implant" desc = "An illegal combat implant that allows the user to administer disabling shocks from their arm." From aea10e0967015bab9da4fbbd0b69a5162de1f82c Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:12:39 -0400 Subject: [PATCH 2/9] Update revolution.dm --- code/modules/antagonists/revolution/revolution.dm | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index ebb9aa0d6066..505c47cc1bda 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -242,17 +242,9 @@ H.dna.remove_mutation(CLOWNMUT) if(give_flash) - var/obj/item/assembly/flash/handheld/T = new(H) - var/list/slots = list ( - "backpack" = SLOT_IN_BACKPACK, - "left pocket" = SLOT_L_STORE, - "right pocket" = SLOT_R_STORE - ) - var/where = H.equip_in_one_of_slots(T, slots) - if (!where) - to_chat(H, "The Syndicate were unfortunately unable to get you a flash.") - else - to_chat(H, "The flash in your [where] will help you to persuade the crew to join your cause.") + var/obj/item/organ/cyberimp/arm/flash/T = new(H) + T.Insert(H, special = FALSE, drop_if_replaced = FALSE) + to_chat(H, "The flash implant in your arm will help you to persuade the crew to join your cause.") if(give_hud) var/obj/item/organ/cyberimp/eyes/hud/security/syndicate/S = new(H) From e63a44ce4c66a8bdbd9dc62ffc4185980c41b636 Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:17:02 -0400 Subject: [PATCH 3/9] Update revolution.dm --- code/modules/antagonists/revolution/revolution.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 505c47cc1bda..6528024ab900 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -244,7 +244,7 @@ if(give_flash) var/obj/item/organ/cyberimp/arm/flash/T = new(H) T.Insert(H, special = FALSE, drop_if_replaced = FALSE) - to_chat(H, "The flash implant in your arm will help you to persuade the crew to join your cause.") + to_chat(H, "The flash implant in your arm will help you to persuade the crew to join your cause.") if(give_hud) var/obj/item/organ/cyberimp/eyes/hud/security/syndicate/S = new(H) From e4bc346345965433460d8a86d5bd909a8db3fc72 Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:32:12 -0400 Subject: [PATCH 4/9] prevents generic flash use --- code/modules/assembly/flash.dm | 53 ++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 19 deletions(-) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index 60473fc04cba..e5b8a98e2a08 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -11,13 +11,22 @@ materials = list(/datum/material/iron = 300, /datum/material/glass = 300) light_color = LIGHT_COLOR_WHITE light_power = FLASH_LIGHT_POWER + ///flicked when we flash var/flashing_overlay = "flash-f" - var/times_used = 0 //Number of times it's been used. - var/burnt_out = FALSE //Is the flash burnt out? + ///Number of times the flash has been used. + var/times_used = 0 + ///Is the flash burnt out? + var/burnt_out = FALSE + ///reduction to burnout % chance var/burnout_resistance = 0 - var/last_used = 0 //last world.time it was used. + ///last world.time this flash was used + var/last_used = 0 + ///self explanatory, cooldown on flash use var/cooldown = 0 - var/last_trigger = 0 //Last time it was successfully triggered. + ///last time we actually flashed + var/last_trigger = 0 + ///can we convert people to revolution + var/can_convert = FALSE /obj/item/assembly/flash/suicide_act(mob/living/user) if(burnt_out) @@ -193,21 +202,24 @@ AOE_flash() /obj/item/assembly/flash/proc/terrible_conversion_proc(mob/living/carbon/H, mob/user) - if(istype(H) && H.stat != DEAD) - if(user.mind) - var/datum/antagonist/rev/head/converter = user.mind.has_antag_datum(/datum/antagonist/rev/head) - if(!converter) - return - if(!H.client) - to_chat(user, span_warning("This mind is so vacant that it is not susceptible to influence!")) - return - if(H.stat != CONSCIOUS) - to_chat(user, span_warning("They must be conscious before you can convert [H.p_them()]!")) - return - if(converter.add_revolutionary(H.mind)) - times_used -- //Flashes less likely to burn out for headrevs when used for conversion - else - to_chat(user, span_warning("This mind seems resistant to the flash!")) + if(!can_convert) + return + if(H?.stat == DEAD) + return + if(user.mind) + var/datum/antagonist/rev/head/converter = user.mind.has_antag_datum(/datum/antagonist/rev/head) + if(!converter) + return + if(!H.client) + to_chat(user, span_warning("This mind is so vacant that it is not susceptible to influence!")) + return + if(H.stat != CONSCIOUS) + to_chat(user, span_warning("They must be conscious before you can convert [H.p_them()]!")) + return + if(converter.add_revolutionary(H.mind)) + times_used -- //Flashes less likely to burn out for headrevs when used for conversion + else + to_chat(user, span_warning("This mind seems resistant to the flash!")) /obj/item/assembly/flash/cyborg @@ -266,6 +278,9 @@ /obj/item/assembly/flash/armimplant/proc/cooldown() overheat = FALSE +/obj/item/assembly/flash/armimplant/rev + can_convert = TRUE + /obj/item/assembly/flash/hypnotic desc = "A modified flash device, programmed to emit a sequence of subliminal flashes that can send a vulnerable target into a hypnotic trance." flashing_overlay = "flash-hypno" From 213c7f950b131b9058c4ee7e2a4ef7db632d9327 Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:33:08 -0400 Subject: [PATCH 5/9] Update augments_arms.dm --- code/modules/surgery/organs/augments_arms.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index c255a716ee78..9dbccd620cc0 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -365,6 +365,7 @@ /obj/item/organ/cyberimp/arm/flash/rev name = "revolutionary brainwashing implant" desc = "An integrated flash projector used alongside syndicate subliminal messaging training to convert loyal crew into violent syndicate activists." + contents = newlist(/obj/item/assembly/flash/armimplant/rev) syndicate_implant = TRUE /obj/item/organ/cyberimp/arm/baton From 0dc54999f51b31262cf52ebdb6254e122f90118a Mon Sep 17 00:00:00 2001 From: Theos Date: Sat, 7 May 2022 22:36:58 -0400 Subject: [PATCH 6/9] custom description+name don't flash people like a moron in front of other people --- code/modules/assembly/flash.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index e5b8a98e2a08..66ba86eeb40b 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -279,6 +279,8 @@ overheat = FALSE /obj/item/assembly/flash/armimplant/rev + name = "syndicate brainwashing flash" + desc = "Viva!" can_convert = TRUE /obj/item/assembly/flash/hypnotic From 60e50e466f464f76fb32ac410e69faef1cbf3ab3 Mon Sep 17 00:00:00 2001 From: Theos Date: Mon, 16 May 2022 21:03:04 -0400 Subject: [PATCH 7/9] how --- code/modules/antagonists/revolution/revolution.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 6528024ab900..8704ff1ebd7e 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -122,7 +122,7 @@ /datum/antagonist/rev/head/proc/admin_take_flash(mob/admin) var/list/L = owner.current.get_contents() - var/obj/item/assembly/flash/flash = locate() in L + var/obj/item/assembly/flash/armimplant/rev/flash = locate() in L if (!flash) to_chat(admin, span_danger("Deleting flash failed!")) return From 666dc7025859d58e31eecca8cbe56c645f0db1ac Mon Sep 17 00:00:00 2001 From: Theos Date: Mon, 16 May 2022 21:05:03 -0400 Subject: [PATCH 8/9] Update revolution.dm --- code/modules/antagonists/revolution/revolution.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 8704ff1ebd7e..510b89d30603 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -242,7 +242,7 @@ H.dna.remove_mutation(CLOWNMUT) if(give_flash) - var/obj/item/organ/cyberimp/arm/flash/T = new(H) + var/obj/item/assembly/flash/armimplant/rev/T = new(H) T.Insert(H, special = FALSE, drop_if_replaced = FALSE) to_chat(H, "The flash implant in your arm will help you to persuade the crew to join your cause.") From a09da3744d8410e04204aed9c692d779c501469a Mon Sep 17 00:00:00 2001 From: Theos Date: Mon, 16 May 2022 21:09:05 -0400 Subject: [PATCH 9/9] Update revolution.dm --- code/modules/antagonists/revolution/revolution.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index 510b89d30603..c44d91c0522f 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -122,7 +122,7 @@ /datum/antagonist/rev/head/proc/admin_take_flash(mob/admin) var/list/L = owner.current.get_contents() - var/obj/item/assembly/flash/armimplant/rev/flash = locate() in L + var/obj/item/organ/cyberimp/arm/flash/rev/flash = locate() in L if (!flash) to_chat(admin, span_danger("Deleting flash failed!")) return @@ -242,7 +242,7 @@ H.dna.remove_mutation(CLOWNMUT) if(give_flash) - var/obj/item/assembly/flash/armimplant/rev/T = new(H) + var/obj/item/organ/cyberimp/arm/flash/rev/T = new(H) T.Insert(H, special = FALSE, drop_if_replaced = FALSE) to_chat(H, "The flash implant in your arm will help you to persuade the crew to join your cause.")