From ace20e2dcd4213e5e4e1ebf922934f02669c97ae Mon Sep 17 00:00:00 2001 From: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Date: Wed, 29 Jan 2025 11:48:30 -0500 Subject: [PATCH] Wiki books opens a page in-game again (#89250) ## About The Pull Request Wiki is currently down but this should work once it's back. If you're on 516 or above it will open the page in-game, if you're still on 515 then it'll do the old behavior from the PR linked in the why it's good for the game section. ## Why It's Good For The Game In https://github.com/tgstation/tgstation/pull/86891 this was removed "Until 516 with webview2 releases", well it's here now so we're fvckin back ## Changelog :cl: qol: The wiki books for users on 516 no longer opens the page on an external website on your browser. /:cl: --- code/game/objects/items/wiki_manuals.dm | 38 +++++++++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/wiki_manuals.dm b/code/game/objects/items/wiki_manuals.dm index d64c565f04a..671f408557c 100644 --- a/code/game/objects/items/wiki_manuals.dm +++ b/code/game/objects/items/wiki_manuals.dm @@ -1,5 +1,31 @@ // Wiki books that are linked to the configured wiki link. +/// The size of the window that the wiki books open in. +#define BOOK_WINDOW_BROWSE_SIZE "970x710" +/// This macro will resolve to code that will open up the associated wiki page in the window. +#define WIKI_PAGE_IFRAME(wikiurl, link_identifier) {" + +
+ + + + + +You start skimming through the manual...
+ + + + "} + // A book that links to the wiki /obj/item/book/manual/wiki starting_content = "Nanotrasen presently does not have any resources on this topic. If you would like to know more, contact your local Central Command representative." // safety @@ -12,9 +38,12 @@ user.balloon_alert(user, "this book is empty!") return credit_book_to_reader(user) - if(tgui_alert(user, "This book's page will open in your browser. Are you sure?", "Open The Wiki", list("Yes", "No")) != "Yes") - return - usr << link("[wiki_url]/[page_link]") + if(user.client.byond_version < 516) //Remove this once 516 is stable + if(tgui_alert(user, "This book's page will open in your browser. Are you sure?", "Open The Wiki", list("Yes", "No")) != "Yes") + return + DIRECT_OUTPUT(user, link("[wiki_url]/[page_link]")) + else + DIRECT_OUTPUT(user, browse(WIKI_PAGE_IFRAME(wiki_url, page_link), "window=manual;size=[BOOK_WINDOW_BROWSE_SIZE]")) // if you change this GUARANTEE that it works. /obj/item/book/manual/wiki/chemistry name = "Chemistry Textbook" @@ -198,3 +227,6 @@ starting_author = "Nanotrasen Edu-tainment Division" starting_title = "Tactical Game Cards - Player's Handbook" page_link = "Tactical_Game_Cards" + +#undef BOOK_WINDOW_BROWSE_SIZE +#undef WIKI_PAGE_IFRAME