mirror of
https://github.com/Aurorastation/Aurora-Old.git
synced 2026-08-24 05:06:16 +01:00
@@ -179,8 +179,15 @@ var/list/alldepartments = list("Central Command")
|
||||
|
||||
/proc/Centcomm_fax(var/sent, var/sentname, var/mob/Sender)
|
||||
|
||||
var/msg = "\blue <b><font color='orange'>CENTCOMM FAX: </font>[key_name(Sender,0,1,0)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<a href='?_src_=holder;CentcommFaxReply=\ref[Sender]'>RPLY</a>)</b>: Receiving '[sentname]' via secure connection ... <a href='?_src_=holder;CentcommFaxView=\ref[sent]'>view message</a>"
|
||||
for(var/client/C in admins)
|
||||
var/msg = "\blue <b><font color='orange'>CENTCOMM FAX: </font>"
|
||||
if(C.holder.rights & (R_ADMIN|R_FUN|R_MOD))
|
||||
msg += "[key_name(Sender,1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>)"
|
||||
else
|
||||
msg += "[key_name(Sender,0,1,0)]"
|
||||
|
||||
msg += " (<a href='?_src_=holder;CentcommFaxReply=\ref[Sender]'>RPLY</a>)</b>: Receiving '[sentname]' via secure connection ... <a href='?_src_=holder;CentcommFaxView=\ref[sent]'>view message</a>"
|
||||
|
||||
if(C.holder.rights & (R_ADMIN|R_DUTYOFF|R_FUN))
|
||||
C << msg
|
||||
|
||||
|
||||
@@ -312,15 +312,16 @@ datum/controller/vote
|
||||
|
||||
proc/interface(var/client/C)
|
||||
if(!C) return
|
||||
var/admin = 0
|
||||
var/trialmin = 0
|
||||
var/modmin = 0
|
||||
var/funmin = 0
|
||||
if(C.holder)
|
||||
admin = 1
|
||||
if(C.holder.rights & R_ADMIN)
|
||||
trialmin = 1
|
||||
else if(C.holder.rights & R_FUN)
|
||||
funmin = 1
|
||||
else if(C.holder.rights & R_MOD)
|
||||
modmin = 1
|
||||
voting |= C
|
||||
|
||||
. = "<html><head><title>Voting Panel</title></head><body>"
|
||||
@@ -337,7 +338,7 @@ datum/controller/vote
|
||||
. += "<li><a href='?src=\ref[src];vote=[i]'>[choices[i]] ([votes] votes)</a></li>"
|
||||
|
||||
. += "</ul><hr>"
|
||||
if(admin)
|
||||
if(trialmin||modmin)
|
||||
. += "(<a href='?src=\ref[src];vote=cancel'>Cancel Vote</a>) "
|
||||
else
|
||||
. += "<h2>Start a vote:</h2><hr><ul><li>"
|
||||
@@ -379,7 +380,7 @@ datum/controller/vote
|
||||
usr << browse(null, "window=vote")
|
||||
return
|
||||
if("cancel")
|
||||
if(usr.client.holder)
|
||||
if(usr.client.holder & (R_ADMIN|R_MOD))
|
||||
reset()
|
||||
if("toggle_restart")
|
||||
if(usr.client.holder)
|
||||
|
||||
@@ -419,9 +419,7 @@ client
|
||||
if( (usr.client != src) || !src.holder )
|
||||
return
|
||||
if(href_list["Vars"])
|
||||
if(!holder.rights & (R_ADMIN|R_MOD|R_FUN|R_DEV))
|
||||
usr << "This can only be used on instances of type /mob"
|
||||
debug_variables(locate(href_list["Vars"]))
|
||||
debug_variables(locate(href_list["Vars"]))
|
||||
|
||||
//~CARN: for renaming mobs (updates their name, real_name, mind.name, their ID/PDA and datacore records).
|
||||
else if(href_list["rename"])
|
||||
|
||||
@@ -479,7 +479,8 @@ proc/display_roundstart_logout_report()
|
||||
|
||||
for(var/mob/M in mob_list)
|
||||
if(M.client && M.client.holder)
|
||||
M << msg
|
||||
if(M.client.holder.rights & (R_ADMIN|R_MOD|R_DEV))
|
||||
M << msg
|
||||
|
||||
|
||||
proc/get_nt_opposed()
|
||||
|
||||
@@ -797,7 +797,7 @@
|
||||
icon_state = "cigs"
|
||||
products = list(/obj/item/weapon/storage/fancy/cigarettes = 10,/obj/item/weapon/storage/box/matches = 10,/obj/item/weapon/lighter/random = 4)
|
||||
contraband = list(/obj/item/weapon/lighter/zippo = 4)
|
||||
premium = list(/obj/item/clothing/mask/cigarette/cigar/havana = 2)
|
||||
premium = list(/obj/item/clothing/mask/cigarette/cigar/havana = 2, /obj/item/weapon/storage/fancy/cigars = 4)
|
||||
prices = list(/obj/item/weapon/storage/fancy/cigarettes = 15,/obj/item/weapon/storage/box/matches = 1,/obj/item/weapon/lighter/random = 2)
|
||||
|
||||
|
||||
|
||||
@@ -204,6 +204,47 @@
|
||||
icon_state = "Dpacket"
|
||||
item_state = "Dpacket"
|
||||
|
||||
/*
|
||||
* Cigar Cases
|
||||
*/
|
||||
|
||||
/obj/item/weapon/storage/fancy/cigars //Complications here making it a subtype of cigarette packets, simpler to make a new type.
|
||||
name = "\improper Cigar Case"
|
||||
desc = "A thin, wooden case containing a selection of fine cigars, fit for a gentleman."
|
||||
icon = 'icons/obj/cigarettes.dmi'
|
||||
icon_state = "cigarcase"
|
||||
item_state = "cigpacket"
|
||||
w_class = 3
|
||||
throwforce = 3
|
||||
flags = TABLEPASS
|
||||
storage_slots = 6
|
||||
can_hold = list("/obj/item/clothing/mask/cigarette",
|
||||
"/obj/item/weapon/lighter",
|
||||
"/obj/item/weapon/reagent_containers/pill")
|
||||
icon_type = "cigar"
|
||||
|
||||
|
||||
/obj/item/weapon/storage/fancy/cigars/New()
|
||||
..()
|
||||
flags |= NOREACT
|
||||
for(var/i = 1 to storage_slots)
|
||||
new /obj/item/clothing/mask/cigarette/cigar/(src)
|
||||
create_reagents(15 * storage_slots)//so people can inject cigarettes without opening a packet, now with being able to inject the whole one
|
||||
|
||||
/obj/item/weapon/storage/fancy/cigars/Del()
|
||||
del(reagents)
|
||||
..()
|
||||
|
||||
|
||||
/obj/item/weapon/storage/fancy/cigars/update_icon()
|
||||
icon_state = "[initial(icon_state)][contents.len]"
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/fancy/cigars/remove_from_storage(obj/item/W as obj, atom/new_location)
|
||||
var/obj/item/clothing/mask/cigarette/cigar/C = W
|
||||
if(!istype(C)) return // what
|
||||
reagents.trans_to(C, (reagents.total_volume/contents.len))
|
||||
|
||||
|
||||
/*
|
||||
* Vial Box
|
||||
|
||||
+22
-2
@@ -40,6 +40,16 @@ var/global/normal_ooc_colour = "#002eb8"
|
||||
return
|
||||
|
||||
if(holder)
|
||||
if(holder.rights & R_DUTYOFF && !(holder.rights & (R_ADMIN|R_MOD|R_DEV|R_FUN)))
|
||||
if(!ooc_allowed)
|
||||
src << "\red OOC is globally muted"
|
||||
return
|
||||
if(!dooc_allowed && (mob.stat == DEAD))
|
||||
usr << "\red OOC for dead mobs has been turned off."
|
||||
return
|
||||
if(prefs.muted & MUTE_OOC)
|
||||
src << "\red You cannot use OOC (muted)."
|
||||
return
|
||||
if(holder.rights & R_DEV && !(holder.rights & R_ADMIN))
|
||||
if(!ooc_allowed && !ooc_dev_allowed)
|
||||
src << "\red OOC is muted for developers"
|
||||
@@ -147,6 +157,16 @@ var/global/normal_ooc_colour = "#002eb8"
|
||||
return
|
||||
|
||||
if(holder)
|
||||
if(holder.rights & R_DUTYOFF && !(holder.rights & (R_ADMIN|R_MOD|R_DEV)))
|
||||
if(!looc_allowed)
|
||||
src << "\red LOOC is muted."
|
||||
return
|
||||
if(!dooc_allowed && (mob.stat == DEAD))
|
||||
usr << "\red OOC for dead mobs has been turned off."
|
||||
return
|
||||
if(prefs.muted & MUTE_OOC)
|
||||
src << "\red You cannot use OOC (muted)."
|
||||
return
|
||||
if(holder.rights & R_DEV && !(holder.rights & R_ADMIN))
|
||||
if(!looc_allowed && !looc_dev_allowed)
|
||||
src << "\red LOOC is muted for developers"
|
||||
@@ -171,13 +191,13 @@ var/global/normal_ooc_colour = "#002eb8"
|
||||
var/display_name = src.key
|
||||
if(holder)
|
||||
if(holder.fakekey)
|
||||
if(C.holder && C.holder.rights & (R_ADMIN|R_MOD|R_DEV))
|
||||
if(C.holder && C.holder.rights & (R_ADMIN|R_MOD))
|
||||
display_name = "[holder.fakekey]/([src.key])"
|
||||
else
|
||||
display_name = holder.fakekey
|
||||
C << "<font color='#6699CC'><span class='ooc'><span class='prefix'>LOOC:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>"
|
||||
for(var/client/C in admins)
|
||||
if(C.holder.rights & R_DUTYOFF && (!C.holder.rights & (R_ADMIN|R_MOD|R_DEV)))
|
||||
if(!C.holder.rights & (R_ADMIN|R_MOD|R_DEV))
|
||||
continue
|
||||
if(C.prefs.toggles & CHAT_LOOC)
|
||||
var/prefix = "(R)LOOC"
|
||||
|
||||
+20
-1
@@ -50,6 +50,8 @@
|
||||
var/modmsg = ""
|
||||
var/devmsg = ""
|
||||
var/eventmsg = ""
|
||||
var/dutymsg = ""
|
||||
var/num_duty_online = 0
|
||||
var/num_devs_online = 0
|
||||
var/num_mods_online = 0
|
||||
var/num_event_online = 0
|
||||
@@ -120,6 +122,20 @@
|
||||
devmsg += " (AFK)"
|
||||
devmsg += "\n"
|
||||
num_devs_online++
|
||||
else if(R_DUTYOFF & C.holder.rights && !(C.holder.rights & (R_ADMIN|R_MOD)))
|
||||
dutymsg += "\t[C]"
|
||||
|
||||
if(isobserver(C.mob))
|
||||
dutymsg += " - Observing"
|
||||
else if(istype(C.mob,/mob/new_player))
|
||||
dutymsg += " - Lobby"
|
||||
else
|
||||
dutymsg += " - Playing"
|
||||
|
||||
if(C.is_afk())
|
||||
dutymsg += " (AFK)"
|
||||
dutymsg += "\n"
|
||||
num_duty_online++
|
||||
|
||||
else
|
||||
for(var/client/C in admins)
|
||||
@@ -141,5 +157,8 @@
|
||||
if(num_event_online)
|
||||
eventwho += "\n<b> Current Event Hosts([num_event_online]):</b>\n" + eventmsg
|
||||
|
||||
msg = "<b>Current Admins ([num_admins_online]):</b>\n" + msg + "\n<b> Current Moderators([num_mods_online]):</b>\n" + modmsg + eventwho + "\n<b> Current Developers([num_devs_online]):</b>\n" + devmsg
|
||||
if(num_duty_online)
|
||||
dutymsg = "\n<b> Current Duty Officers([num_event_online]):</b>\n" + dutymsg
|
||||
|
||||
msg = "<b>Current Admins ([num_admins_online]):</b>\n" + msg + "\n<b> Current Moderators([num_mods_online]):</b>\n" + modmsg + eventwho + "\n<b> Current Developers([num_devs_online]):</b>\n" + devmsg + dutymsg
|
||||
src << msg
|
||||
@@ -80,9 +80,9 @@
|
||||
var/flags
|
||||
switch(new_rank)
|
||||
if("Head Developer")
|
||||
flags = 32767
|
||||
flags = 65535
|
||||
if("Head Admin")
|
||||
flags = 32767
|
||||
flags = 65535
|
||||
if("Primary Admin")
|
||||
flags = 8191
|
||||
if("Secondary Admin")
|
||||
@@ -97,6 +97,8 @@
|
||||
flags = 5672
|
||||
if("Retired Admin")
|
||||
flags = 8194
|
||||
if("Duty Officer")
|
||||
flags = 32768
|
||||
else
|
||||
flags = 0
|
||||
|
||||
|
||||
@@ -393,8 +393,9 @@ var/list/admin_verbs_hideable = list(
|
||||
|
||||
var/list/admin_verbs_duty = list(
|
||||
/client/proc/spawn_duty_officer,
|
||||
/client/proc/cmd_admin_create_centcom_report,
|
||||
/client/proc/cmd_duty_say,
|
||||
/client/verb/returntobody
|
||||
/client/proc/returntobody
|
||||
)
|
||||
|
||||
/client/proc/add_admin_verbs()
|
||||
|
||||
@@ -155,7 +155,7 @@
|
||||
if(admin_ranks.len)
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in (admin_ranks|"*New Rank*")
|
||||
else
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in list("Head Developer","Head Admin", "Primary Admin", "Secondary Admin", "Moderator", "Trial Moderator", "Event Host - Moderator", "Event Host", "Retired Admin", "*New Rank*")
|
||||
new_rank = input("Please select a rank", "New rank", null, null) as null|anything in list("Head Developer","Head Admin", "Primary Admin", "Secondary Admin", "Moderator", "Trial Moderator", "Event Host - Moderator", "Event Host", "Retired Admin", "Duty Officer", "*New Rank*")
|
||||
|
||||
var/rights = 0
|
||||
if(D)
|
||||
|
||||
@@ -30,13 +30,28 @@
|
||||
//Stealing the second var because why not)
|
||||
/proc/Centcomm_announce(var/text , var/mob/Sender , var/silicon = 0 , var/iamessage)
|
||||
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
|
||||
var/modmin = " (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>)"
|
||||
var/msg_start = "\blue <b><font color=orange>CENTCOMM"
|
||||
var/msg_end = ""
|
||||
|
||||
if(silicon)
|
||||
msg = "\blue <b><font color=orange>CENTCOMM(A.L.I.C.E.):</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommAIReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
msg_start += "(A.L.I.C.E.):</font>"
|
||||
msg_end = "(<A HREF='?_src_=holder;CentcommAIReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
else
|
||||
msg = "\blue <b><font color=orange>CENTCOMM[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) (<A HREF='?_src_=holder;adminplayerobservejump=\ref[Sender]'>JMP</A>) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
msg_start += "[iamessage ? " IA" : ""]:</font>"
|
||||
msg_end = "(<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||
|
||||
for(var/client/C in admins)
|
||||
if(C.holder.rights & (R_ADMIN|R_DUTYOFF|R_FUN))
|
||||
C << msg
|
||||
if(C.holder.rights & (R_ADMIN|R_MOD|R_FUN))
|
||||
if(C.holder.rights & R_MOD && !C.holder.rights & R_DUTYOFF)
|
||||
continue
|
||||
C << "[msg_start][key_name(Sender, 1)][modmin][msg_end]"
|
||||
continue
|
||||
if(C.holder.rights & (R_DUTYOFF))
|
||||
if(C.holder.rights & R_MOD)
|
||||
C << "[msg_start][key_name(Sender, 1)][msg_end]"
|
||||
else
|
||||
C << "[msg_start][key_name(Sender, 0, 1, 0)][msg_end]"
|
||||
|
||||
/proc/Syndicate_announce(var/text , var/mob/Sender)
|
||||
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
|
||||
|
||||
@@ -16,12 +16,14 @@
|
||||
src << "\red The game hasn't started yet!"
|
||||
return
|
||||
|
||||
if(mob.mind.special_role == "Duty Officer")
|
||||
if(mob.mind && mob.mind.special_role == "Duty Officer")
|
||||
src << "\red You are already a Duty Officer"
|
||||
return
|
||||
|
||||
var/wasLiving = 0
|
||||
if(istype(mob, /mob/living))
|
||||
holder.original_mob = mob
|
||||
wasLiving = 1
|
||||
|
||||
for (var/obj/effect/landmark/L in landmarks_list)
|
||||
if(L.name == "DutyOfficer")
|
||||
@@ -102,13 +104,16 @@
|
||||
M.mind = new
|
||||
M.mind.current = M
|
||||
M.mind.original = M
|
||||
M.mind.admin_mob_placeholder = mob
|
||||
if(wasLiving)
|
||||
M.mind.admin_mob_placeholder = mob
|
||||
M.mind.assigned_role = "Central Command Duty Officer"
|
||||
M.mind.special_role = "Duty Officer"
|
||||
M.loc = L.loc
|
||||
M.key = key
|
||||
spawn(1)
|
||||
holder.original_mob.key = "@[key]"
|
||||
|
||||
if(wasLiving)
|
||||
spawn(1)
|
||||
holder.original_mob.key = "@[key]"
|
||||
|
||||
M.equip_if_possible(new /obj/item/clothing/under/rank/centcom/officer(M), slot_w_uniform)
|
||||
M.equip_if_possible(new /obj/item/clothing/shoes/centcom(M), slot_shoes)
|
||||
@@ -135,18 +140,18 @@
|
||||
W.registered_name = M.real_name
|
||||
M.equip_if_possible(W, slot_wear_id)
|
||||
|
||||
verbs += /client/verb/returntobody
|
||||
verbs += /client/proc/returntobody
|
||||
break
|
||||
|
||||
/client/verb/returntobody()
|
||||
/client/proc/returntobody()
|
||||
set name = "Return to mob"
|
||||
set desc = "The Duty is done, return to your original mob"
|
||||
set category = "Special Verbs"
|
||||
|
||||
if(!check_rights(0)) return
|
||||
|
||||
if(mob.mind.special_role != "Duty Officer")
|
||||
verbs -= /client/verb/returntobody
|
||||
if(!mob.mind || mob.mind.special_role != "Duty Officer")
|
||||
verbs -= /client/proc/returntobody
|
||||
return
|
||||
|
||||
if(!holder) return
|
||||
@@ -159,14 +164,15 @@
|
||||
|
||||
if(holder.original_mob)
|
||||
if(holder.original_mob == M)
|
||||
verbs -= /client/verb/returntobody
|
||||
verbs -= /client/proc/returntobody
|
||||
return
|
||||
holder.original_mob.key = key
|
||||
holder.original_mob = null
|
||||
else
|
||||
if(mob.mind.admin_mob_placeholder)
|
||||
mob.mind.admin_mob_placeholder.key = key
|
||||
mob.mind.admin_mob_placeholder = null
|
||||
else
|
||||
mob.ghostize(0)
|
||||
verbs -= /client/verb/returntobody
|
||||
verbs -= /client/proc/returntobody
|
||||
del(M)
|
||||
@@ -14,12 +14,6 @@ proc/populate_gear_list()
|
||||
var/whitelisted //Term to check the whitelist for..
|
||||
|
||||
//Standard gear datums.
|
||||
/*
|
||||
/datum/gear/cards
|
||||
display_name = "deck of cards"
|
||||
path = /obj/item/weapon/deck
|
||||
cost = 2*/
|
||||
|
||||
/datum/gear/dice
|
||||
display_name = "d20"
|
||||
path = /obj/item/weapon/dice/d20
|
||||
@@ -35,7 +29,6 @@ proc/populate_gear_list()
|
||||
path = /obj/item/weapon/storage/wallet
|
||||
cost = 2
|
||||
|
||||
|
||||
/datum/gear/comb
|
||||
display_name = "purple comb"
|
||||
path = /obj/item/weapon/fluff/cado_keppel_1
|
||||
@@ -186,28 +179,28 @@ proc/populate_gear_list()
|
||||
/datum/gear/labcoat
|
||||
display_name = "labcoat"
|
||||
path = /obj/item/clothing/suit/storage/labcoat
|
||||
cost = 3
|
||||
cost = 2
|
||||
// slot = slot_wear_suit
|
||||
|
||||
/datum/gear/bluescrubs
|
||||
display_name = "blue scrubs"
|
||||
path = /obj/item/clothing/under/rank/medical/blue
|
||||
cost = 1
|
||||
cost = 3
|
||||
|
||||
/datum/gear/purplescrubs
|
||||
display_name = "purple scrubs"
|
||||
path = /obj/item/clothing/under/rank/medical/purple
|
||||
cost = 1
|
||||
cost = 3
|
||||
|
||||
/datum/gear/greenscrubs
|
||||
display_name = "green scrubs"
|
||||
path = /obj/item/clothing/under/rank/medical/green
|
||||
cost = 1
|
||||
cost = 3
|
||||
|
||||
/datum/gear/surgeryapron
|
||||
display_name = "surgical apron"
|
||||
path = /obj/item/clothing/suit/apron/surgery
|
||||
cost = 1
|
||||
cost = 2
|
||||
|
||||
|
||||
/datum/gear/sandal
|
||||
@@ -219,7 +212,7 @@ proc/populate_gear_list()
|
||||
/datum/gear/work_boots
|
||||
display_name = "work boots"
|
||||
path = /obj/item/clothing/shoes/work_boots
|
||||
cost = 1
|
||||
cost = 2
|
||||
|
||||
/datum/gear/leather
|
||||
display_name = "leather shoes"
|
||||
@@ -272,13 +265,13 @@ proc/populate_gear_list()
|
||||
/datum/gear/green_gloves
|
||||
display_name = "green gloves"
|
||||
path = /obj/item/clothing/gloves/green
|
||||
cost = 2
|
||||
cost = 1
|
||||
// slot = slot_gloves
|
||||
|
||||
/datum/gear/white_gloves
|
||||
display_name = "white gloves"
|
||||
path = /obj/item/clothing/gloves/white
|
||||
cost = 2
|
||||
cost = 1
|
||||
// slot = slot_gloves
|
||||
|
||||
/datum/gear/black_shoes
|
||||
@@ -338,7 +331,7 @@ proc/populate_gear_list()
|
||||
/datum/gear/jackboots
|
||||
display_name = "jackboots"
|
||||
path = /obj/item/clothing/shoes/jackboots
|
||||
cost = 3
|
||||
cost = 2
|
||||
// slot = slot_shoes
|
||||
|
||||
/datum/gear/webbing
|
||||
@@ -455,7 +448,6 @@ proc/populate_gear_list()
|
||||
path = /obj/item/clothing/under/lawyer/oldman
|
||||
cost = 3
|
||||
|
||||
|
||||
//Security
|
||||
/datum/gear/security
|
||||
display_name = "Security HUD"
|
||||
@@ -476,6 +468,12 @@ proc/populate_gear_list()
|
||||
cost = 3
|
||||
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Head of Security", "Warden")
|
||||
|
||||
/datum/gear/waist
|
||||
display_name = "waist holster"
|
||||
path = /obj/item/clothing/tie/holster/waist
|
||||
cost = 3
|
||||
allowed_roles = list("Captain", "Head of Personnel", "Security Officer", "Head of Security", "Warden")
|
||||
|
||||
|
||||
/datum/gear/normal_beret
|
||||
display_name = "beret"
|
||||
@@ -489,6 +487,47 @@ proc/populate_gear_list()
|
||||
// slot = slot_head
|
||||
allowed_roles = list("Security Officer","Head of Security","Warden")
|
||||
|
||||
/*
|
||||
// Disabled until there is an alt-uniform for each department
|
||||
// Uniforms cost 3 points.
|
||||
|
||||
/datum/gear/formal_uni
|
||||
display_name = "formal officer's uniform"
|
||||
path = /obj/item/clothing/under/rank/security/formal
|
||||
cost = 3
|
||||
allowed_roles = list("Security Officer")
|
||||
|
||||
/datum/gear/formal_cap
|
||||
display_name = "officer's formal cap"
|
||||
path = /obj/item/clothing/head/helmet/secfcap
|
||||
cost = 2
|
||||
allowed_roles = list("Security Officer","Head of Security","Warden")
|
||||
|
||||
/datum/gear/formal_uniw
|
||||
display_name = "formal warden's uniform"
|
||||
path = /obj/item/clothing/under/rank/warden/formal
|
||||
cost = 3
|
||||
allowed_roles = list("Warden")
|
||||
|
||||
/datum/gear/formal_jacketw
|
||||
display_name = "formal warden's jacket"
|
||||
path = /obj/item/clothing/suit/armor/vest/warden/jacket
|
||||
cost = 2
|
||||
allowed_roles = list("Warden")
|
||||
|
||||
/datum/gear/formal_unihos
|
||||
display_name = "formal Head of Security's uniform"
|
||||
path = /obj/item/clothing/under/rank/head_of_security/formal
|
||||
cost = 3
|
||||
allowed_roles = list("Head of Security")
|
||||
|
||||
/datum/gear/formal_jackethos
|
||||
display_name = "formal Head of Security's jacket"
|
||||
path = /obj/item/clothing/suit/armor/hos/formal
|
||||
cost = 2
|
||||
allowed_roles = list("Head of Security")
|
||||
*/
|
||||
|
||||
//Engineering
|
||||
/datum/gear/eng_beret
|
||||
display_name = "engineering beret"
|
||||
@@ -549,3 +588,8 @@ proc/populate_gear_list()
|
||||
cost = 2
|
||||
// slot = slot_wear_suit
|
||||
whitelisted = "Unathi"
|
||||
|
||||
/datum/gear/cigar_case
|
||||
display_name = "cigar case"
|
||||
path = /obj/item/weapon/storage/fancy/cigars
|
||||
cost = 3
|
||||
|
||||
@@ -995,4 +995,27 @@ obj/structure/stool/bed/chair/wheelchair/fluff/kit/handle_rotation()
|
||||
if(3)
|
||||
ink = 1
|
||||
colour = "black"
|
||||
user << "<span class='notice'>You cycle the pen to use the black ink cartridge.</span>"
|
||||
user << "<span class='notice'>You cycle the pen to use the black ink cartridge.</span>"
|
||||
|
||||
/obj/structure/sign/shaw_degree //Xenonuerology Doctorate - Alexis Shaw - Tenenza
|
||||
name = "\improper Xenonuerology degree"//Description trimmed down, summarized.
|
||||
desc = "Certification for a doctorate in Xenonuerology, made out to Alexis Shaw by the St. Grahelm University of Beisel, authenticated by watermarking."
|
||||
icon_state = "shaw_degree"
|
||||
|
||||
|
||||
/obj/item/clothing/suit/storage/fluff/dalton_coat //Black Overcoat - Robert Dalton - Valkrae
|
||||
name = "black overcoat"
|
||||
desc = " A black overcoat. It seems worn, and well-made. The coat smells of tobacco and smoke."
|
||||
icon = 'icons/obj/custom_items.dmi'
|
||||
icon_state = "dalton_coat"
|
||||
item_state = "dalton_coat"
|
||||
|
||||
|
||||
/obj/item/clothing/suit/storage/rohitin_jacket //CSI Jacket - Ana Ro'hi'tin - SueTheCake
|
||||
name = "CSI jacket"
|
||||
desc = " A black jacket with the words 'CSI' printed in the back in bright, white letters."
|
||||
icon_state = "rohitinjacket"
|
||||
item_state = "rohitinjacket"
|
||||
blood_overlay_type = "armor"
|
||||
allowed = list(/obj/item/stack/medical, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/hypospray, /obj/item/weapon/reagent_containers/syringe, \
|
||||
/obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency_oxygen)
|
||||
@@ -173,6 +173,14 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
else
|
||||
var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost, you won't be able to play this round for another 30 minutes! You can't change your mind so choose wisely!)","Are you sure you want to ghost?","Ghost","Stay in body")
|
||||
if(response != "Ghost") return //didn't want to ghost after-all
|
||||
if(client.holder && mind.special_role == "DutyOfficer")
|
||||
client.holder.original_mob = null
|
||||
var/mob/dead/observer/ghost = ghostize(0)
|
||||
ghost.timeofdeath = world.time
|
||||
mind.admin_mob_placeholder = null
|
||||
del(src)
|
||||
return
|
||||
|
||||
resting = 1
|
||||
var/turf/location = get_turf(src)
|
||||
message_admins("[key_name_admin(usr)] has ghosted. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[location.x];Y=[location.y];Z=[location.z]'>JMP</a>)")
|
||||
@@ -243,7 +251,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
usr << "<span class='warning'>The astral cord that ties your body and your spirit has been severed. You are likely to wander the realm beyond until your body is finally dead and thus reunited with you.</span>"
|
||||
return
|
||||
mind.current.ajourn=0
|
||||
if(mind.current == client.holder.original_mob)
|
||||
if(client.holder && mind.current == client.holder.original_mob)
|
||||
client.holder.original_mob = null
|
||||
mind.current.key = key
|
||||
return 1
|
||||
|
||||
@@ -63,7 +63,8 @@
|
||||
continue
|
||||
|
||||
if(M.client && M.client.holder && (M.client.prefs.toggles & CHAT_DEAD) ) // Show the message to admins/mods with deadchat toggled on
|
||||
M << rendered //Admins can hear deadchat, if they choose to, no matter if they're blind/deaf or not.
|
||||
if(M.client.holder.rights & (R_MOD|R_ADMIN|R_DEV|R_FUN))
|
||||
M << rendered //Admins can hear deadchat, if they choose to, no matter if they're blind/deaf or not.
|
||||
|
||||
|
||||
return
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 256 KiB After Width: | Height: | Size: 260 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.8 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 83 KiB |
Reference in New Issue
Block a user