- Поддерживаемые игры
- CS: Source (OrangeBox)
- Team Fortress 2
- DOD: Source
- Left 4 Dead (L4D/L4D2)
Подключение данной библиотеки позволяет Вам без особых усилий окрашивать сообщения, которые выводятся в чат, в исходнике или же в файле перевода.
Ниже будут приведены подробные примеры покраски.
Список функций, которые нужно изменить для взаимодействия (Функция <-> Новая функция):
- PrintToChat <-> CPrintToChat
- PrintToChatAll <-> CPrintToChatAll
- PrintToChatEx <-> CPrintToChatEx
- PrintToChatAllEx <-> CPrintToChatAllEx
- SkipNextClient <-> CSkipNextClient
- bool:AddColor <-> bool:CAddColor
- RemoveTags <-> CRemoveTags
- ReplyToCommand <-> CReplyToCommand
- ReplyToCommandEx <-> CReplyToCommandEx
- ShowActivity <-> CShowActivity
- ShowActivityEx <-> CShowActivityEx
- ShowActivity2 <-> CShowActivity2
- bool:ColorExists <-> bool:CColorExists
- GetTeamColor <-> CGetTeamColor
Список цветов:
- "aliceblue" HEX: #F0F8FF
- "allies" HEX: #4D7942
- "ancient" HEX: #EB4B4B
- "antiquewhite" HEX: #FAEBD7
- "aqua" HEX: #00FFFF
- "aquamarine" HEX: #7FFFD4
- "arcana" HEX: #ADE55C
- "axis" HEX: #FF4040
- "azure" HEX: #007FFF
- "beige" HEX: #F5F5DC
- "bisque" HEX: #FFE4C4
- "black" HEX: #000000
- "blanchedalmond" HEX: #FFEBCD
- "blue" HEX: #99CCFF
- "blueviolet" HEX: #8A2BE2
- "brown" HEX: #A52A2A
- "burlywood" HEX: #DEB887
- "cadetblue" HEX: #5F9EA0
- "chartreuse" HEX: #7FFF00
- "chocolate" HEX: #D2691E
- "collectors" HEX: #AA0000
- "common" HEX: #B0C3D9
- "community" HEX: #70B04A
- "coral" HEX: #FF7F50
- "cornflowerblue" HEX: #6495ED
- "cornsilk" HEX: #FFF8DC
- "corrupted" HEX: #A32C2E
- "crimson" HEX: #DC143C
- "cyan" HEX: #00FFFF
- "darkblue" HEX: #00008B
- "darkcyan" HEX: #008B8B
- "darkgoldenrod" HEX: #B8860B
- "darkgray" HEX: #A9A9A9
- "darkgrey" HEX: #A9A9A9
- "darkgreen" HEX: #006400
- "darkkhaki" HEX: #BDB76B
- "darkmagenta" HEX: #8B008B
- "darkolivegreen" HEX: #556B2F
- "darkorange" HEX: #FF8C00
- "darkorchid" HEX: #9932CC
- "darkred" HEX: #8B0000
- "darksalmon" HEX: #E9967A
- "darkseagreen" HEX: #8FBC8F
- "darkslateblue" HEX: #483D8B
- "darkslategray" HEX: #2F4F4F
- "darkslategrey" HEX: #2F4F4F
- "darkturquoise" HEX: #00CED1
- "darkviolet" HEX: #9400D3
- "deeppink" HEX: #FF1493
- "deepskyblue" HEX: #00BFFF
- "dimgray" HEX: #696969
- "dodgerblue" HEX: #1E90FF
- "exalted" HEX: #CCCCCD
- ух, я зае..устал красить это..
- "firebrick" HEX: #B22222
- "floralwhite" HEX: #FFFAF0
- "forestgreen" HEX: #228B22
- "frozen" HEX: #4983B3
- "fuchsia" HEX: #FF00FF
- "fullblue" HEX: #0000FF
- "fullred" HEX: #FF0000
- "gainsboro" HEX: #DCDCDC
- "genuine" HEX: #4D7455
- "ghostwhite" HEX: #F8F8FF
- "gold" HEX: #FFD700
- "goldenrod" HEX: #DAA520
- "gray" HEX: #CCCCCC
- "green" HEX: #3EFF3E
- "greenyellow" HEX: #ADFF2F
- "haunted" HEX: #38F3AB
- "honeydew" HEX: #F0FFF0
- "hotpink" HEX: #FF69B4
- "immortal" HEX: #E4AE33
- "indianred" HEX: #CD5C5C
- "indigo" HEX: #4B0082
- "ivory" HEX: #FFFFF0
- "khaki" HEX: #F0E68C
- "lavender" HEX: #E6E6FA
- "lavenderblush" HEX: #FFF0F5
- "lawngreen" HEX: #7CFC00
- "legendary" HEX: #D32CE6
- "lemonchiffon" HEX: #FFFACD
- "lightblue" HEX: #ADD8E6
- "lightcoral" HEX: #F08080
- "lightcyan" HEX: #E0FFFF
- "lightgoldenrodyellow" HEX: #FAFAD2
- "lightgray" HEX: #D3D3D3
- "lightgrey" HEX: #D3D3D3
- "lightgreen" HEX: #99FF99
- "lightpink" HEX: #FFB6C1
- "lightsalmon" HEX: #FFA07A
- "lightseagreen" HEX: #20B2AA
- "lightskyblue" HEX: #87CEFA
- "lightslategray" HEX: #778899
- "lightsteelblue" HEX: #B0C4DE
- "lightyellow" HEX: #FFFFE0
- "lime" HEX: #00FF00
- "limegreen" HEX: #32CD32
- "linen" HEX: #FAF0E6
- "magenta" HEX: #FF00FF
- "maroon" HEX: #800000
- "mediumaquamarine" HEX: #66CDAA
- "mediumblue" HEX: #0000CD
- "mediumorchid" HEX: #BA55D3
- "mediumpurple" HEX: #9370D8
- "mediumseagreen" HEX: #3CB371
- "mediumslateblue" HEX: #7B68EE
- "mediumspringgreen" HEX: #00FA9A
- "mediumturquoise" HEX: #48D1CC
- "mediumvioletred" HEX: #C71585
- "midnightblue" HEX: #191970
- "mintcream" HEX: #F5FFFA
- "mistyrose" HEX: #FFE4E1
- "moccasin" HEX: #FFE4B5
- "mythical" HEX: #8847FF
- "navajowhite" HEX: #FFDEAD
- "navy" HEX: #000080
- "normal" HEX: #B2B2B2
- "oldlace" HEX: #FDF5E6
- "olive" HEX: #9EC34F
- "olivedrab" HEX: #6B8E23
- "orange" HEX: #FFA500
- "orangered" HEX: #FF4500
- "orchid" HEX: #DA70D6
- "palegoldenrod" HEX: #EEE8AA
- "palegreen" HEX: #98FB98
- "paleturquoise" HEX: #AFEEEE
- "palevioletred" HEX: #D87093
- "papayawhip" HEX: #FFEFD5
- "peachpuff" HEX: #FFDAB9
- "peru" HEX: #CD853F
- "pink" HEX: #FFC0CB
- "plum" HEX: #DDA0DD
- "powderblue" HEX: #B0E0E6
- "purple" HEX: #800080
- "rare" HEX: #4B69FF
- "red" HEX: #FF4040
- "rosybrown" HEX: #BC8F8F
- "royalblue" HEX: #4169E1
- "saddlebrown" HEX: #8B4513
- "salmon" HEX: #FA8072
- "sandybrown" HEX: #F4A460
- "seagreen" HEX: #2E8B57
- "seashell" HEX: #FFF5EE
- "selfmade" HEX: #70B04A
- "sienna" HEX: #A0522D
- "silver" HEX: #C0C0C0
- "skyblue" HEX: #87CEEB
- "slateblue" HEX: #6A5ACD
- "slategray" HEX: #708090
- "snow" HEX: #FFFAFA
- "springgreen" HEX: #00FF7F
- "steelblue" HEX: #4682B4
- "strange" HEX: #CF6A32
- "tan" HEX: #D2B48C
- "teal" HEX: #008080
- "thistle" HEX: #D8BFD8
- "tomato" HEX: #FF6347
- "turquoise" HEX: #40E0D0
- "uncommon" HEX: #B0C3D9
- "unique" HEX: #FFD700
- "unusual" HEX: #8650AC
- "valve" HEX: #A50F79
- "vintage" HEX: #476291
- "violet" HEX: #EE82EE
- "wheat" HEX: #F5DEB3
- "white" HEX: #FFFFFF
- "whitesmoke" HEX: #F5F5F5
- "yellow" HEX: #FFFF00
- "yellowgreen" HEX: #9ACD32
- {default} - стандартный цвет чата;
- {teamcolor} - цвет команды.
- Установка
- ФАЙЛ MORECOLORS.INC ПОМЕСТИТЬ В ПАПКУ SCRIPTING/INCLUDE
Примеры покраски:
1. Покраска, при условии что сообщение находится в исходнике, то есть, отсутствует файл перевода либо сообщение не объявлено в нём.
Для примера взят плагин ResetScore+.
- Открываем исходник.
- Сразу же, в самом верху исходника мы видим следующее
Код:
#include <cstrike>
- Нам нужно подключить нашу библиотеку, делается это с помощью #include <morecolors> . Что у нас получилось:
Код:
#include <cstrike>#include <morecolors>
- Библиотеку подключили, теперь нужно заменить функции, в основном это функция PrintToChat, тут нам упрощает жизнь Поиск (Ctrl+F), ищем данную функцию и сразу переходим к ней и видим.
Код:
if(bRC) PrintToChat(C, "\x01\04[Resetscore] \x01Ваш \x05общий счёт \x03сброшен\x01!");
Код:if(bRC) PrintToChat(C, "[Resetscore] Ваш общий счёт сброшен!");
- Приступаем к покраске. Например, мы ходит чтобы тег отображался красным, а текст был жёлтым и слово "счёт" было выделено фиолетовым цветом, сделали, теперь код выглядит так:
Код:
if(bRC) PrintToChat(C, "{fullred}[Resetscore] {yellow}Ваш общий {purple}счёт {yellow}сброшен!");
- Компилируем и готово, цвет изменен.
Для примера взят плагин Радио.
- Открываем исходник.
- Сразу же, в самом верху исходника мы видим следующее
Код:
#include <sourcemod>#include <base64>
- Нам нужно подключить нашу библиотеку, делается это с помощью #include <morecolors> . Что у нас получилось:
Код:
#include <sourcemod>#include <base64> #include <morecolors>
- Библиотеку подключили, теперь нужно заменить функции, в основном это функция PrintToChat, тут нам упрощает жизнь Поиск (Ctrl+F), но данная функция спрятана в так называемых "под-исходниках", а именно - scripting\Radio\Timers.sp, находим там и видим:
Код:
PrintToChat(iPlayer, "%t%t", "ChatPrefix", "NowPlaying", szBuffer, g_iVolume[iPlayer]);
Код:CPrintToChat(iPlayer, "%t%t", "ChatPrefix", "NowPlaying", szBuffer, g_iVolume[iPlayer]);
- Теперь направляемся в файл перевода, открываем и ищем нашу фразу "NowPlaying", видим следущее:
Код:
"NowPlaying" { "#format" "{1:s},{2:d}" "en" "Now playing {1}, volume {2}%%" "ru" "Сейчас играет {1}, громкость {2}%%" "ua" "Зараз грає {1}, гучність {2}%%" }
Код:"NowPlaying" { "#format" "{1:s},{2:d}" "en" "Now playing {1}, volume {2}%%" "ru" "{white}Сейчас играет {fullred}{1}{white}, громкость {fullred}{2}%%" "ua" "Зараз грає {1}, гучність {2}%%" }
- Готово. Главный плюс покраски в файле перевода, что вам приходится лезть в исходник всего лишь один раз.