* Ghost bar initial changes

* more changes

* we ball again brothers

* we are (once again) SO back

* Update code/modules/admin/verbs/debug.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>

* Update code/_onclick/hud/alert.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>

* Update code/_onclick/hud/alert.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/game/objects/items/weapons/cards_ids.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* deck of cards and shittt

* global placement

* Update code/modules/ruins/ghost_bar.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* readded

* hotfix

* zamn

* fixes

* greyfix

* last of the fixes

* can't stop me baby

* bam

---------

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
This commit is contained in:
GDN
2023-10-09 13:47:17 -05:00
committed by GitHub
parent b02ce067bf
commit 6df2c2e3d2
72 changed files with 2640 additions and 1123 deletions
+1
View File
@@ -361,6 +361,7 @@
var/mob/dead/observer/chosen = pick(candidates)
S.key = chosen.key
S.mind.special_role = SPECIAL_ROLE_PYROCLASTIC_SLIME
dust_if_respawnable(chosen)
log_game("[key_name(S.key)] was made into a slime by pyroclastic anomaly at [AREACOORD(T)].")
/////////////////////
+1
View File
@@ -198,6 +198,7 @@
var/mob/C = pick(candidates)
if(C)
S.key = C.key
dust_if_respawnable(C)
if(S.master_commander)
to_chat(S, "<span class='biggerdanger'>You are a spider who is loyal to [S.master_commander], obey [S.master_commander]'s every order and assist [S.master_commander.p_them()] in completing [S.master_commander.p_their()] goals at any cost.</span>")
qdel(src)
@@ -20,6 +20,8 @@ GLOBAL_LIST_INIT(default_medbay_channels, list(
num2text(MED_I_FREQ) = list(ACCESS_MEDICAL)
))
GLOBAL_LIST_EMPTY(deadsay_radio_systems)
/obj/item/radio
icon = 'icons/obj/radio.dmi'
name = "station bounced radio"
@@ -795,3 +797,48 @@ GLOBAL_LIST_INIT(default_medbay_channels, list(
/obj/item/radio/phone/medbay/New()
..()
internal_channels = GLOB.default_medbay_channels.Copy()
/obj/item/radio/proc/attempt_send_deadsay_message(mob/subject, message)
return
/obj/item/radio/headset/deadsay
name = "spectral radio"
ks2type = /obj/item/encryptionkey/centcom
/obj/item/radio/headset/deadsay/New()
..()
GLOB.deadsay_radio_systems.Add(src)
make_syndie()
/obj/item/radio/headset/deadsay/Destroy()
GLOB.deadsay_radio_systems.Remove(src)
return ..()
/obj/item/radio/headset/deadsay/screwdriver_act(mob/user, obj/item/I)
return
/obj/item/radio/headset/deadsay/attempt_send_deadsay_message(mob/subject, message)
if(!listening)
return
var/mob/hearer = loc // if people want dchat to shut up, they shouldn't need to deal with other people's headsets
if(!istype(hearer) || hearer.stat || !hearer.can_hear())
return
if(!hearer.get_preference(PREFTOGGLE_CHAT_DEAD))
return
var/speaker_name
if(!subject || subject.client.prefs.toggles2 & PREFTOGGLE_2_ANON)
subject ? (speaker_name = "<i>Anon</i> ([subject.mind.name])") : (speaker_name = "<i>Anon</i>")
else
speaker_name = "[subject.client.key] ([subject.mind.name])"
to_chat(hearer, "<span class='deadsay'><b>[speaker_name]</b> ([ghost_follow_link(subject, hearer)]) [message]</span>")
/obj/item/radio/headset/deadsay/talk_into(mob/living/M, list/message_pieces, channel, verbage)
var/message = sanitize(copytext(multilingual_to_message(message_pieces), 1, MAX_MESSAGE_LEN))
if(!message)
return
return M.say_dead(message)
@@ -385,6 +385,12 @@
name = "agent card"
initial_access = list(ACCESS_MAINT_TUNNELS, ACCESS_VOX, ACCESS_EXTERNAL_AIRLOCKS)
/obj/item/card/id/syndicate/ghost_bar
name = "ghost bar identification card"
assignment = "Ghost Bar Occupant"
initial_access = list() // This is for show, they don't need actual accesses
icon_state = "assistant"
/obj/item/card/id/syndicate/command
initial_access = list(ACCESS_MAINT_TUNNELS, ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER, ACCESS_SYNDICATE_COMMAND, ACCESS_EXTERNAL_AIRLOCKS)
icon_state = "commander"
+1
View File
@@ -296,6 +296,7 @@
var/mob/dead/observer/C = pick(candidates)
message_admins("[ADMIN_LOOKUPFLW(C)] was spawned as Dice Servant")
H.key = C.key
dust_if_respawnable(C)
to_chat(H, "<span class='notice'>You are a servant of [user.real_name]. You must do everything in your power to follow their orders.</span>")
var/obj/effect/proc_holder/spell/summonmob/S = new
@@ -294,6 +294,7 @@
S.real_name = name
S.name = name
S.ckey = theghost.ckey
dust_if_respawnable(theghost)
var/input = stripped_input(S, "What are you named?", null, "", MAX_NAME_LEN)
if(src && input)
@@ -78,6 +78,9 @@
if(istype(I, /obj/item/grab))
user.changeNext_move(CLICK_CD_MELEE)
var/obj/item/grab/G = I
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='danger'>Swirling [G.affecting] might hurt them!</span>")
return
if(!G.confirm())
return
if(isliving(G.affecting))
@@ -204,6 +207,9 @@
var/obj/item/grab/G = I
if(!G.confirm())
return
if(HAS_TRAIT(user, TRAIT_PACIFISM))
to_chat(user, "<span class='danger'>Slamming [G.affecting] into [src] might hurt them!</span>")
return
if(isliving(G.affecting))
var/mob/living/GM = G.affecting
if(G.state >= GRAB_AGGRESSIVE)