diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm index b3dc11b9132..62c1877b7da 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm @@ -30,6 +30,7 @@ viruses = list() for(var/datum/disease/D in O.viruses) D.affected_mob = O + O.flavor_text = flavor_text if (client) client.mob = O diff --git a/code/defines/obj.dm b/code/defines/obj.dm index b8658dadf68..5b7420fdcd2 100644 --- a/code/defines/obj.dm +++ b/code/defines/obj.dm @@ -135,27 +135,28 @@ for(var/datum/data/record/t in data_core.general) var/name = t.fields["name"] var/rank = t.fields["rank"] + var/real_rank = t.fields["real_rank"] //world << "[name]: [rank]" - if(rank in command_positions) + if(real_rank in command_positions) heads[name] = rank - if(rank in security_positions) + if(real_rank in security_positions) sec[name] = rank continue - if(rank in engineering_positions) + if(real_rank in engineering_positions) eng[name] = rank continue - if(rank in medical_positions) + if(real_rank in medical_positions) med[name] = rank continue - if(rank in science_positions) + if(real_rank in science_positions) sci[name] = rank continue - if(rank in civilian_positions) + if(real_rank in civilian_positions) civ[name] = rank continue - if(rank in nonhuman_positions) + if(real_rank in nonhuman_positions) bot[name] = rank continue diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index efda6bc526d..dc513705e96 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -504,6 +504,12 @@ if(jobName in get_all_jobs()) return jobName + // hack for alt titles + if(istype(loc, /mob)) + var/mob/M = loc + if(M.mind.role_alt_title == jobName && M.mind.assigned_role in get_all_jobs()) + return M.mind.assigned_role + var/centcom = 0 for(var/i = 1, i <= accesses.len, i++) if(accesses[i] > 100) diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 7a168c4d4e5..4db4bb8280e 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -147,11 +147,14 @@ Pod/Blast Doors computer var/obj/item/weapon/card/id/C = H.wear_id if (C) G.fields["rank"] = C.assignment + G.fields["real_rank"] = H.mind.assigned_role else - if(H.job) - G.fields["rank"] = H.job + if(H.mind && H.mind.assigned_role) + G.fields["rank"] = H.mind.role_alt_title ? H.mind.role_alt_title : H.mind.assigned_role + G.fields["real_rank"] = H.mind.assigned_role else G.fields["rank"] = "Unassigned" + G.fields["real_rank"] = G.fields["rank"] G.fields["name"] = H.real_name G.fields["id"] = text("[]", add_zero(num2hex(rand(1, 1.6777215E7)), 6)) M.fields["name"] = G.fields["name"] @@ -190,6 +193,7 @@ Pod/Blast Doors computer L.fields["age"] = H.age L.fields["id"] = md5("[H.real_name][H.mind.assigned_role]") L.fields["rank"] = H.mind.role_alt_title ? H.mind.role_alt_title : H.mind.assigned_role + L.fields["real_rank"] = H.mind.assigned_role L.fields["b_type"] = H.dna.b_type L.fields["b_dna"] = H.dna.unique_enzymes L.fields["enzymes"] = H.dna.struc_enzymes @@ -213,6 +217,8 @@ Pod/Blast Doors computer if(foundrecord) foundrecord.fields["rank"] = assignment + if(assignment in get_all_jobs()) + foundrecord.fields["real_rank"] = assignment /obj/datacore/proc/manifest_inject(var/mob/living/carbon/human/H) @@ -224,11 +230,14 @@ Pod/Blast Doors computer var/obj/item/weapon/card/id/C = H.wear_id if (C) G.fields["rank"] = C.assignment + G.fields["real_rank"] = H.job else - if(H.job) - G.fields["rank"] = H.job + if(H.mind && H.mind.assigned_role) + G.fields["rank"] = H.mind.assigned_role + G.fields["real_rank"] = H.mind.assigned_role else G.fields["rank"] = "Unassigned" + G.fields["real_rank"] = G.fields["rank"] G.fields["name"] = H.real_name G.fields["id"] = text("[]", add_zero(num2hex(rand(1, 1.6777215E7)), 6)) M.fields["name"] = G.fields["name"] @@ -267,6 +276,7 @@ Pod/Blast Doors computer L.fields["age"] = H.age L.fields["id"] = md5("[H.real_name][H.mind.assigned_role]") L.fields["rank"] = H.mind.role_alt_title ? H.mind.role_alt_title : H.mind.assigned_role + L.fields["real_rank"] = H.mind.assigned_role L.fields["b_type"] = H.dna.b_type L.fields["b_dna"] = H.dna.unique_enzymes L.fields["enzymes"] = H.dna.struc_enzymes diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index b1886dc2065..afa39cbdf3a 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -487,6 +487,8 @@ What a mess.*/ if ("Change Rank") if (active1) active1.fields["rank"] = href_list["rank"] + if(href_list["rank"] in get_all_jobs()) + active1.fields["real_rank"] = href_list["real_rank"] if ("Change Criminal Status") if (active2) diff --git a/code/game/machinery/scanner.dm b/code/game/machinery/scanner.dm index 3488d1f610c..6eb79664598 100644 --- a/code/game/machinery/scanner.dm +++ b/code/game/machinery/scanner.dm @@ -87,6 +87,7 @@ obj/machinery/scanner/attack_hand(mob/living/carbon/human/user) var/datum/data/record/S = new() var/datum/data/record/L = new() G.fields["rank"] = "Unassigned" + G.fields["real_rank"] = G.fields["rank"] G.fields["name"] = mname G.fields["id"] = text("[]", add_zero(num2hex(rand(1, 1.6777215E7)), 6)) M.fields["name"] = G.fields["name"] @@ -125,6 +126,7 @@ obj/machinery/scanner/attack_hand(mob/living/carbon/human/user) L.fields["age"] = age L.fields["id"] = md5("[mname][user.mind.assigned_role]") L.fields["rank"] = "Unknown" + L.fields["real_rank"] = L.fields["rank"] L.fields["b_type"] = bloodtype L.fields["b_dna"] = dna L.fields["enzymes"] = user.dna.struc_enzymes diff --git a/code/game/machinery/walllockers.dm b/code/game/machinery/walllockers.dm index ec50aaf504c..3ffd862fb74 100644 --- a/code/game/machinery/walllockers.dm +++ b/code/game/machinery/walllockers.dm @@ -1,11 +1,11 @@ -/obj/walllocker +/obj/structure/walllocker name = "Wall Locker" icon = 'lockwall.dmi' icon_state = "emerg" var/list/spawnitems = list() anchored = 1 var/amount = 3 // spawns each items X times. -/obj/walllocker/attack_hand(mob/user as mob) +/obj/structure/walllocker/attack_hand(mob/user as mob) if (istype(user, /mob/living/silicon/ai)) //Added by Strumpetplaya - AI shouldn't be able to return //activate emergency lockers. This fixes that. (Does this make sense, the AI can't call attack_hand, can it? --Mloc) if(!amount) @@ -16,18 +16,18 @@ new path(src.loc) amount-- return -/obj/walllocker/emerglocker +/obj/structure/walllocker/emerglocker name = "Emergency Locker" spawnitems = list(/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/weapon/crowbar) -/obj/walllocker/emerglocker/north +/obj/structure/walllocker/emerglocker/north pixel_y = 32 dir = SOUTH -/obj/walllocker/emerglocker/south +/obj/structure/walllocker/emerglocker/south pixel_y = -32 dir = NORTH -/obj/walllocker/emerglocker/west +/obj/structure/walllocker/emerglocker/west pixel_x = -32 dir = WEST -/obj/walllocker/emerglocker/east +/obj/structure/walllocker/emerglocker/east pixel_x = 32 dir = EAST \ No newline at end of file diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 9704354974d..658ba27dc2a 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -292,8 +292,14 @@ var/obj/item/weapon/card/id/C = H.wear_id if (C) G.fields["rank"] = C.assignment + G.fields["real_rank"] = H.mind.assigned_role else - G.fields["rank"] = "Unassigned" + if(H.mind && H.mind.assigned_role) + G.fields["rank"] = H.mind.assigned_role + G.fields["real_rank"] = H.mind.assigned_role + else + G.fields["rank"] = "Unassigned" + G.fields["real_rank"] = G.fields["rank"] G.fields["name"] = H.real_name G.fields["id"] = text("[]", add_zero(num2hex(rand(1, 1.6777215E7)), 6)) M.fields["name"] = G.fields["name"] @@ -332,6 +338,7 @@ L.fields["age"] = H.age L.fields["id"] = md5("[H.real_name][H.mind.assigned_role]") L.fields["rank"] = H.mind.role_alt_title ? H.mind.role_alt_title : H.mind.assigned_role + L.fields["real_rank"] = H.mind.assigned_role L.fields["b_type"] = H.dna.b_type L.fields["b_dna"] = H.dna.unique_enzymes L.fields["enzymes"] = H.dna.struc_enzymes