mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-09 23:20:37 +01:00
Misc Bug Removal (#2045)
vampire_powers.dm ~ vamps now know if they finished enthralling. Fixes #1705 utility.dm ~unconscious people cant feel things injected anymore. Fixes #606 security.dm ~7 days to play as sec now. Same with detective and warden. might need config option enabled. Fixes #1973 exodus-1.dm ~ removed useless circuit board. Fixes #1991 supplypacks.dm ~ Auxilllary Foensic tools crate spawns with a UV light now. Fixes #1936 tree_networking.dm ~ gave the malf AI more room to type things up. Also fixed typo. Fixes #1914 Made the viral infection outbreak say level 5 all the time so it matches up with sound file.
This commit is contained in:
@@ -51,7 +51,8 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
|
||||
/obj/item/weapon/storage/box/swabs,
|
||||
/obj/item/weapon/storage/box/swabs,
|
||||
/obj/item/weapon/storage/box/slides,
|
||||
/obj/item/weapon/reagent_containers/spray/luminol)
|
||||
/obj/item/weapon/reagent_containers/spray/luminol,
|
||||
/obj/item/device/uv_light)
|
||||
cost = 30
|
||||
containertype = /obj/structure/closet/crate
|
||||
containername = "Auxiliary forensic tools"
|
||||
|
||||
@@ -92,32 +92,89 @@
|
||||
if(!ability_prechecks(user, price))
|
||||
return
|
||||
|
||||
var/title = input("Select message title: ")
|
||||
var/text = input("Select message text: ")
|
||||
if(!title || !text || !ability_pay(user, price))
|
||||
user << "Hack Aborted"
|
||||
return
|
||||
var/reporttitle
|
||||
var/reportbody
|
||||
var/reporttype = input(usr, "Choose whether to use a template or custom report.", "Create Command Report") in list("Template", "Custom", "Cancel")
|
||||
switch(reporttype)
|
||||
if("Template")
|
||||
establish_db_connection(dbcon)
|
||||
if (!dbcon.IsConnected())
|
||||
src << "<span class='notice'>Unable to connect to the database.</span>"
|
||||
return
|
||||
var/DBQuery/query = dbcon.NewQuery("SELECT title, message FROM ss13_ccia_general_notice_list WHERE deleted_at IS NULL")
|
||||
query.Execute()
|
||||
|
||||
log_ability_use(user, "advanced encryption hack")
|
||||
var/list/template_names = list()
|
||||
var/list/templates = list()
|
||||
|
||||
if(prob(50) && user.hack_can_fail)
|
||||
user << "Hack Failed."
|
||||
if(prob(5))
|
||||
user.hack_fails ++
|
||||
announce_hack_failure(user, "quantum message relay")
|
||||
log_ability_use(user, "elite encryption hack (CRITFAIL - title: [title])")
|
||||
while (query.NextRow())
|
||||
template_names += query.item[1]
|
||||
templates[query.item[1]] = query.item[2]
|
||||
|
||||
// Catch empty list
|
||||
if (!templates.len)
|
||||
src << "<span class='notice'>There are no templates in the database.</span>"
|
||||
return
|
||||
|
||||
reporttitle = input(usr, "Please select a command report template.", "Create Command Report") in template_names
|
||||
reportbody = templates[reporttitle]
|
||||
|
||||
if("Custom")
|
||||
reporttitle = sanitizeSafe(input(usr, "Pick a title for the report.", "Title") as text|null)
|
||||
if(!reporttitle)
|
||||
reporttitle = "NanoTrasen Update"
|
||||
reportbody = sanitize(input(usr, "Please enter anything you want. Anything. Serious.", "Body", "") as message|null, extra = 0)
|
||||
if(!reportbody)
|
||||
return
|
||||
else
|
||||
return
|
||||
log_ability_use(user, "elite encryption hack (FAIL - title: [title])")
|
||||
return
|
||||
log_ability_use(user, "elite encryption hack (SUCCESS - title: [title])")
|
||||
command_announcement.Announce(text, title)
|
||||
for (var/obj/machinery/computer/communications/C in machines)
|
||||
if(! (C.stat & (BROKEN|NOPOWER) ) )
|
||||
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper( C.loc )
|
||||
P.name = "[command_name()] Update"
|
||||
P.info = replacetext(text, "\n", "<br/>")
|
||||
P.update_space(P.info)
|
||||
P.update_icon()
|
||||
|
||||
if (reporttype == "Template")
|
||||
sanitizeSafe(alert(usr, "Would you like it to appear as if CCIAMS made the report?",,"Yes","No"))
|
||||
if ("Yes")
|
||||
reportbody += "\n\n- CCIAMS, [commstation_name()]"
|
||||
else
|
||||
|
||||
switch(alert("Should this be announced to the general population?",,"Yes","No"))
|
||||
if("Yes")
|
||||
if(!reporttitle || !reportbody || !ability_pay(user, price))
|
||||
user << "Hack Aborted due to no title, no body message, or you do not have enough CPU for this action."
|
||||
return
|
||||
|
||||
log_ability_use(user, "advanced encryption hack")
|
||||
|
||||
if(prob(50) && user.hack_can_fail)
|
||||
user << "Hack Failed."
|
||||
if(prob(5))
|
||||
user.hack_fails ++
|
||||
announce_hack_failure(user, "quantum message relay")
|
||||
log_ability_use(user, "advanced encryption hack (CRITFAIL - title: [reporttitle])")
|
||||
return
|
||||
log_ability_use(user, "advanced encryption hack (FAIL - title: [reporttitle])")
|
||||
return
|
||||
log_ability_use(user, "advanced encryption hack (SUCCESS - title: [reporttitle])")
|
||||
command_announcement.Announce("[reportbody]", reporttitle, new_sound = 'sound/AI/commandreport.ogg', msg_sanitized = 1);
|
||||
|
||||
if("No")
|
||||
if(!reporttitle || !reportbody || !ability_pay(user, price))
|
||||
user << "Hack Aborted due to no title, no body message, or you do not have enough CPU for this action."
|
||||
return
|
||||
|
||||
log_ability_use(user, "advanced encryption hack")
|
||||
|
||||
if(prob(50) && user.hack_can_fail)
|
||||
user << "Hack Failed."
|
||||
if(prob(5))
|
||||
user.hack_fails ++
|
||||
announce_hack_failure(user, "quantum message relay")
|
||||
log_ability_use(user, "advanced encryption hack (CRITFAIL - title: [reporttitle])")
|
||||
return
|
||||
log_ability_use(user, "advanced encryption hack (FAIL - title: [reporttitle])")
|
||||
return
|
||||
log_ability_use(user, "advanced encryption hack (SUCCESS - title: [reporttitle])")
|
||||
world << "\red New [company_name] Update available at all communication consoles."
|
||||
world << sound('sound/AI/commandreport.ogg')
|
||||
post_comm_message(reporttitle, reportbody)
|
||||
|
||||
/datum/game_mode/malfunction/verb/elite_encryption_hack()
|
||||
set category = "Software"
|
||||
@@ -219,4 +276,4 @@
|
||||
user.verbs += new/datum/game_mode/malfunction/verb/ai_destroy_station()
|
||||
|
||||
|
||||
// END ABILITY VERBS
|
||||
// END ABILITY VERBS
|
||||
|
||||
@@ -680,7 +680,7 @@
|
||||
T.mind.vampire.master = src
|
||||
vampire.thralls += T
|
||||
T << "<span class='notice'>You have been forced into a blood bond by [T.mind.vampire.master], and are thus their thrall. While a thrall may feel a myriad of emotions towards their master, ranging from fear, to hate, to love; the supernatural bond between them still forces the thrall to obey their master, and to listen to the master's commands.<br><br>You must obey your master's orders, you must protect them, you cannot harm them.</span>"
|
||||
|
||||
src << "<span class='notice'>You have completed the thralling process. They are now your slave and will obey your commands.</span>"
|
||||
admin_attack_log(src, T, "enthralled [key_name(T)]", "was enthralled by [key_name(src)]", "successfully enthralled")
|
||||
|
||||
vampire.use_blood(150)
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
economic_modifier = 5
|
||||
access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_morgue, access_external_airlocks)
|
||||
minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_external_airlocks)
|
||||
minimal_player_age = 5
|
||||
minimal_player_age = 7
|
||||
|
||||
equip(var/mob/living/carbon/human/H)
|
||||
if(!H) return 0
|
||||
@@ -106,7 +106,7 @@
|
||||
economic_modifier = 5
|
||||
access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels)
|
||||
minimal_access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels)
|
||||
minimal_player_age = 3
|
||||
minimal_player_age = 7
|
||||
equip(var/mob/living/carbon/human/H)
|
||||
if(!H) return 0
|
||||
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sec(H), slot_l_ear)
|
||||
@@ -153,7 +153,7 @@
|
||||
economic_modifier = 4
|
||||
access = list(access_security, access_eva, access_sec_doors, access_brig, access_maint_tunnels, access_morgue, access_external_airlocks)
|
||||
minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_maint_tunnels, access_external_airlocks)
|
||||
minimal_player_age = 3
|
||||
minimal_player_age = 7
|
||||
equip(var/mob/living/carbon/human/H)
|
||||
if(!H) return 0
|
||||
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/headset_sec(H), slot_l_ear)
|
||||
|
||||
@@ -241,8 +241,12 @@
|
||||
|
||||
if(target_mob != H)
|
||||
H << "<span class='danger'>You inject [target_mob] with [chems_to_use] unit\s of [charge.display_name].</span>"
|
||||
target_mob << "<span class='danger'>You feel a rushing in your veins as [chems_to_use] unit\s of [charge.display_name] [chems_to_use == 1 ? "is" : "are"] injected.</span>"
|
||||
target_mob.reagents.add_reagent(charge.display_name, chems_to_use)
|
||||
|
||||
if(target_mob.is_physically_disabled())
|
||||
target_mob.reagents.add_reagent(charge.display_name, chems_to_use)
|
||||
else
|
||||
target_mob << "<span class='danger'>You feel a rushing in your veins as [chems_to_use] unit\s of [charge.display_name] [chems_to_use == 1 ? "is" : "are"] injected.</span>"
|
||||
target_mob.reagents.add_reagent(charge.display_name, chems_to_use)
|
||||
|
||||
charge.charges -= chems_to_use
|
||||
if(charge.charges < 0) charge.charges = 0
|
||||
|
||||
@@ -21,16 +21,9 @@ datum/event/viral_infection/setup()
|
||||
viruses += D
|
||||
|
||||
datum/event/viral_infection/announce()
|
||||
var/level
|
||||
if (severity == EVENT_LEVEL_MUNDANE)
|
||||
return
|
||||
else if (severity == EVENT_LEVEL_MODERATE)
|
||||
level = pick("one", "two", "three", "four")
|
||||
else
|
||||
level = "five"
|
||||
|
||||
if (severity == EVENT_LEVEL_MAJOR || prob(60))
|
||||
command_announcement.Announce("Confirmed outbreak of level [level] biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg')
|
||||
command_announcement.Announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg')
|
||||
|
||||
datum/event/viral_infection/start()
|
||||
if(!viruses.len) return
|
||||
|
||||
Reference in New Issue
Block a user