From 658a1960949bd774e2fe2073aea0a97328cac9c4 Mon Sep 17 00:00:00 2001 From: Aylong Date: Fri, 27 Dec 2024 23:37:53 +0200 Subject: [PATCH 1/8] Port Paradise chat badges --- code/__DEFINES/bandastation/defines.dm | 2 + code/modules/client/verbs/ooc.dm | 7 ++- .../chat_badges/_chat_badges.dm | 4 ++ .../chat_badges/_chat_badges.dme | 3 + .../chat_badges/code/badges.dm | 55 ++++++++++++++++++ .../chat_badges/icons/chatbadges.dmi | Bin 0 -> 1676 bytes modular_bandastation/modular_bandastation.dme | 9 ++- 7 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 modular_bandastation/chat_badges/_chat_badges.dm create mode 100644 modular_bandastation/chat_badges/_chat_badges.dme create mode 100644 modular_bandastation/chat_badges/code/badges.dm create mode 100644 modular_bandastation/chat_badges/icons/chatbadges.dmi diff --git a/code/__DEFINES/bandastation/defines.dm b/code/__DEFINES/bandastation/defines.dm index 50b0bd4b5a9ab..735a49b2276c2 100644 --- a/code/__DEFINES/bandastation/defines.dm +++ b/code/__DEFINES/bandastation/defines.dm @@ -14,3 +14,5 @@ #define TTS_PRIORITY_VOICE 0 #define TTS_PRIORITY_MIMIC 1 #define TTS_PRIORITY_MASK 2 + +#define MODPACK_CHAT_BADGES diff --git a/code/modules/client/verbs/ooc.dm b/code/modules/client/verbs/ooc.dm index dd09deae54059..85c96bcdca0a8 100644 --- a/code/modules/client/verbs/ooc.dm +++ b/code/modules/client/verbs/ooc.dm @@ -76,7 +76,10 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8") return mob.log_talk(raw_msg, LOG_OOC) - + // BANDASTATION CHAT BADGES REPLACE START + #ifdef MODPACK_CHAT_BADGES + var/keyname = get_ooc_badged_name() + #else var/keyname = key if(prefs.unlock_content) if(prefs.toggles & MEMBER_PUBLIC) @@ -84,6 +87,8 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8") if(prefs.hearted) var/datum/asset/spritesheet/sheet = get_asset_datum(/datum/asset/spritesheet/chat) keyname = "[sheet.icon_tag("emoji-heart")][keyname]" + #endif + // BANDASTATION CHAT BADGES REPLACE END //The linkify span classes and linkify=TRUE below make ooc text get clickable chat href links if you pass in something resembling a url for(var/client/receiver as anything in GLOB.clients) if(!receiver.prefs) // Client being created or deleted. Despite all, this can be null. diff --git a/modular_bandastation/chat_badges/_chat_badges.dm b/modular_bandastation/chat_badges/_chat_badges.dm new file mode 100644 index 0000000000000..3774891af533b --- /dev/null +++ b/modular_bandastation/chat_badges/_chat_badges.dm @@ -0,0 +1,4 @@ +/datum/modpack/chat_badges + name = "Chat badges" + desc = "Добавляет иконки в OOC для различных ролей" + author = "furior, Aylong" diff --git a/modular_bandastation/chat_badges/_chat_badges.dme b/modular_bandastation/chat_badges/_chat_badges.dme new file mode 100644 index 0000000000000..d6350942a8833 --- /dev/null +++ b/modular_bandastation/chat_badges/_chat_badges.dme @@ -0,0 +1,3 @@ +#include "_chat_badges.dm" + +#include "code/badges.dm" diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm new file mode 100644 index 0000000000000..28fd5c12fc8da --- /dev/null +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -0,0 +1,55 @@ +#define CHAT_BADGES_DMI 'modular_bandastation/chat_badges/icons/chatbadges.dmi' + +GLOBAL_LIST(badge_icons_cache) + +/client/proc/get_ooc_badged_name() + var/icon/donator_badge_icon = get_badge_icon(get_donator_badge()) + var/icon/worker_badge_icon = get_badge_icon(get_worker_badge()) + + var/badge_part = "[donator_badge_icon ? icon2base64html(donator_badge_icon) : ""]
[worker_badge_icon ? icon2base64html(worker_badge_icon) : ""]" + var/list/parts = list() + if(badge_part) + parts += badge_part + parts += "[key]" + return jointext(parts, " ") + +/client/proc/get_donator_badge() + if(prefs.unlock_content && (prefs.toggles & MEMBER_PUBLIC)) + return "ByondMember" + + if(donator_level) + return "Tier_[min(donator_level, 4)]" + +/client/proc/get_worker_badge() + var/static/list/rank_badge_map = list( + "Maxon" = "Wycc", + "Banda" = "Streamer", + "Banda Friend" = "Streamer", + "Host" = "Host", + "Head Developer" = "HeadDeveloper", + "Big Developer" = "Developer", + "Developer" = "Developer", + "Mini Developer" = "MiniDeveloper", + "Head Mapper" = "HeadMapper", + "Mapper" = "Mapper", + "Spriter" = "Spriceter", + "Wiki Maintainer" = "WikiLore", + "Head Admin" = "HeadAdmin", + "Game Admin" = "GameAdmin", + "Trial Admin" = "TrialAdmin", + "Mentor" = "Mentor" + ) + return rank_badge_map["[holder?.ranks[1]]"] + +/client/proc/get_badge_icon(badge) + if(isnull(badge)) + return null + + var/icon/badge_icon = LAZYACCESS(GLOB.badge_icons_cache, badge) + if(isnull(badge_icon)) + badge_icon = icon(CHAT_BADGES_DMI, badge) + LAZYSET(GLOB.badge_icons_cache, badge, badge_icon) + + return badge_icon + +#undef CHAT_BADGES_DMI diff --git a/modular_bandastation/chat_badges/icons/chatbadges.dmi b/modular_bandastation/chat_badges/icons/chatbadges.dmi new file mode 100644 index 0000000000000000000000000000000000000000..63cfe3ba385b5105d760f16c89190c2716c49955 GIT binary patch literal 1676 zcmV;726Op|P)JXhT_vl*()0N<}5|7K>)W@afY zJ^%jz|NsB{|IFsn0CAHR=9vIy003140H)O?|GP8iIXS5a0FcB0|CIpD004Cd0sk5r z|A2tmY;4)J0L*s)DO0BZzrX+HX8*51W|{y0>VW@(g8$nlGk5?0)d1$^=FO}C&9NT< zfGYriRe&JhCUuzrxj!VcgTH|PW~|I0s7@c5aG5jzDVEFt008Ew03lAL6>T&B$us}E z0Kbd?8)1a8?Mtfw0004WQchCV=-0C=30(>)8q zFc1ddx%m~L-NldM=AcxxU|bYBN^DMhXp?dcO8>pBf}7;r?p_|kxwL>bR3+Wm@^%tx36S z1UgN4Y|3LZ9!rBvf%T4Y1wwsani_48Zu*EPx1bGA7I?#*BM8DnLs)`mJc`my!(hXV zOsddg1`oJ9j^@i@gg>-veRxftpijf66-m2ptIi|1ZjW)6+dI!6vRmFWOCY zO8%;6rgtNEI-TIsK_0oVe(b{fi3{r;7uKP1f%xbv7l@Cax~`f+Fa)_23_&ghLy)Tt z?Dl$HUJ8bk0xt!%R#59Uu-kk6y2o?{#CIh@z*-Af>vpjBzrj}?+!b$E!6@I43R+!2 zs~xCwBYU`8Jl(@sJl(@m+a8wsA5M8!JUitmo}F?O&rUgt*Rtd+X3yp@#O&D|vi5Vx zdVLPpmRu&$4|bkHH`sX!-C*Y_EZ~+Oy{*3-w*UIN_aF9LSif;${nmx`zDxEtTHgE4 z1>&3UT_C>w!3E;}k1qS!TiaB4KUpBcJ75~#Aj0c24Q~+P9Wo7X6gS^zd+>BeAp#UH zi3m`NbEVY8+=-s;` zCMX#5KNU1lJ5*6SRMEhrbx_6N_AtLt+#crI?P0D9*cY!K+LjEDJw&&MxpsS)Yum$q z@dS+OMFsJFtUB5rqQ#K9@!urI8^?MiAr!EhD|M-Io#FL+0@QwGsxIjGp)dk|oZ!Ra<`)Gj(@5}-b zUOg0u@CFu$@Xjq1kLk((^C$v5b0LV4ZcGF?7{tazfafj+)ZZo*Ov986jA__-ko7v4 z_(>id4nb6q{4g0fOzR-(H870`j#6uf4I9Mk&2^Z64Y&?-T|j#54`S_*Ju2A5h7ICh zwZoK`P&<@5gV{UhZImAFu;FhK_R!Q0+4C^g4yDc@mzp;atroD6J!~pie(KZ?WeK%I zsb$HdBp_NM(C!lA}?u0D356@yBOtdssoMb!rUb^>yzH7cQ(nxv-wNu)cK3-o_Fxes_WR=?@o(lRsS`UjF5B znZ315hWFV55#E&rBD|>uBD`x0#Z%{T3@)4p5g?_QKM(;-o(MZVJ+4e-JZBkNrXXB5-~)zgewt zn+uq|0dI>$FngbQTc!fa-!@yp6+DQm0&=N&1JNo$E;Vl;TD3#L&#~4$yj_*tmL)He zfM_)@d6@)6s|v~)8z|yz(gIRUax`)%%Y4LKx;y2o=*A`{+$K{2?`})(Y-|?X!bKgM zCAV Date: Fri, 27 Dec 2024 23:52:35 +0200 Subject: [PATCH 2/8] Preference to hide donor badge --- .../chat_badges/code/badges.dm | 22 ++++++++++++++----- .../game_preferences/bandastation/donor.tsx | 9 ++++++++ 2 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/game_preferences/bandastation/donor.tsx diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm index 28fd5c12fc8da..f5f724327c714 100644 --- a/modular_bandastation/chat_badges/code/badges.dm +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -6,18 +6,24 @@ GLOBAL_LIST(badge_icons_cache) var/icon/donator_badge_icon = get_badge_icon(get_donator_badge()) var/icon/worker_badge_icon = get_badge_icon(get_worker_badge()) - var/badge_part = "[donator_badge_icon ? icon2base64html(donator_badge_icon) : ""]
[worker_badge_icon ? icon2base64html(worker_badge_icon) : ""]" + var/list/badge_parts = list() + if(donator_badge_icon) + badge_parts += icon2base64html(donator_badge_icon) + + if(worker_badge_icon) + badge_parts += icon2base64html(worker_badge_icon) + var/list/parts = list() - if(badge_part) - parts += badge_part + if(length(badge_parts)) + parts += badge_parts parts += "[key]" - return jointext(parts, " ") + return jointext(parts, "
") /client/proc/get_donator_badge() if(prefs.unlock_content && (prefs.toggles & MEMBER_PUBLIC)) return "ByondMember" - if(donator_level) + if(donator_level && prefs.read_preference(/datum/preference/toggle/donor_public)) return "Tier_[min(donator_level, 4)]" /client/proc/get_worker_badge() @@ -53,3 +59,9 @@ GLOBAL_LIST(badge_icons_cache) return badge_icon #undef CHAT_BADGES_DMI + +/datum/preference/toggle/donor_public + category = PREFERENCE_CATEGORY_GAME_PREFERENCES + default_value = TRUE + savefile_key = "donor_public" + savefile_identifier = PREFERENCE_PLAYER diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/game_preferences/bandastation/donor.tsx b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/game_preferences/bandastation/donor.tsx new file mode 100644 index 0000000000000..a3fefa240b3c5 --- /dev/null +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/game_preferences/bandastation/donor.tsx @@ -0,0 +1,9 @@ +import { CheckboxInput, FeatureToggle } from '../../base'; + +export const donor_public: FeatureToggle = { + name: 'Publicize Donor status', + category: 'CHAT', + description: + 'When enabled, a donor badge will be shown next to your name in OOC.', + component: CheckboxInput, +}; From 986a17424babe4ae89d1aa8eb7cb4ca068a5c977 Mon Sep 17 00:00:00 2001 From: Aylong Date: Sat, 28 Dec 2024 00:00:54 +0200 Subject: [PATCH 3/8] Remove define --- code/__DEFINES/bandastation/defines.dm | 2 -- code/modules/client/verbs/ooc.dm | 5 ++--- modular_bandastation/modular_bandastation.dme | 2 -- 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/code/__DEFINES/bandastation/defines.dm b/code/__DEFINES/bandastation/defines.dm index 735a49b2276c2..50b0bd4b5a9ab 100644 --- a/code/__DEFINES/bandastation/defines.dm +++ b/code/__DEFINES/bandastation/defines.dm @@ -14,5 +14,3 @@ #define TTS_PRIORITY_VOICE 0 #define TTS_PRIORITY_MIMIC 1 #define TTS_PRIORITY_MASK 2 - -#define MODPACK_CHAT_BADGES diff --git a/code/modules/client/verbs/ooc.dm b/code/modules/client/verbs/ooc.dm index 85c96bcdca0a8..ddfa814d7da66 100644 --- a/code/modules/client/verbs/ooc.dm +++ b/code/modules/client/verbs/ooc.dm @@ -77,9 +77,8 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8") mob.log_talk(raw_msg, LOG_OOC) // BANDASTATION CHAT BADGES REPLACE START - #ifdef MODPACK_CHAT_BADGES var/keyname = get_ooc_badged_name() - #else + /* var/keyname = key if(prefs.unlock_content) if(prefs.toggles & MEMBER_PUBLIC) @@ -87,7 +86,7 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8") if(prefs.hearted) var/datum/asset/spritesheet/sheet = get_asset_datum(/datum/asset/spritesheet/chat) keyname = "[sheet.icon_tag("emoji-heart")][keyname]" - #endif + */ // BANDASTATION CHAT BADGES REPLACE END //The linkify span classes and linkify=TRUE below make ooc text get clickable chat href links if you pass in something resembling a url for(var/client/receiver as anything in GLOB.clients) diff --git a/modular_bandastation/modular_bandastation.dme b/modular_bandastation/modular_bandastation.dme index 5b5aeda1eac1d..cd6e9b9a017f1 100644 --- a/modular_bandastation/modular_bandastation.dme +++ b/modular_bandastation/modular_bandastation.dme @@ -3,9 +3,7 @@ // --- ICONS --- // #include "aesthetics/_aesthetics.dme" -#ifdef MODPACK_CHAT_BADGES #include "chat_badges/_chat_badges.dme" -#endif #include "hair/_hair.dme" #include "_defines220/_defines220.dme" From 231d2dfe4000a3155cf81f54299b2ab816b0db7e Mon Sep 17 00:00:00 2001 From: Aylong Date: Sat, 28 Dec 2024 02:54:18 +0200 Subject: [PATCH 4/8] Wtf --- modular_bandastation/modular_bandastation.dme | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/modular_bandastation/modular_bandastation.dme b/modular_bandastation/modular_bandastation.dme index cd6e9b9a017f1..b2687c9f19fa2 100644 --- a/modular_bandastation/modular_bandastation.dme +++ b/modular_bandastation/modular_bandastation.dme @@ -1,23 +1,20 @@ #include "_modpack.dm" #include "_modpacks.dm" -// --- ICONS --- // -#include "aesthetics/_aesthetics.dme" -#include "chat_badges/_chat_badges.dme" -#include "hair/_hair.dme" - #include "_defines220/_defines220.dme" #include "_helpers220/_helpers220.dme" #include "_signals220/_signals220.dme" #include "_singletons/_singletons.dme" #include "title_screen/_title_screen.dme" #include "admin/_admin.dme" +#include "aesthetics/_aesthetics.dme" #include "aesthetics_sounds/_aesthetics_sounds.dme" #include "automapper/_automapper.dme" #include "ai_laws/_ai_laws.dme" #include "autohiss/_autohiss.dme" #include "balance/_balance.dme" #include "barsigns/_barsigns.dme" +#include "chat_badges/_chat_badges.dme" #include "communication/_communication.dme" #include "cyrillic_fixes/_cyrillic_fixes.dme" #include "database220/_database220.dme" @@ -25,6 +22,7 @@ #include "emote_panel/_emote_panel.dme" #include "examine_panel/_examine_panel.dme" #include "gunhud/_gunhud.dme" +#include "hair/_hair.dme" #include "jobs/_jobs.dme" #include "keybinding/_keybinding.dme" #include "loadout/_loadout.dme" From 9c4ef1676afb0cd6d30a90c4582c2777291fa225 Mon Sep 17 00:00:00 2001 From: Aylong Date: Sat, 28 Dec 2024 14:22:16 +0200 Subject: [PATCH 5/8] Sprites changes --- .../chat_badges/code/badges.dm | 2 +- .../chat_badges/icons/chatbadges.dmi | Bin 1676 -> 1710 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm index f5f724327c714..0a8367a36b387 100644 --- a/modular_bandastation/chat_badges/code/badges.dm +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -24,7 +24,7 @@ GLOBAL_LIST(badge_icons_cache) return "ByondMember" if(donator_level && prefs.read_preference(/datum/preference/toggle/donor_public)) - return "Tier_[min(donator_level, 4)]" + return "Tier_[min(donator_level, 5)]" /client/proc/get_worker_badge() var/static/list/rank_badge_map = list( diff --git a/modular_bandastation/chat_badges/icons/chatbadges.dmi b/modular_bandastation/chat_badges/icons/chatbadges.dmi index 63cfe3ba385b5105d760f16c89190c2716c49955..a9a135beceab1fcb58c0cf27b707f1adb0eccad8 100644 GIT binary patch delta 1700 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 From f0c8d3f4a5bb8048333534e85450c498463e3a28 Mon Sep 17 00:00:00 2001 From: Aylong <69762909+AyIong@users.noreply.github.com> Date: Wed, 8 Jan 2025 21:27:54 +0200 Subject: [PATCH 6/8] Rename --- .../chat_badges/code/badges.dm | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm index 0a8367a36b387..61e09a6f60cde 100644 --- a/modular_bandastation/chat_badges/code/badges.dm +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -28,22 +28,22 @@ GLOBAL_LIST(badge_icons_cache) /client/proc/get_worker_badge() var/static/list/rank_badge_map = list( - "Maxon" = "Wycc", - "Banda" = "Streamer", - "Banda Friend" = "Streamer", - "Host" = "Host", - "Head Developer" = "HeadDeveloper", - "Big Developer" = "Developer", - "Developer" = "Developer", - "Mini Developer" = "MiniDeveloper", - "Head Mapper" = "HeadMapper", - "Mapper" = "Mapper", - "Spriter" = "Spriceter", - "Wiki Maintainer" = "WikiLore", - "Head Admin" = "HeadAdmin", - "Game Admin" = "GameAdmin", - "Trial Admin" = "TrialAdmin", - "Mentor" = "Mentor" + "Максон" = "Wycc", + "Банда" = "Streamer", + "Друг Банды" = "Streamer", + "Хост" = "Host", + "Ведущий Разработчик" = "HeadDeveloper", + "Старший Разработчик" = "Developer", + "Разработчик" = "Developer", + "Начальный Разработчик" = "MiniDeveloper", + "Ведущий Маппер" = "HeadMapper", + "Маппер" = "Mapper", + "Спрайтер" = "Spriceter", + "Редактор Вики" = "WikiLore", + "Главный Администратор" = "HeadAdmin", + "Администратор" = "GameAdmin", + "Триал Администратор" = "TrialAdmin", + "Ментор" = "Mentor" ) return rank_badge_map["[holder?.ranks[1]]"] From ce35376d77f0eedf2b55c53a58e5a56f5c1e44c6 Mon Sep 17 00:00:00 2001 From: Aylong <69762909+AyIong@users.noreply.github.com> Date: Wed, 8 Jan 2025 21:36:32 +0200 Subject: [PATCH 7/8] Test admin --- .../chat_badges/code/badges.dm | 1 + .../chat_badges/icons/chatbadges.dmi | Bin 1710 -> 1766 bytes 2 files changed, 1 insertion(+) diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm index 61e09a6f60cde..9294e4193af52 100644 --- a/modular_bandastation/chat_badges/code/badges.dm +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -43,6 +43,7 @@ GLOBAL_LIST(badge_icons_cache) "Главный Администратор" = "HeadAdmin", "Администратор" = "GameAdmin", "Триал Администратор" = "TrialAdmin", + "Тестовый Администратор" = "TestAdmin", "Ментор" = "Mentor" ) return rank_badge_map["[holder?.ranks[1]]"] diff --git a/modular_bandastation/chat_badges/icons/chatbadges.dmi b/modular_bandastation/chat_badges/icons/chatbadges.dmi index a9a135beceab1fcb58c0cf27b707f1adb0eccad8..2454d83c529358635fae8e3c979516737f484ba7 100644 GIT binary patch delta 1673 zcmV;426p+b4dxAyV1KO4|GP6OmdyW^04Xdz{~8+qy8!=yfdAcq%m4t)mH=h|096D4 z*=%gv$pFlV0OvV5sR#i7zrX+Vfd9Zkbq4|ef`b3-8vm*Q=H})pQ>FlbRc4w0B(sAv zcmE%ma3K>3kT3w79stZ{0R8^^{{S<9Am6~iz`ub1nKS*8ghvTt6@Ur^qIcLur(P|}_d=p&c0R~cK%SRrGpBs1VSe+X_0 zkvFbGpO%F7CZpRilF4_lPA1Rzh5JB|gvXw+0T#Tnv3)OK(~LrD&|?Jy+=4{QWo5-xohuH-YPK1pb|!om+7*7&sFHh@pvn z`H>0Ck4<3iya^D8FH8(~^P`t0Ks^4%#4&k614Q`zi3SMm9K2T=AcFT=14YN)o3|_i zcwz#(aB+xm23g{d^4}&g7mqE<le<9&;4Cb7{ zoIi2NoxryZkQU$+4E+8epymnG+<-DSF7=EHk{*WSNe@%5Jxuw*9=Ztc2pJ?X*j*0n z=`IKM4lQ{H1Ti=}hnU+r#Jo9&|G8wlNolZY3e8~C6ee)@)^nV>PPbm~heQ9z*Uk?{ zCZ6&?I5k0DtK`wICPx3?e}dEBOq`O}XexMT8Xz7zAAQQfJIC;NL9uVcR*J`KErDHqU9 z-o2Y(I0nbX`}YOLSinI4GN__dD58Rs7FaYv5uNEF9WbVclqaxcf3Fm9%HDK*XvyGV zO~Le#a_wQ6Jn7*yc?<^ef`IUOSar}ILJq4AW|vF$beE^>rCr9uES(kvq6dA{T}BW3 zXvPM_(%Cs2Psx)xgxbs;vUj3$$lke~Lvx;`!KNuxkWW|n9plwYpn42G;nq`c_k5IF z?_6%Z-VcZVkFUW8e-oI0G=cdi6PV9TU|yLZ@3RRIKmKk4#7}>i0CD!G2@tElOjP8R z7#=Smf_H)8@d6@vUo=1j?@|Lq@UApa{E)oJB7p2g76Al^e+!}r;H3!!udaeuQ9wG+ z3`n_x^4%qaaUP?BArdPuoeh&2l6gU15lKe@t4ORznp^UU;+^8FQh{LX?k`CK8^JkKC}9#$Q+hmgan zgY?jI4}AvHSD{=XFF`=`ppUxC=s_QKm*tyJ0%u9|vjY{fSLz(Hcai5%0NIoo`?JeN z4-KeZ0@ahjf0hDeZ1_etgWcHW&t>-Vt#{G&*6aOn=>PZ{)F$>FpzRN|-@hmOKQJ=@sEiGy?(6$?`Z!LYB#<8e(?U)K(U6`gV%S|?Z1yJ4k7*!%jG zMFMfsn_$F8%wWVv%wWVvwBXIH1!2+~U>qVii~`0Af59pW7;6OUn8BNG-)@@~(xfL4 zJ**Ez0@1_zKqL@7tPjKl-rU`>m@DM-j6m{E@G^`Dl6QrdDk4bUHD2l{;Qjrb1@*Kb z5SK~~gi;a2rBVZ-R0MIU)Icazz<3{974mt;OCClBp;TIO6&Zw5X~}hD5K7Gz#={j- z^CE8ze{V`fTZ~KRO{r;%ap~H_xTl91ga!_|i)m~sY+;qhrp6Z5d2C>lEqE>GS?9rC z+(Ik_?BmwMgCX5|y&n$!A76u|iG5!RriO)Pi65_j-c8X&g6w08hkYmF6x&A*pB zf%3PP0XLgxf@^#TxH;Qww{YnT+-x`7qJYb$TQ9KK;$NfN;yIx0;X{$)p)<(hdf6Aa zh8p3rTrv3gkm9i;xLmHo8t%JQ0?!^(blv6EYKhgY6ny4jli1&_*Zbkn_wn@uxNzBz TGXUI100000NkvXXu0mjfqX#GG delta 1617 zcmV-X2Cn($4XzE4V1EDrW~|KryEErGIVqOR|CIpD001d0J^vaS|GNPHfPnwqfXtQv zRRjRpY;4=f0L+L0DO0AY2mt@TzyI`r|G+|Kng4YM0sn%6|Lhw7ssJ;0|K{fA0Dx71 zAm1djgTH|PADM8OGyfqI2><{9kT3w79stZ{0R8^^{{S<qL4we=bjEjP!#OAbz zHYwMj^xxZBaFd+d-OEF`T*y!+*?PN|soIJsP>s&YrJRk%B6^|mMcc#+5fy;9!uL(> zwTHGG3`As*>Mj-0m2?Sx{RK(mtWi*2fP(gjKe`r_x@R~e9 zn}$z2HF^FE4P~}ZKcDaoKQ00r<*nxG000ECNkl8K714*l_<>l~>Y8f1_RFLh1adVsDNNJV&F^4$I!&UU0F8=(%_--*-Xz zfeXq*;{syuI~Tp}eE)kF5D#9tIAAYYK*Y}2=BE8i9x&{--rnC&;^0* zeBXHx0ls#z8w|mNl<_AS3_;!sh9K|VU`QzxkTUs1K+P4@{J9_!i6CIfe+4Z0Gnf1# z@J$Qk1q1`5e1BBX@(fz;K%JYAdnN^G4`cSUhdH+%=6q)lL&A5&0e@cI-DT}bSnXGhM1 zc*J9rgU04Kdr3rq;w2F?=*}|+2LpKv*g6~pY>+h$IBJ6`2G>JAe_&h>InQ8UyuN~G z;++k4Eg2rw6kQKFw;uMhr#(E&o`6xks33kGtB%$~r=44`ueVF+M4?446Ibb$!(4-1I!E-WCzyR?7^Z)QQ_hwLR00RocWdL#n8a6#bZWo%3YIGe@B zLzg^8C?DwN#!kk7NnD{SZ)g=%O@g;euAmI@^|5FSd2zU7l&4clpzK@haSU)endI$Jf>Y`qU3xxuAUEg1ycW|J0JM{&WFx z@t2DQd#&fcrl+8^vx%57Pz99e}d#ueGnNWkLrWSAbC_D#0*~F z-ir7r$lf7cdWk^xF6lB!1hO}y%QPu?cXzuRq@{8LQ7VD7RBj+jC6JcN4MeF5rn}Sz zTRrS00Z}S1d6EP~sl4QA5)h@93R|FvtA%b#kGGhXE}JspEvBW*rc8N@Y3bI(OHfYGJR8&4gMwDPuFG7Ea69V3QrVSghg-_uaC9|8}siZV*=rE|&|cZmHl) zZaq2}{H?brw_f$bq5ko;^?>zd&D?RvApr53o}tT&?( zF6&z0XhVN}Zbr4h`%#Yj|10=#pW~s{E Date: Wed, 8 Jan 2025 21:45:03 +0200 Subject: [PATCH 8/8] HeadWiki --- .../chat_badges/code/badges.dm | 1 + .../chat_badges/icons/chatbadges.dmi | Bin 1766 -> 1826 bytes 2 files changed, 1 insertion(+) diff --git a/modular_bandastation/chat_badges/code/badges.dm b/modular_bandastation/chat_badges/code/badges.dm index 9294e4193af52..ca6b0a23d9291 100644 --- a/modular_bandastation/chat_badges/code/badges.dm +++ b/modular_bandastation/chat_badges/code/badges.dm @@ -39,6 +39,7 @@ GLOBAL_LIST(badge_icons_cache) "Ведущий Маппер" = "HeadMapper", "Маппер" = "Mapper", "Спрайтер" = "Spriceter", + "Ведущий редактор Вики" = "HeadWiki", "Редактор Вики" = "WikiLore", "Главный Администратор" = "HeadAdmin", "Администратор" = "GameAdmin", diff --git a/modular_bandastation/chat_badges/icons/chatbadges.dmi b/modular_bandastation/chat_badges/icons/chatbadges.dmi index 2454d83c529358635fae8e3c979516737f484ba7..2aaf8bfdb3d09438c4324b6911b622dccf640ac0 100644 GIT binary patch delta 1698 zcmV;T23`5)4WbT^BmvBkC1iiI89>{~0OvV5sR#i7zrX2Yg#Yw_bq4|ef`Z>5Q2*>2 z=H}+ihyW>5rvJb~W|{y0ssJ;0{{VnhfFR$%z`!K4gTH|PADM8OGyfqI2><{9kT3w7 z9suU30L*3p|H(7`{`>y`Grx=g8)1Z3^N02T0004WQchC{*-T{)DNd=%u4FrS*1w><2k#7Y z7oem)A<#!IW3Mu{l(9m_R!L^SbAJ$=6e4e2hdwO{?M+6vV<>uZao9G(GKnZ<@c*T-S%{@vnaX z{_+{-#M3R1000FNNkln7x$NkQ7fm_6-b&aH+qYm z>?bKNY+i+KVe=}?;O5o~l7&}oz0MDZ?vJmH9}HZy`49G8u(ww7;D2WqgXdeY|BH)# z_8LuvcVGc=+xb}K9Nr;CMHdp+&$EH^AP#sL<#5ZWN+JRjFNv5zcb+jg9Lih3#^E4f zg{*QQ=LHN$M}gi74o9OQy#+K6Vg}_js0_@xg5l`hyCaGq;BfT*{fJ_yVB|jqG*K&5 z(ZHiMaMT1<46cWKz<;jqTo8_^1Hp|E24k zc%Lmu{E)pQB0%wyhyVe}Z$T0P0+O6WfS+9$$mf{@IX6(BT@=*3fayFX59ZUyz?>KG z{2U)~pyUS9=zsI%D^yV{RIy!!6%~l#4jkw6%=M6StB`8)6>^@zDpph={_;KK^UU>- z^L7mTFDx(u|9)wK z5$nH{o*NJF;v!Zy0s}5DV`U@i_3z75=jnJSGKjri`2mzS!9=fAz(lW9z(lW9Ky1qf zh`a%&K7WDzq+ps7I86$sn!q~w3VAoV3OUapc~l=n2FauPAo6(fs6L3L!o){#sZeqT z+1sN_KM}~@1zo0z#C8Qkr9#OWq+8_%qErIuR=I&FmB!PpasyFnsZfsK zQlaE>%l#xEO66OgCIL|@kFS$}D796E+`J@HBY%@Jh*e{jFExMV!tQwMb$&Q>e|+_>Tu?r9@zew8b8+>r3y8D- zT+B8fkz08GTR?<2w}80*5Z?l1>dO}q0nQf|a{`;+pWA}hHxAVAVh&s`Uj|;^-rh98 z1%JI1Tplb}D_q)x*LQa!J_#;Y%hhOv%d$Oqe}DH4aI~Utr>oHmz;vIQpzq?~?D~0yW|?n+y2(kmIpEczf%>*=!LP*mv^`9z5n~Kg(A)h${u>^BGk) sH}HiEn?;1*db8JWz0MDZu8*&;5A+9Hzz;VH82|tP07*qoM6N<$f>$#=i2wiq delta 1653 zcmV-*28#Kj4(1JzBmu*bC1iiw$pFlV0OvV5sR#i7zrX+Vfd9Zkbq4|ef`b3-8vm*Q z=H})pQ>FlbRc4w0B(sAvcmE%ma3K>3kT3w79stZ{0R8^^{{S<9Am6~iz`ub1nKSV=- z0C=30)4^`SFboFZbMq7t+$TE9ZXBpuF(kqTB#u*P%xaA$m1A|{?bm{|+Z69+|N0a; zjxyI}z1*8ghvTt6@ zUr^qIcLur(P|}_d=p%oZu~!*e%2**|t0XhvIS6hFkvFbGpO%F7CZpRilF4_lPA1Rz zh5JB|gvXw+0T#Tnv3)OK(~LrD&|?Jy+=4{QuH-YPK1pb|!om+7*7&sFHh@pvn`H>0Ck4<3iya^D8FH8(~^P`t0 zKs^4%#4&k614Q`zi3SMm9K2T=AcFT=14YN)o3|_icwz#(a zB+xm23g{d^4}*U$Mwda%_$LfXE}-O31tH;Z4Cb7{oIi2NoxryZkQU$+4E+8epymnG z+<-DSF7=EHk{*WSNe@%5Jxuw*9=Ztc2pJ?X*j*0n=`IKM4lQ{H1Ti=}hnU+r#Jo9& z|G8wlNolZY3e8~C6ee)@)^nV>PPbm~heQ9z*Uk?{CZ2!tKR7i(UaREMuO>$S--6TM zOq`O}XexMT8Xz7zAAQQfJIC;NL9uVcR*J`KErDHqU9-o2Y(I0nbX`}YOLSinI4GN__d zD58Rs7Fd5YK@pwlAssNLhmrCr9uES(kvq6dA{T}BW3XvPM_(%Cs2Psx)xgxbs;vUj3$ z$lke~Lvx;`!KNuxkWW|n9plwYpn42G;nq`c_k4epTkl+Mz1|Op{*SN02NRfoG=cdi z6PV9TU|yLZ@3RRIKmKk4#7}>i0CD!G2@tElOjP8R7#=Smf_H)8@d6@vUo=1j?@|Lq z@UApa{E)oJB7p2g76Al^e+!}r;H3!!udaeuQ9wG+3`n_x^4%qaaUP?BArdPuoeh&2l6gU15lKe@t4 zORznp^UU;+^8FQh{LX?k`CK8^JkKC}9#$Q+hmgangY?jI4}AvHSD{=XFF`=`ppUxC z=s_QKm*tyJ0%u9|vjY{fSLz(Hcai5%0NH<(8T+%#Mh^|BUINvV!IlDLZ1_etgWcHW z&t>-Vt#{G&*6aOn=>PZ{)F$>FpzRN|-@hmOKQJ=@sEiGy?(6$?`Z!L zYB#<8e(?U)K(U6`gV%S|?Z1yJ4k7*!%jGMFMfsn_$F8%wWVv%wWVvwBUcu ztp#Dy8( zm@DM-j6m{E@G^`Dl6QrdDk4bUHD2l{;Qjrb1@*Kb5SK~~gi;a2rBVZ-R0MIU)Icaz zz<3{974mt;OCClBp;TIO6&Zw5X~}lEqE>GS?9rC+(Ik_?BmwMgCX5|y&n$!A76u| ziG5!RriO)Pi65_j-c8X&g6w08hkYmF6x&A*pBf%3PP0XLgxf@^#TxH)OtY`1Xf z3*2ls+oFKWrZ2GA;$NfN;yIx0;X{$)p)<(hdf6Aah8p3rTrv3gkm9i;xLmHo8t%JQ z0?!^(blv6EYKhgY6ny4jli1&_*Zbkn_wn@uxNzBzGXUI100000NkvXXu0mjf_-Gzq