From 19f684d1b7998170315172960d6e33cf22eed8ea Mon Sep 17 00:00:00 2001 From: Citinited Date: Sat, 14 Apr 2018 00:43:40 +0100 Subject: [PATCH 1/8] Allows paper to have variably-sized window --- code/modules/paperwork/paper.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 34a447306db..68d74d57a5d 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -34,6 +34,8 @@ var/contact_poison // Reagent ID to transfer on contact var/contact_poison_volume = 0 var/contact_poison_poisoner = null + var/paper_width = 400//Width of the window that opens + var/paper_height = 400//Height of the window that opens var/const/deffont = "Verdana" var/const/signfont = "Times New Roman" @@ -72,12 +74,12 @@ if((!user.say_understands(null, all_languages["Galactic Common"]) && !forceshow) || forcestars) //assuming all paper is written in common is better than hardcoded type checks data = "[name][stars(info)][stamps]" if(view) - usr << browse(data, "window=[name]") + usr << browse(data, "window=[name];size=[paper_width]x[paper_height]") onclose(usr, "[name]") else data = "[name][infolinks ? info_links : info][stamps]" if(view) - usr << browse(data, "window=[name]") + usr << browse(data, "window=[name];size=[paper_width]x[paper_height]") onclose(usr, "[name]") return data From b60eb67202165bd0d9d6b6c7f64e7334e8f01dea Mon Sep 17 00:00:00 2001 From: Citinited Date: Sat, 14 Apr 2018 01:06:11 +0100 Subject: [PATCH 2/8] Adds fortunes to fortune cookies --- code/_globalvars/lists/fortunes.dm | 21 ++++++++++++++++++++ code/modules/food_and_drinks/food/snacks.dm | 9 +++++++++ code/modules/paperwork/paper.dm | 15 ++++++++++++++ icons/obj/bureaucracy.dmi | Bin 20140 -> 20348 bytes paradise.dme | 3 ++- 5 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 code/_globalvars/lists/fortunes.dm diff --git a/code/_globalvars/lists/fortunes.dm b/code/_globalvars/lists/fortunes.dm new file mode 100644 index 00000000000..0ccf794d6b0 --- /dev/null +++ b/code/_globalvars/lists/fortunes.dm @@ -0,0 +1,21 @@ +var/global/list/fortune_cookie_messages = list("A woman named [pick(first_names_female)] may have an opportunity for you.", +"A man named [pick(first_names_male)] may have an opportunity for you.", +"If you feel you are right, stand firmly by your convictions.", +"A stranger is a friend you have not spoken to yet.", +"Yesterday, you said tomorrow. Just do it!", +"Luck always favours the prepared mind.", +"Failure is the mother of success.", +"A rolling stone gathers no moss.", +"When life gives you lemons, make lemonade.", +"You will inherit some money or a small piece of land.", +"Happy news is on its way to you.", +"You will live a long, happy life.", +"When one door closes, another opens.", +"Life is a canvas, and you are its painter.", +"Failure to prepare is to prepare to fail.", +"Beware the robot that thinks for itself.", +"A foolish man listens to his heart.
A wise man listens to cookies.", +"A chance meeting opens new doors to success and friendship.", +"The greatest danger could be your stupidity.", +"He who laughs at himself never runs out of things to laugh at.", +"Help! I'm being held prisoner in a Nanotrasen bakery!") diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index c9885f9cf80..41275152a9c 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -1054,6 +1054,15 @@ icon_state = "fortune_cookie" filling_color = "#E8E79E" list_reagents = list("nutriment" = 3) + var/obj/item/weapon/paper/fortune/F + +/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/New() + ..() + F = new /obj/item/weapon/paper/fortune(src) + +/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/Post_Consume(mob/living/carbon/human/user) + to_chat(user, "[F] falls out of [src]!") + user.put_in_hands(F) /obj/item/weapon/reagent_containers/food/snacks/badrecipe name = "Burned mess" diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 68d74d57a5d..446718986f2 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -478,6 +478,21 @@ /obj/item/weapon/paper/crumpled/bloody icon_state = "scrap_bloodied" +/obj/item/weapon/paper/fortune + name = "fortune" + icon_state = "slip" + paper_height = 150 + var/fortunemessage + +/obj/item/weapon/paper/fortune/New() + ..() + var/fortunemessage = pick(fortune_cookie_messages) + info = "

[fortunemessage]

" + info += "Lucky numbers: [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)]" + +/obj/item/weapon/paper/fortune/update_icon() + ..() + icon_state = initial(icon_state) /* * Premade paper */ diff --git a/icons/obj/bureaucracy.dmi b/icons/obj/bureaucracy.dmi index 720fafd884796d0dae915e79af27a24515992e7c..8593012e52833d977ba48998bddde3c084668149 100644 GIT binary patch literal 20348 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 literal 20140 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

