From d012d77a7de8c5c73f1cd56e903044c9bfaa6fd0 Mon Sep 17 00:00:00 2001 From: Cheridan Date: Sun, 31 Aug 2014 23:58:06 -0500 Subject: [PATCH 1/4] Spirit Boards! Conflicts: icons/obj/objects.dmi tgstation.dme --- code/game/objects/structures/spirit_board.dm | 95 +++++++++++++++++++ icons/obj/objects.dmi | Bin 132155 -> 133029 bytes 2 files changed, 95 insertions(+) create mode 100644 code/game/objects/structures/spirit_board.dm diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm new file mode 100644 index 00000000000..524cd3e4efa --- /dev/null +++ b/code/game/objects/structures/spirit_board.dm @@ -0,0 +1,95 @@ +/obj/structure/spirit_board + name = "spirit board" + desc = "A wooden board with letters etched into it, used in seances." + icon = 'icons/obj/objects.dmi' + icon_state = "spirit_board" + density = 1 + anchored = 0 + var/virgin = 1 + var/cooldown = 0 + var/planchette = "A" + var/lastuser = null + +/obj/structure/spirit_board/proc/announce_to_ghosts() + for(var/mob/dead/observer/O in player_list) + if(O.client) + var/area/A = get_area(src) + if(A) + O << "\blue Someone has begun playing with a [src.name] in [A.name]!. (Teleport)" + +/obj/structure/spirit_board/examine() + desc = "[initial(desc)] The planchette is sitting at \"[planchette]\"." + ..() + +/obj/structure/spirit_board/attack_hand(mob/user as mob) + if(..()) + return + spirit_board_pick_letter(user) + + +/obj/structure/spirit_board/attack_ghost(mob/dead/observer/user as mob) + spirit_board_pick_letter(user) + + +/obj/structure/spirit_board/proc/spirit_board_pick_letter(var/mob/M) + if(!spirit_board_checks(M)) + return 0 + + if(virgin) + virgin = 0 + announce_to_ghosts() + + planchette = input("Choose the letter.", "Seance!") in list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z") + cooldown = world.time + lastuser = M.ckey + + var/turf/T = loc + sleep(rand(20,30)) + if(T == loc) + visible_message("The planchette slowly moves... and stops at the letter \"[planchette]\".") + + +/obj/structure/spirit_board/proc/spirit_board_checks(var/mob/M) + //cooldown + var/bonus = 0 + if(M.ckey == lastuser) + bonus = 10 //Give some other people a chance, hog. + + if(cooldown > world.time - (30 + bonus)) + return 0 //No feedback here, hiding the cooldown a little makes it harder to tell who's really picking letters. + + //lighting check + var/light_amount = 0 + var/turf/T = get_turf(src) + var/area/A = T.loc + var/ischapel = 0 + + if(A) + if(A.name == "Chapel") + ischapel = 1 + if(A.lighting_use_dynamic) + light_amount = T.lighting_lumcount + else + light_amount = 10 + + if(light_amount > 2) + M << "It's too bright here to use [src.name]!" + return 0 + + if(!ischapel) + return 0 + + //mobs in range check + var/users_in_range = 0 + for(var/mob/living/L in orange(1,src)) + if(L.ckey && L.client) + if((world.time - L.client.inactivity) < (world.time - 300) || L.stat != CONSCIOUS || L.restrained())//no playing with braindeads or corpses or handcuffed dudes. + M << "[L] doesn't seem to be paying attention..." + else + users_in_range++ + + if(users_in_range < 2) + M << "There aren't enough people use to the [src.name]!" + return 0 + + return 1 \ No newline at end of file diff --git a/icons/obj/objects.dmi b/icons/obj/objects.dmi index 2b8bef281c4d5c3f49c7f3a6c26d1354b0e2b53b..f526ddeee709a9ec013055302f86ed005a1a2463 100644 GIT binary patch delta 16372 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 Dfm7@j delta 15491 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 Date: Thu, 26 Mar 2015 20:10:45 +0100 Subject: [PATCH 2/4] fixstrangestuff --- code/game/objects/structures/spirit_board.dm | 11 ++++++----- paradise.dme | 1 + 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index 524cd3e4efa..6e415fafda8 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -11,11 +11,11 @@ var/lastuser = null /obj/structure/spirit_board/proc/announce_to_ghosts() - for(var/mob/dead/observer/O in player_list) - if(O.client) - var/area/A = get_area(src) - if(A) - O << "\blue Someone has begun playing with a [src.name] in [A.name]!. (Teleport)" + for(var/mob/dead/observer/O in player_list) + if(O.client) + var/area/A = get_area(src) + if(A) + O << "\blue Someone has begun playing with a [src.name] in [A.name]!. (Teleport)" /obj/structure/spirit_board/examine() desc = "[initial(desc)] The planchette is sitting at \"[planchette]\"." @@ -79,6 +79,7 @@ if(!ischapel) return 0 + //mobs in range check var/users_in_range = 0 for(var/mob/living/L in orange(1,src)) diff --git a/paradise.dme b/paradise.dme index 962e092d630..cedfd23fbe0 100644 --- a/paradise.dme +++ b/paradise.dme @@ -738,6 +738,7 @@ #include "code\game\objects\structures\safe.dm" #include "code\game\objects\structures\segway.dm" #include "code\game\objects\structures\signs.dm" +#include "code\game\objects\structures\spirit_board.dm" #include "code\game\objects\structures\tables_racks.dm" #include "code\game\objects\structures\tank_dispenser.dm" #include "code\game\objects\structures\target_stake.dm" From 6796dcce29800c56dc40c3c432eb205d691c706a Mon Sep 17 00:00:00 2001 From: Cheridan Date: Thu, 4 Sep 2014 00:42:06 -0500 Subject: [PATCH 3/4] Adds logging, fixes typo --- code/game/objects/structures/spirit_board.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index 6e415fafda8..1ddc8c24c4b 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -40,6 +40,7 @@ announce_to_ghosts() planchette = input("Choose the letter.", "Seance!") in list("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z") + add_logs(M, src, "picked a letter on", addition="which was \"[planchette]\".") cooldown = world.time lastuser = M.ckey @@ -90,7 +91,7 @@ users_in_range++ if(users_in_range < 2) - M << "There aren't enough people use to the [src.name]!" + M << "There aren't enough people to use the [src.name]!" return 0 return 1 \ No newline at end of file From 202f8e81d88bb60a1138408fc8c5cc4df0ef53d7 Mon Sep 17 00:00:00 2001 From: Tigercat2000 Date: Thu, 26 Mar 2015 21:03:23 +0100 Subject: [PATCH 4/4] Make actually work, grgrgr. --- code/game/objects/structures/spirit_board.dm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index 1ddc8c24c4b..d1be680de0a 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -63,11 +63,8 @@ var/light_amount = 0 var/turf/T = get_turf(src) var/area/A = T.loc - var/ischapel = 0 if(A) - if(A.name == "Chapel") - ischapel = 1 if(A.lighting_use_dynamic) light_amount = T.lighting_lumcount else @@ -77,10 +74,6 @@ M << "It's too bright here to use [src.name]!" return 0 - if(!ischapel) - return 0 - - //mobs in range check var/users_in_range = 0 for(var/mob/living/L in orange(1,src))