Merge branch 'master' of https://github.com/Citadel-Station-13/Citadel-Station-13 into Ghommie-cit765
This commit is contained in:
@@ -98,6 +98,46 @@
|
||||
restricted_desc = "Engineering, Security, and Cargo"
|
||||
restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
// orvilike "original" kepi
|
||||
/datum/gear/orvkepicom
|
||||
name = "Federation Kepi, command"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/command
|
||||
restricted_desc = "Heads of Staff"
|
||||
restricted_roles = list("Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Research Director", "Chief Medical Officer", "Quartermaster")
|
||||
|
||||
/datum/gear/orvkepiops
|
||||
name = "Federation Kepi, ops/sec"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/engsec
|
||||
restricted_desc = "Engineering, Security and Cargo"
|
||||
restricted_roles = list("Chief Engineer", "Atmospheric Technician", "Station Engineer", "Warden", "Detective", "Security Officer", "Head of Security", "Cargo Technician", "Shaft Miner", "Quartermaster")
|
||||
|
||||
/datum/gear/orvkepimedsci
|
||||
name = "Federation Kepi, medsci"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/medsci
|
||||
restricted_desc = "Medical and Science"
|
||||
restricted_roles = list("Chief Medical Officer", "Medical Doctor", "Chemist", "Virologist", "Paramedic", "Geneticist", "Research Director", "Scientist", "Roboticist")
|
||||
|
||||
/datum/gear/orvkepisrv
|
||||
name = "Federation Kepi, service"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi/service
|
||||
restricted_desc = "Service and Civilian, barring Clown, Mime and Lawyer"
|
||||
restricted_roles = list("Assistant", "Bartender", "Botanist", "Cook", "Curator", "Janitor", "Chaplain")
|
||||
|
||||
/datum/gear/orvkepiass
|
||||
name = "Federation Kepi, assistant"
|
||||
description = "A visored cap. Intended to be used with ORV uniform."
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi/orvi
|
||||
restricted_roles = list("Assistant")
|
||||
|
||||
/*Commenting out Until next Christmas or made automatic
|
||||
/datum/gear/santahatr
|
||||
name = "Red Santa Hat"
|
||||
@@ -137,3 +177,9 @@
|
||||
path = /obj/item/clothing/head/cowboyhat/sec
|
||||
restricted_desc = "Security"
|
||||
restricted_roles = list("Warden","Detective","Security Officer","Head of Security")
|
||||
|
||||
// Misc
|
||||
/datum/gear/wkepi
|
||||
name = "white kepi"
|
||||
category = SLOT_HEAD
|
||||
path = /obj/item/clothing/head/kepi
|
||||
|
||||
@@ -162,3 +162,21 @@
|
||||
/obj/item/clothing/head/caphat/formal/fedcover/black
|
||||
icon_state = "fedcapblack"
|
||||
item_state = "fedcapblack"
|
||||
|
||||
//orvilike caps
|
||||
/obj/item/clothing/head/kepi/orvi
|
||||
name = "\improper Federation kepi"
|
||||
desc = "A visored cap worn by all officers since 2550s."
|
||||
icon_state = "kepi_ass"
|
||||
|
||||
/obj/item/clothing/head/kepi/orvi/command
|
||||
icon_state = "kepi_com"
|
||||
|
||||
/obj/item/clothing/head/kepi/orvi/engsec
|
||||
icon_state = "kepi_ops"
|
||||
|
||||
/obj/item/clothing/head/kepi/orvi/medsci
|
||||
icon_state = "kepi_medsci"
|
||||
|
||||
/obj/item/clothing/head/kepi/orvi/service
|
||||
icon_state = "kepi_srv"
|
||||
|
||||
@@ -33,11 +33,14 @@
|
||||
var/datum/DBQuery/query_memocheck = SSdbcore.NewQuery("SELECT ckey FROM [format_table_name("mentor_memo")] WHERE ckey = '[sql_ckey]'")
|
||||
if(!query_memocheck.Execute())
|
||||
var/err = query_memocheck.ErrorMsg()
|
||||
qdel(query_memocheck)
|
||||
log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n")
|
||||
return
|
||||
if(query_memocheck.NextRow())
|
||||
qdel(query_memocheck)
|
||||
to_chat(src, "You already have set a memo.")
|
||||
return
|
||||
qdel(query_memocheck)
|
||||
var/memotext = input(src,"Write your Memo","Memo") as message
|
||||
if(!memotext)
|
||||
return
|
||||
@@ -46,20 +49,24 @@
|
||||
var/datum/DBQuery/query_memoadd = SSdbcore.NewQuery("INSERT INTO [format_table_name("mentor_memo")] (ckey, memotext, timestamp) VALUES ('[sql_ckey]', '[memotext]', '[timestamp]')")
|
||||
if(!query_memoadd.Execute())
|
||||
var/err = query_memoadd.ErrorMsg()
|
||||
qdel(query_memoadd)
|
||||
log_game("SQL ERROR adding new memo. Error : \[[err]\]\n")
|
||||
return
|
||||
log_admin("[key_name(src)] has set a mentor memo: [memotext]")
|
||||
message_admins("[key_name_admin(src)] has set a mentor memo:<br>[memotext]")
|
||||
qdel(query_memoadd)
|
||||
if("Edit")
|
||||
var/datum/DBQuery/query_memolist = SSdbcore.NewQuery("SELECT ckey FROM [format_table_name("mentor_memo")]")
|
||||
if(!query_memolist.Execute())
|
||||
var/err = query_memolist.ErrorMsg()
|
||||
qdel(query_memolist)
|
||||
log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n")
|
||||
return
|
||||
var/list/memolist = list()
|
||||
while(query_memolist.NextRow())
|
||||
var/lkey = query_memolist.item[1]
|
||||
memolist += "[lkey]"
|
||||
qdel(query_memolist)
|
||||
if(!memolist.len)
|
||||
to_chat(src, "No memos found in database.")
|
||||
return
|
||||
@@ -70,10 +77,12 @@
|
||||
var/datum/DBQuery/query_memofind = SSdbcore.NewQuery("SELECT memotext FROM [format_table_name("mentor_memo")] WHERE ckey = '[target_sql_ckey]'")
|
||||
if(!query_memofind.Execute())
|
||||
var/err = query_memofind.ErrorMsg()
|
||||
qdel(query_memofind)
|
||||
log_game("SQL ERROR obtaining memotext from memo table. Error : \[[err]\]\n")
|
||||
return
|
||||
if(query_memofind.NextRow())
|
||||
var/old_memo = query_memofind.item[1]
|
||||
qdel(query_memofind)
|
||||
var/new_memo = input("Input new memo", "New Memo", "[old_memo]", null) as message
|
||||
if(!new_memo)
|
||||
return
|
||||
@@ -83,6 +92,7 @@
|
||||
var/datum/DBQuery/update_query = SSdbcore.NewQuery("UPDATE [format_table_name("mentor_memo")] SET memotext = '[new_memo]', last_editor = '[sql_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE ckey = '[target_sql_ckey]'")
|
||||
if(!update_query.Execute())
|
||||
var/err = update_query.ErrorMsg()
|
||||
qdel(update_query)
|
||||
log_game("SQL ERROR editing memo. Error : \[[err]\]\n")
|
||||
return
|
||||
if(target_sql_ckey == sql_ckey)
|
||||
@@ -91,10 +101,14 @@
|
||||
else
|
||||
log_admin("[key_name(src)] has edited [target_sql_ckey]'s mentor memo from [old_memo] to [new_memo]")
|
||||
message_admins("[key_name_admin(src)] has edited [target_sql_ckey]'s mentor memo from<br>[old_memo]<br>to<br>[new_memo]")
|
||||
qdel(update_query)
|
||||
else
|
||||
qdel(query_memofind)
|
||||
if("Show")
|
||||
var/datum/DBQuery/query_memoshow = SSdbcore.NewQuery("SELECT ckey, memotext, timestamp, last_editor FROM [format_table_name("mentor_memo")]")
|
||||
if(!query_memoshow.Execute())
|
||||
var/err = query_memoshow.ErrorMsg()
|
||||
qdel(query_memoshow)
|
||||
log_game("SQL ERROR obtaining ckey, memotext, timestamp, last_editor from memo table. Error : \[[err]\]\n")
|
||||
return
|
||||
var/output = null
|
||||
@@ -107,6 +121,7 @@
|
||||
if(last_editor)
|
||||
output += "<br><span class='memoedit'>Last edit by [last_editor] <A href='?_src_=holder;mentormemoeditlist=[ckey]'>(Click here to see edit log)</A></span>"
|
||||
output += "<br>[memotext]</span><br>"
|
||||
qdel(query_memoshow)
|
||||
if(!output)
|
||||
to_chat(src, "No memos found in database.")
|
||||
return
|
||||
@@ -115,12 +130,14 @@
|
||||
var/datum/DBQuery/query_memodellist = SSdbcore.NewQuery("SELECT ckey FROM [format_table_name("mentor_memo")]")
|
||||
if(!query_memodellist.Execute())
|
||||
var/err = query_memodellist.ErrorMsg()
|
||||
qdel(query_memodellist)
|
||||
log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n")
|
||||
return
|
||||
var/list/memolist = list()
|
||||
while(query_memodellist.NextRow())
|
||||
var/ckey = query_memodellist.item[1]
|
||||
memolist += "[ckey]"
|
||||
qdel(query_memodellist)
|
||||
if(!memolist.len)
|
||||
to_chat(src, "No memos found in database.")
|
||||
return
|
||||
@@ -131,6 +148,7 @@
|
||||
var/datum/DBQuery/query_memodel = SSdbcore.NewQuery("DELETE FROM [format_table_name("memo")] WHERE ckey = '[target_sql_ckey]'")
|
||||
if(!query_memodel.Execute())
|
||||
var/err = query_memodel.ErrorMsg()
|
||||
qdel(query_memodel)
|
||||
log_game("SQL ERROR removing memo. Error : \[[err]\]\n")
|
||||
return
|
||||
if(target_sql_ckey == sql_ckey)
|
||||
@@ -138,4 +156,4 @@
|
||||
message_admins("[key_name_admin(src)] has removed their mentor memo.")
|
||||
else
|
||||
log_admin("[key_name(src)] has removed [target_sql_ckey]'s mentor memo.")
|
||||
message_admins("[key_name_admin(src)] has removed [target_sql_ckey]'s mentor memo.")
|
||||
message_admins("[key_name_admin(src)] has removed [target_sql_ckey]'s mentor memo.")
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
if(C.is_mentor())
|
||||
if(is_mentor())//both are mentors
|
||||
to_chat(C, "<span class='purple'>Mentor PM from-<b>[key_name_mentor(src, C, 1, 0, 0)]</b>: [msg]</span>")
|
||||
to_chat(src, "<span class='green'>Mentor PM to-<b>[key_name_mentor(C, C, 1, 0, 0)]</b>: [msg]</font>")
|
||||
to_chat(src, "<span class='blue'>Mentor PM to-<b>[key_name_mentor(C, C, 1, 0, 0)]</b>: [msg]</font>")
|
||||
|
||||
else //recipient is a mentor but sender is not
|
||||
to_chat(C, "<span class='purple'>Reply PM from-<b>[key_name_mentor(src, C, 1, 0, show_char)]</b>: [msg]</span>")
|
||||
|
||||
@@ -244,3 +244,21 @@
|
||||
user.nextsoundemote = world.time + 7
|
||||
var/sound = pick('modular_citadel/sound/voice/bark1.ogg', 'modular_citadel/sound/voice/bark2.ogg')
|
||||
playsound(user, sound, 50, 1, -1)
|
||||
|
||||
/datum/emote/living/squish
|
||||
key = "squish"
|
||||
key_third_person = "squishes"
|
||||
message = "squishes!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
muzzle_ignore = FALSE
|
||||
restraint_check = FALSE
|
||||
mob_type_allowed_typecache = list(/mob/living/carbon, /mob/living/silicon/pai)
|
||||
|
||||
/datum/emote/living/squish/run_emote(mob/living/user, params)
|
||||
if(!(. = ..()))
|
||||
return
|
||||
if(user.nextsoundemote >= world.time)
|
||||
return
|
||||
user.nextsoundemote = world.time + 7
|
||||
var/sound = pick('sound/voice/slime_squish.ogg')
|
||||
playsound(user, sound, 50, 1, -1)
|
||||
|
||||
@@ -200,10 +200,10 @@
|
||||
|
||||
/datum/reagent/fermi/zeolites
|
||||
name = "Artificial Zeolites"
|
||||
description = "Lab made Zeolite, used to clear radiation form people and items alike! Splashing just a small amounts(5u) onto any item can clear away large amouts of contamination."
|
||||
description = "Lab made Zeolite, used to clear radiation from people and items alike! Splashing just a small amount(5u) onto any item can clear away large amounts of contamination."
|
||||
pH = 8
|
||||
color = "#FFDADA"
|
||||
metabolization_rate = 8 * REAGENTS_METABOLISM //Lastes not long in body but heals a lot!
|
||||
metabolization_rate = 8 * REAGENTS_METABOLISM //Metabolizes fast but heals a lot!
|
||||
value = REAGENT_VALUE_COMMON
|
||||
|
||||
/datum/reagent/fermi/zeolites/on_mob_life(mob/living/carbon/M)
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
if(amount_to_spawn <= 0)
|
||||
amount_to_spawn = 1
|
||||
for(var/i in 1 to amount_to_spawn)
|
||||
var/mob/living/simple_animal/slime/S = new(T,"green")
|
||||
var/mob/living/simple_animal/slime/S = new(T,"pyrite")
|
||||
S.damage_coeff = list(BRUTE = 0.9 , BURN = 2, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1)
|
||||
S.name = "Living teratoma"
|
||||
S.real_name = "Living teratoma"
|
||||
|
||||
Reference in New Issue
Block a user