PnD^pN>zHI-@9JWW2{>~~WmZ~~xA>Xf6c;y4y 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 Bwn_j1 diff --git a/paradise.dme b/paradise.dme index 56dc61e5140..ea3daa4b847 100644 --- a/paradise.dme +++ b/paradise.dme @@ -100,6 +100,7 @@ #include "code\_globalvars\station.dm" #include "code\_globalvars\unused.dm" #include "code\_globalvars\lists\flavor_misc.dm" +#include "code\_globalvars\lists\fortunes.dm" #include "code\_globalvars\lists\misc.dm" #include "code\_globalvars\lists\mobs.dm" #include "code\_globalvars\lists\names.dm" @@ -206,8 +207,8 @@ #include "code\controllers\ProcessScheduler\core\processScheduler.dm" #include "code\controllers\subsystem\air.dm" #include "code\controllers\subsystem\fires.dm" -#include "code\controllers\subsystem\nightshift.dm" #include "code\controllers\subsystem\nanoui.dm" +#include "code\controllers\subsystem\nightshift.dm" #include "code\controllers\subsystem\spacedrift.dm" #include "code\controllers\subsystem\sun.dm" #include "code\controllers\subsystem\throwing.dm" From e352741f2b509ad1077d961f91bbe8a75341f9fe Mon Sep 17 00:00:00 2001 From: Citinited Date: Sat, 14 Apr 2018 14:17:06 +0100 Subject: [PATCH 3/8] Keeps old fortune cookie behaviour if a non-blank paper is used in the recipe --- code/modules/food_and_drinks/food/snacks.dm | 10 +--------- .../food_and_drinks/recipes/recipes_oven.dm | 18 ++++++------------ 2 files changed, 7 insertions(+), 21 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index ca0c1bd2e7c..049f78fa5f9 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -1054,15 +1054,7 @@ icon_state = "fortune_cookie" filling_color = "#E8E79E" list_reagents = list("nutriment" = 3) - var/obj/item/weapon/paper/fortune/F - -/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/New() - ..() - F = new /obj/item/weapon/paper/fortune(src) - -/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/Post_Consume(mob/living/carbon/human/user) - to_chat(user, "[F] falls out of [src]!") - user.put_in_hands(F) + trash = /obj/item/weapon/paper /obj/item/weapon/reagent_containers/food/snacks/badrecipe name = "Burned mess" diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.dm b/code/modules/food_and_drinks/recipes/recipes_oven.dm index a1b684d9343..2fcb2eb95a0 100644 --- a/code/modules/food_and_drinks/recipes/recipes_oven.dm +++ b/code/modules/food_and_drinks/recipes/recipes_oven.dm @@ -180,21 +180,15 @@ result = /obj/item/weapon/reagent_containers/food/snacks/fortunecookie /datum/recipe/oven/fortunecookie/make_food(obj/container) - var/obj/item/weapon/paper/paper = locate() in container - paper.loc = null //prevent deletion + var/obj/item/weapon/paper/P = locate() in container var/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/being_cooked = ..() - paper.loc = being_cooked - being_cooked.trash = paper //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn + if(P.info) + P.loc = being_cooked //Prevents the oven deleting our paper + being_cooked.trash = P //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn + else + being_cooked.trash = new /obj/item/weapon/paper/fortune(being_cooked) return being_cooked -/datum/recipe/oven/fortunecookie/check_items(obj/container) - . = ..() - if(.) - var/obj/item/weapon/paper/paper = locate() in container - if(!paper || !paper.info) - return -1 - return . - /datum/recipe/oven/pizzamargherita items = list( /obj/item/weapon/reagent_containers/food/snacks/sliceable/flatdough, From b66c700a638b4e7fc5085ffd97d478306d3085f2 Mon Sep 17 00:00:00 2001 From: Citinited Date: Sat, 14 Apr 2018 16:40:25 +0100 Subject: [PATCH 4/8] tigercat & falseincarnate code suggestions --- code/_globalvars/lists/fortunes.dm | 4 ++-- code/modules/food_and_drinks/food/snacks.dm | 2 +- code/modules/food_and_drinks/recipes/recipes_oven.dm | 7 +++---- code/modules/paperwork/paper.dm | 2 +- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/code/_globalvars/lists/fortunes.dm b/code/_globalvars/lists/fortunes.dm index 0ccf794d6b0..409f7d10392 100644 --- a/code/_globalvars/lists/fortunes.dm +++ b/code/_globalvars/lists/fortunes.dm @@ -1,4 +1,4 @@ -var/global/list/fortune_cookie_messages = list("A woman named [pick(first_names_female)] may have an opportunity for you.", +GLOBAL_LIST_INIT(fortune_cookie_messages, list("A woman named [pick(first_names_female)] may have an opportunity for you.", "A man named [pick(first_names_male)] may have an opportunity for you.", "If you feel you are right, stand firmly by your convictions.", "A stranger is a friend you have not spoken to yet.", @@ -18,4 +18,4 @@ var/global/list/fortune_cookie_messages = list("A woman named [pick(first_names_ "A chance meeting opens new doors to success and friendship.", "The greatest danger could be your stupidity.", "He who laughs at himself never runs out of things to laugh at.", -"Help! I'm being held prisoner in a Nanotrasen bakery!") +"Help! I'm being held prisoner in a Nanotrasen bakery!")) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 049f78fa5f9..0e5009a1225 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -1054,7 +1054,7 @@ icon_state = "fortune_cookie" filling_color = "#E8E79E" list_reagents = list("nutriment" = 3) - trash = /obj/item/weapon/paper + trash = /obj/item/weapon/paper/fortune /obj/item/weapon/reagent_containers/food/snacks/badrecipe name = "Burned mess" diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.dm b/code/modules/food_and_drinks/recipes/recipes_oven.dm index 2fcb2eb95a0..95dfa1c77dd 100644 --- a/code/modules/food_and_drinks/recipes/recipes_oven.dm +++ b/code/modules/food_and_drinks/recipes/recipes_oven.dm @@ -181,12 +181,11 @@ /datum/recipe/oven/fortunecookie/make_food(obj/container) var/obj/item/weapon/paper/P = locate() in container + P.loc = null //So we don't delete the paper while cooking the cookie var/obj/item/weapon/reagent_containers/food/snacks/fortunecookie/being_cooked = ..() - if(P.info) - P.loc = being_cooked //Prevents the oven deleting our paper + if(P.info) //If there's anything written on the paper, just move it into the fortune cookie + P.forceMove(being_cooked) //Prevents the oven deleting our paper being_cooked.trash = P //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn - else - being_cooked.trash = new /obj/item/weapon/paper/fortune(being_cooked) return being_cooked /datum/recipe/oven/pizzamargherita diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 446718986f2..b15c5bc7fe2 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -486,7 +486,7 @@ /obj/item/weapon/paper/fortune/New() ..() - var/fortunemessage = pick(fortune_cookie_messages) + var/fortunemessage = pick(GLOB.fortune_cookie_messages) info = "

[fortunemessage]

" info += "Lucky numbers: [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)]" From 5f4b2eef0a0af7885b47ea6920785cbb55628e40 Mon Sep 17 00:00:00 2001 From: Citinited Date: Sun, 15 Apr 2018 16:40:55 +0100 Subject: [PATCH 5/8] More fortunes --- code/_globalvars/lists/fortunes.dm | 44 +++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/code/_globalvars/lists/fortunes.dm b/code/_globalvars/lists/fortunes.dm index 409f7d10392..546e33f913f 100644 --- a/code/_globalvars/lists/fortunes.dm +++ b/code/_globalvars/lists/fortunes.dm @@ -1,21 +1,57 @@ -GLOBAL_LIST_INIT(fortune_cookie_messages, list("A woman named [pick(first_names_female)] may have an opportunity for you.", -"A man named [pick(first_names_male)] may have an opportunity for you.", -"If you feel you are right, stand firmly by your convictions.", +GLOBAL_LIST_INIT(fortune_cookie_messages, list("If you feel you are right, stand firmly by your convictions.", "A stranger is a friend you have not spoken to yet.", "Yesterday, you said tomorrow. Just do it!", +"Do, or do not. There is no try.", +"Fear leads to anger. Anger leads to hate. Hate leads to suffering.", "Luck always favours the prepared mind.", +"A smile is your passport into the hearts of others.", +"Hard work pays off in the future, laziness pays off now.", +"Change can hurt, but it leads a path to something better.", +"If winter comes soon, can spring be far behind?", +"Love with your heart; use your head for everything else.", +"The man on the top of the mountain did not fall there.", +"The greatest risk is not taking one.", +"Strategy without tactics is the slowest route to victory.
Tactics without strategy is the noise before defeat.", +"If you are far from the enemy, make him believe you are near.", +"He who knows when he can fight and when he cannot, will be victorious.", +"A clever person solves a problem. A wise person avoids it.", +"When fighting for freedom, never wear new pants.", +"If you want the rainbow, you must put up with the rain.", +"Get ready! Good fortune comes in bunches.", +"An exciting opportunity lies ahead of you.", +"A journey of a thousand miles begins with a single step.", +"Expect the unexpected.", +"Live this day as if it were your last.", +"Remember the compliments you receive; forget the insults.", +"A chance meeting opens new doors to success and friendship.", "Failure is the mother of success.", "A rolling stone gathers no moss.", "When life gives you lemons, make lemonade.", "You will inherit some money or a small piece of land.", "Happy news is on its way to you.", +"A pleasant surprise is in store for you.", +"You will be invited to an exciting event.", +"Keep your plans secret for now.", "You will live a long, happy life.", "When one door closes, another opens.", "Life is a canvas, and you are its painter.", "Failure to prepare is to prepare to fail.", "Beware the robot that thinks for itself.", +"The early bird gets the worm, but the second mouse gets the cheese.", +"Don't pursue happiness - create it.", +"Courage is not the absence of fear; it is the conquest of it.", +"All things are difficult before they are easy.", +"A ship in harbour is safe, but that's not why ships are built.", +"Hardly anyone knows how much is gained by ignoring the future.", +"The wise man is the one that makes you think that he is dumb.", +"Hatred outlives the hateful.", +"The fatal flaw in every plan is the assumption that you know more than the enemy", +"A journey of a thousand miles begins with a single step.", +"Dig the well before you are thirsty.", +"Be not afraid of growing slowly, be afraid only of standing still.", +"Do not remove a fly from your friend's forehead with a hatchet.", "A foolish man listens to his heart.
A wise man listens to cookies.", -"A chance meeting opens new doors to success and friendship.", +"Thank you! But your fortune is in another cookie!", "The greatest danger could be your stupidity.", "He who laughs at himself never runs out of things to laugh at.", "Help! I'm being held prisoner in a Nanotrasen bakery!")) From 434a23d016f5c2b32899c1e480f0aa0028ed5604 Mon Sep 17 00:00:00 2001 From: Citinited Date: Sun, 15 Apr 2018 21:33:38 +0100 Subject: [PATCH 6/8] p tag instead of span tag --- code/modules/paperwork/paper.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index b15c5bc7fe2..bb2d4b05e39 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -488,7 +488,7 @@ ..() var/fortunemessage = pick(GLOB.fortune_cookie_messages) info = "

