diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index 61fd4bb9b18..1fbf4b5e8d0 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -97,6 +97,8 @@ var/assistant_maint = 0 //Do assistants get maint access? var/gateway_delay = 18000 //How long the gateway takes before it activates. Default is half an hour. + var/ghost_interaction = 0 + /datum/configuration/New() var/list/L = typesof(/datum/game_mode) - /datum/game_mode @@ -353,6 +355,9 @@ if("continuous_rounds") config.continous_rounds = 1 + if("ghost_interaction") + config.ghost_interaction = 1 + else diary << "Unknown setting in configuration: '[name]'" diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index 447913d225b..4176d3cd62a 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -49,14 +49,19 @@ set category = "Object" set src in oview(1) - if(!usr || !isturf(usr.loc)) - return - if(usr.stat || usr.restrained()) + if(config.ghost_interaction) + src.dir = turn(src.dir, 90) + handle_rotation() return + else + if(!usr || !isturf(usr.loc)) + return + if(usr.stat || usr.restrained()) + return - src.dir = turn(src.dir, 90) - handle_rotation() - return + src.dir = turn(src.dir, 90) + handle_rotation() + return /obj/structure/stool/bed/chair/MouseDrop_T(mob/M as mob, mob/user as mob) if(!istype(M)) return diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index ff078aab98a..dfc4aa244c8 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -200,7 +200,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has [pick("bit","slashed")] []!", src), 1) + O.show_message(text("\red The [M.name] glomps []!", src), 1) var/damage = rand(1, 3) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index b5fbf23bef2..43ef43b15ea 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -225,7 +225,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has [pick("bit","slashed")] []!", src), 1) + O.show_message(text("\red The [M.name] glomps []!", src), 1) var/damage = rand(1, 3) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 5fb2a58b69a..7cc8a1b0ff4 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -280,7 +280,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has [pick("bit","slashed")] []!", src), 1) + O.show_message(text("\red The [M.name] glomps []!", src), 1) var/damage = rand(1, 3) diff --git a/code/modules/mob/living/carbon/metroid/metroid.dm b/code/modules/mob/living/carbon/metroid/metroid.dm index 3ec79ec673e..5357bd38641 100644 --- a/code/modules/mob/living/carbon/metroid/metroid.dm +++ b/code/modules/mob/living/carbon/metroid/metroid.dm @@ -298,7 +298,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has bit []!", src), 1) + O.show_message(text("\red The [M.name] has glomped []!", src), 1) var/damage = rand(1, 3) attacked += 5 diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 1a44be5197e..c261972b5fc 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -348,7 +348,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has [pick("bit","slashed")] []!", src), 1) + O.show_message(text("\red The [M.name] glomps []!", src), 1) var/damage = rand(1, 3) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 24d0ecdb1f7..80e57579e99 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -649,7 +649,7 @@ for(var/mob/O in viewers(src, null)) if ((O.client && !( O.blinded ))) - O.show_message(text("\red The [M.name] has [pick("bit","slashed")] []!", src), 1) + O.show_message(text("\red The [M.name] glomps []!", src), 1) var/damage = rand(1, 3) diff --git a/config/config.txt b/config/config.txt index de368b284a5..559844f6c07 100644 --- a/config/config.txt +++ b/config/config.txt @@ -189,4 +189,7 @@ GATEWAY_DELAY 18000 ## Remove the # to make rounds which end instantly (Rev, Wizard, Malf) to continue until the shuttle is called or the station is nuked. ## Malf and Rev will let the shuttle be called when the antags/protags are dead. -#CONTINUOUS_ROUNDS \ No newline at end of file +#CONTINUOUS_ROUNDS + +##Remove the # to let ghosts spin chairs +#GHOST_INTERACTION \ No newline at end of file