[fortunemessage]

" - info += "Lucky numbers: [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)]" + info += "

Lucky numbers: [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)]

" /obj/item/weapon/paper/fortune/update_icon() ..() From 452e2b723a57fd636703d538305665e0a2b1e4f4 Mon Sep 17 00:00:00 2001 From: Citinited Date: Fri, 20 Apr 2018 19:41:57 +0100 Subject: [PATCH 7/8] fortune cookies aren't weapons silly --- code/modules/food_and_drinks/food/snacks.dm | 2 +- code/modules/paperwork/paper.dm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 99c0681b43c..6242b50c2e1 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -1054,7 +1054,7 @@ icon_state = "fortune_cookie" filling_color = "#E8E79E" list_reagents = list("nutriment" = 3) - trash = /obj/item/weapon/paper/fortune + trash = /obj/item/paper/fortune /obj/item/reagent_containers/food/snacks/badrecipe name = "Burned mess" diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 3f1072a4d22..0b725b729ae 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -478,19 +478,19 @@ /obj/item/paper/crumpled/bloody icon_state = "scrap_bloodied" -/obj/item/weapon/paper/fortune +/obj/item/paper/fortune name = "fortune" icon_state = "slip" paper_height = 150 var/fortunemessage -/obj/item/weapon/paper/fortune/New() +/obj/item/paper/fortune/New() ..() var/fortunemessage = pick(GLOB.fortune_cookie_messages) info = "

[fortunemessage]

" info += "

Lucky numbers: [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)], [rand(1,49)]

" -/obj/item/weapon/paper/fortune/update_icon() +/obj/item/paper/fortune/update_icon() ..() icon_state = initial(icon_state) /* From b43ffe380fc54e5c443358e4835ef69209ead7e3 Mon Sep 17 00:00:00 2001 From: Citinited Date: Sat, 9 Jun 2018 22:54:22 +0100 Subject: [PATCH 8/8] Removes unused var; deletes blank paper once cooked --- code/modules/food_and_drinks/recipes/recipes_oven.dm | 2 ++ code/modules/paperwork/paper.dm | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.dm b/code/modules/food_and_drinks/recipes/recipes_oven.dm index 9405f5b13d9..711b8ac7a26 100644 --- a/code/modules/food_and_drinks/recipes/recipes_oven.dm +++ b/code/modules/food_and_drinks/recipes/recipes_oven.dm @@ -186,6 +186,8 @@ if(P.info) //If there's anything written on the paper, just move it into the fortune cookie P.forceMove(being_cooked) //Prevents the oven deleting our paper being_cooked.trash = P //so the paper is left behind as trash without special-snowflake(TM Nodrak) code ~carn + else + qdel(P) return being_cooked /datum/recipe/oven/pizzamargherita diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 0b725b729ae..813413d9f33 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -482,7 +482,6 @@ name = "fortune" icon_state = "slip" paper_height = 150 - var/fortunemessage /obj/item/paper/fortune/New() ..()