C#:
// Все права принадлежат дискорд сообществу https://discord.gg/VgNHPpNrz6
using Oxide.Core;
using UnityEngine;
using Oxide.Game.Rust.Cui;
using UnityEngine.Networking;
using System.Linq;
using System.Text.RegularExpressions;
using Oxide.Core.Libraries.Covalence;
using System;
using System.Collections.Generic;
using System.Collections;
using Newtonsoft.Json.Linq;
using Oxide.Core.Libraries;
using System.IO;
using System.Text;
using Newtonsoft.Json;
using Oxide.Core.Plugins;
using ConVar;
using Facepunch;
using CompanionServer;
namespace Oxide.Plugins {
[Info("IQChat", "anfunny", "2.1.3")]
class IQChat : RustPlugin {
private enum SelectedAction {
Mute, Ignore
}
private void WDHSBAKYMXCJJVNXYSOWLNZYCDCXYUYXWOIFIPKAIRS(BasePlayer player, TakeElementUser DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY, Int32 Page = 0) {
String Interface = InterfaceBuilder.UBCKLARJZEEEQHYDYGSDAZHGUDTJESOQZZGKPBECPMPKJBDFD("UI_Chat_OpenDropList");
if (Interface == null) return;
if (!LocalBase.ContainsKey(player)) return;
String Title = String.Empty;
String QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC = String.Empty;
List<Configuration.ControllerParameters.AdvancedFuncion> InfoUI = new List<Configuration.ControllerParameters.AdvancedFuncion>();
switch (DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY) {
case TakeElementUser.MultiPrefix : case TakeElementUser.Prefix : {
InfoUI = LocalBase[player].ElementsPrefix;
Title = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_SLIDER_PREFIX_TITLE", player.UserIDString);
QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_DESCRIPTION_PREFIX", player.UserIDString);
break;
}
case TakeElementUser.Nick : {
InfoUI = LocalBase[player].ElementsNick;
Title = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_SLIDER_NICK_COLOR_TITLE", player.UserIDString);
QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_DESCRIPTION_NICK", player.UserIDString);
break;
}
case TakeElementUser.Chat : {
InfoUI = LocalBase[player].ElementsChat;
Title = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_SLIDER_MESSAGE_COLOR_TITLE", player.UserIDString);
QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_DESCRIPTION_CHAT", player.UserIDString);
break;
}
case TakeElementUser.Rank : {
InfoUI = LocalBase[player].ElementsRanks;
Title = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_SLIDER_IQRANK_TITLE", player.UserIDString);
QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_DESCRIPTION_RANK", player.UserIDString);
break;
}
default : break;
}
Interface = Interface.Replace("%TITLE%", Title);
Interface = Interface.Replace("%DESCRIPTION%", QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC);
String CommandRight = InfoUI.Skip(9 * (Page + 1)).Count() > 0 ? $"newui.cmd droplist.controller page.controller {DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY} + {Page}" : String.Empty;
String CommandLeft = Page != 0 ? $"newui.cmd droplist.controller page.controller {DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY} - {Page}" : String.Empty;
Interface = Interface.Replace("%NEXT_BTN%", CommandRight);
Interface = Interface.Replace("%BACK_BTN%", CommandLeft);
Interface = Interface.Replace("%COLOR_RIGHT%", String.IsNullOrWhiteSpace(CommandRight) ? "1 1 1 0.1" : "1 1 1 1");
Interface = Interface.Replace("%COLOR_LEFT%", String.IsNullOrWhiteSpace(CommandLeft) ? "1 1 1 0.1" : "1 1 1 1");
CuiHelper.DestroyUi(player, "OpenDropList");
CuiHelper.AddUi(player, Interface);
Int32 Count = 0;
Int32 VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL = 0, Y = 0;
foreach (Configuration.ControllerParameters.AdvancedFuncion Info in InfoUI.Skip(9 * Page).Take(9)) {
OEEGORRXKTNWONAXYQEYKYNHVNEDLKYTGGXUYNIBJ(player, DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY, Info, VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL, Y, Count);
if (DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.MultiPrefix && UserInformation[player.userID].Info.PrefixList.Contains(Info.Argument)) OEEGORRXKTNWONAXYQEYKYNHVNEDLKYTGGXUYNIBJ(player, Count);
Count++;
VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL++;
if (VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL == 3) {
VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL = 0;
Y++;
}
}
}
void ETEKORMGCYWKDNLTIKPWZJKHWRWLIVMTBGIKUIYXLJGDLICI(BasePlayer player, String Message, String HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD = null, String RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF = null, String WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY = null) => MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, Message, HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD, RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF, WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY);
private void DXNBWFBFNIXYEYCSRBEIUSFUNRPYQSINVURBTVJBBLMZWTY(BasePlayer player, String QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC, String Title = null) {
if (PJILWTXYQXEMTBUHBJHSALIJDBXUJIPLQCAVCXUUOVUFN == null) {
PrintWarning("Генерируем интерфейс, ожидайте сообщения об успешной генерации");
return;
}
String Interface = InterfaceBuilder.UBCKLARJZEEEQHYDYGSDAZHGUDTJESOQZZGKPBECPMPKJBDFD("UI_Chat_Alert");
if (Interface == null) return;
Interface = Interface.Replace("%TITLE%", Title ?? BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_ALERT_TITLE", player.UserIDString));
Interface = Interface.Replace("%DESCRIPTION%", QEUADDCFWAKYEADRPLSRDHNKWMAKHMKRZAWYRHHPGCUMOXCVC);
CuiHelper.DestroyUi(player, InterfaceBuilder.UI_Chat_Alert);
CuiHelper.AddUi(player, Interface);
player.Invoke(() => {
CuiHelper.DestroyUi(player, InterfaceBuilder.UI_Chat_Alert);
}
, config.ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BEFVUETCGWNGEZJXFHEICUXSYUTNKVLCKGAUSSLALHRFMWP.BWMVCDXFKECTDZFQZDDLLUFUGBRLRHZXTILUAMCXQGKIA);
}
[ChatCommand("adminalert")]
private void ILTSJGIDQVIBQUFUXYYLEYOHVZKXRVUMPHAYZPJHNAFP(BasePlayer HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, String cmd, String[] args) {
if (!permission.UserHasPermission(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG.UserIDString, SNFFBQHHUBJBHPAISBLLLJVLJLSJJUBJOEDSXZSDUYKY)) return;
Alert(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, args, true);
}
private enum SelectedParametres {
DropList, Slider
}
public class TranslationState {
public Boolean IsProcessed {
get;
set;
}
public String Translation {
get;
set;
}
public String DoTranslation {
get;
set;
}
}
private const Boolean LanguageEn = false;
private List<FakePlayer> GetCombinedPlayerList() {
if (!IsReadyIQFakeActive()) return null;
JObject jsonData = IQFakeActive.Call<JObject>("GetListPlayers");
if (!jsonData.TryGetValue("players", out JToken playersToken)) return null;
List<FakePlayer> playerList = playersToken.ToObject<List<FakePlayer>>();
return playerList;
}
[ChatCommand("mute")]
void UUAYPCVYNPCAISLJTUZMRRAYACGFMUGXYQOFDFQR(BasePlayer Moderator, string cmd, string[] arg) {
if (!permission.UserHasPermission(Moderator.UserIDString, ETNACMLOMEBYIUVDPIHTWRBYEDOMDFQCVBWEHJFC)) return;
if (arg == null || arg.Length != 3 || arg.Length > 3) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Invalid syntax, use : mute Steam64ID/Nick Reason Time(seconds)" : "Неверный синтаксис, используйте : mute Steam64ID/Ник Причина Время(секунды)");
return;
}
string NameOrID = arg[0];
string Reason = arg[1];
Int32 TimeMute = 0;
if (!Int32.TryParse(arg[2], out TimeMute)) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Enter time in numbers!" : "Введите время цифрами!");
return;
}
if (IsFakeUser(NameOrID)) {
List<FakePlayer> playerList = GetCombinedPlayerList();
if (playerList != null) {
FakePlayer fakeUser = playerList.FirstOrDefault(x => x.userId.Equals(NameOrID) || x.displayName.ToLower().Contains(NameOrID.ToLower()));
if (fakeUser != null) APFFWHBZFDVKHCVOMKWEOHGEHJVVPOSHDTXBAGSY(null, MuteType.Chat, 0, Moderator, Reason, TimeMute, false, true, fakeUser.userId);
}
return;
}
BasePlayer target = KKUBBBBPUANJENDAMCEYIQLTMZOQDRIIHPKJCJONCBUFXY(NameOrID);
if (target == null) {
UInt64 Steam64ID = 0;
if (UInt64.TryParse(NameOrID, out Steam64ID)) {
if (UserInformation.ContainsKey(Steam64ID)) {
User Info = UserInformation[Steam64ID];
if (Info == null) return;
if (Info.MuteInfo.RNREYHUWXUNEDIUYANKMLVSMKBNDIIEUZKDPOETRNX(MuteType.Chat)) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "The player already has a chat lock" : "Игрок уже имеет блокировку чата");
return;
}
Info.MuteInfo.WZRUOJRFANWCWMBLETLOBZTSGCBTQAAVLBJWCMUCUNUZ(MuteType.Chat, TimeMute);
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Chat blocking issued to offline player" : "Блокировка чата выдана offline-игроку");
return;
}
else {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
else {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
APFFWHBZFDVKHCVOMKWEOHGEHJVVPOSHDTXBAGSY(target, MuteType.Chat, 0, Moderator, Reason, TimeMute, false, true);
}
[ConsoleCommand("saybro")]
private void GBXEUTGKMEWNLYTVFEFUONQHRGCKCEADGZFLPNEYVB(ConsoleSystem.Arg args) {
BasePlayer HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG = args.Player();
if (HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG != null) if (!permission.UserHasPermission(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG.UserIDString, SNFFBQHHUBJBHPAISBLLLJVLJLSJJUBJOEDSXZSDUYKY)) return;
if (args.Args == null || args.Args.Length == 0) {
if (HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG != null) MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, LanguageEn ? "You didn't specify a player!" : "Вы не указали игрока!");
else PrintWarning(LanguageEn ? "You didn't specify a player" : "Вы не указали игрока!");
return;
}
BasePlayer Recipient = BasePlayer.Find(args.Args[0]);
if (Recipient == null) {
if (HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG != null) MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, LanguageEn ? "The player is not on the server!" : "Игрока нет на сервере!");
else PrintWarning(LanguageEn ? "The player is not on the server!" : "Игрока нет на сервере!");
return;
}
Alert(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, Recipient, args.Args.Skip(1).ToArray());
}
private enum ElementsSettingsType {
PM, Broadcast, Alert, Sound
}
List<String> PKWZJVUJEMMYJRHINYRXKKZNKIPRYOQKXTBGBYPJONMECYURZ(ulong userID) => (List<string>)(IQRankSystem?.Call("API_RANK_USER_KEYS", userID));
String EKOMMMJSLJFSYDQYTTVATRHBTSBLDUXJPVXJJNQR(string Key) => (string)(IQRankSystem?.Call("API_GET_RANK_NAME", Key));
void MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(BasePlayer player, String Message, String HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD = null, String RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF = null, String WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY = null) {
Configuration.ControllerMessage ControllerMessages = config.ControllerMessages;
String Prefix = (HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD == null || String.IsNullOrWhiteSpace(HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD)) ? (ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.JDOXGLPHHMWZLFRLLKVXYOFMVDXVCRGBFREHGNWZ == null || String.IsNullOrWhiteSpace(ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.JDOXGLPHHMWZLFRLLKVXYOFMVDXVCRGBFREHGNWZ)) ? "" : ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.JDOXGLPHHMWZLFRLLKVXYOFMVDXVCRGBFREHGNWZ : HSKTGDMDAECLRMMMMEKOYTUZBAMBTGJFKQCMZWPTICBD;
String AvatarID = (RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF == null || String.IsNullOrWhiteSpace(RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF)) ? (ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.OJIEKTKWOXZBRUEECWNEKXSYLTNWNJRBUHFRBZNULJRDA == null || String.IsNullOrWhiteSpace(ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.OJIEKTKWOXZBRUEECWNEKXSYLTNWNJRBUHFRBZNULJRDA)) ? "0" : ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.OJIEKTKWOXZBRUEECWNEKXSYLTNWNJRBUHFRBZNULJRDA : RSJVHPJTFXWHGGQQUOYRUDNPGOJZUFAMNWSBBNRKGRPNRGF;
String Hex = (WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY == null || String.IsNullOrWhiteSpace(WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY)) ? (ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.TNFWLOFPGUBBRDUYCCCOTFPGUUTBKEXOWGFBZQJPRGVXEA == null || String.IsNullOrWhiteSpace(ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.TNFWLOFPGUBBRDUYCCCOTFPGUUTBKEXOWGFBZQJPRGVXEA)) ? "#ffff" : ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BroadcastFormat.TNFWLOFPGUBBRDUYCCCOTFPGUUTBKEXOWGFBZQJPRGVXEA : WWXVUTYNFTOTFKZZWJTJOPPGWNLCOZYAISCXIFSTYEWHZY;
player.SendConsoleCommand("chat.add", Chat.ChatChannel.Global, AvatarID, $"{Prefix}<color={Hex}>{Message}</color>");
}
private void UIWAGOQYFZWCGCEBBAAVZKTOFUEZIIDAEJJPCUQOBARIUBK(BasePlayer player, String Message) {
if (!LastMessagesChat.ContainsKey(player)) LastMessagesChat.Add(player, new List<String> {
Message
}
);
else LastMessagesChat[player].Add(Message);
}
private void HAXEBYLWHXQRGPYCMGLENWWBLTFPFTDWTCNKOJXTUFSIINPG(BasePlayer player, BasePlayer EPLCRXGGUDAYJSFPAWIHJQCWHUSNXDLCDRYWGOVMHH, String Reason, Int32 Y, MuteType Type, UInt64 MGKNADXABTEXNMOUXFSIRRXUSUJJLAVACRPQWGRKZCKIZTKJR = 0) {
String Interface = InterfaceBuilder.UBCKLARJZEEEQHYDYGSDAZHGUDTJESOQZZGKPBECPMPKJBDFD("UI_Chat_Mute_Alert_DropList_Reason");
if (Interface == null) return;
Interface = Interface.Replace("%OFFSET_MIN%", $"-147.5 {85.42 - (Y * 40)}");
Interface = Interface.Replace("%OFFSET_MAX%", $"147.5 {120.42 - (Y * 40)}");
Interface = Interface.Replace("%REASON%", Reason);
Interface = Interface.Replace("%COMMAND_REASON%", $"newui.cmd action.mute.ignore ignore.and.mute.controller {SelectedAction.Mute} confirm.yes {((IsReadyIQFakeActive() && EPLCRXGGUDAYJSFPAWIHJQCWHUSNXDLCDRYWGOVMHH == null && MGKNADXABTEXNMOUXFSIRRXUSUJJLAVACRPQWGRKZCKIZTKJR != 0) ? MGKNADXABTEXNMOUXFSIRRXUSUJJLAVACRPQWGRKZCKIZTKJR : EPLCRXGGUDAYJSFPAWIHJQCWHUSNXDLCDRYWGOVMHH.userID)} {Type} {Y}");
CuiHelper.AddUi(player, Interface);
}
private const String ETNACMLOMEBYIUVDPIHTWRBYEDOMDFQCVBWEHJFC = "iqchat.muteuse";
public String FormatTime(Double HPQSXBDALERKNMPDCDPOMWXFLCNLPDAARNXGOKROONKUAHSF, String UserID = null) {
TimeSpan time = TimeSpan.FromSeconds(HPQSXBDALERKNMPDCDPOMWXFLCNLPDAARNXGOKROONKUAHSF);
String Result = String.Empty;
String Days = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("TITLE_FORMAT_DAYS", UserID);
String Hourse = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("TITLE_FORMAT_HOURSE", UserID);
String Minutes = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("TITLE_FORMAT_MINUTES", UserID);
String Seconds = BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("TITLE_FORMAT_SECONDS", UserID);
if (time.Seconds != 0) Result = $"{Format(time.Seconds, Seconds, Seconds, Seconds)}";
if (time.Minutes != 0) Result = $"{Format(time.Minutes, Minutes, Minutes, Minutes)}";
if (time.Hours != 0) Result = $"{Format(time.Hours, Hourse, Hourse, Hourse)}";
if (time.Days != 0) Result = $"{Format(time.Days, Days, Days, Days)}";
return Result;
}
[ChatCommand("hmute")]
void SUSTOJWLVSGVSNYMYYIWKMXTPUHOZOVWQSYORNPJXVACHB(BasePlayer Moderator, string cmd, string[] arg) {
if (!permission.UserHasPermission(Moderator.UserIDString, ETNACMLOMEBYIUVDPIHTWRBYEDOMDFQCVBWEHJFC)) return;
if (arg == null || arg.Length != 3 || arg.Length > 3) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Invalid syntax, use : hmute Steam64ID/Nick Reason Time(seconds)" : "Неверный синтаксис,используйте : hmute Steam64ID/Ник Причина Время(секунды)");
return;
}
string NameOrID = arg[0];
string Reason = arg[1];
Int32 TimeMute = 0;
if (!Int32.TryParse(arg[2], out TimeMute)) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Enter the time in numbers!" : "Введите время цифрами!");
return;
}
BasePlayer target = KKUBBBBPUANJENDAMCEYIQLTMZOQDRIIHPKJCJONCBUFXY(NameOrID);
if (target == null) {
UInt64 Steam64ID = 0;
if (UInt64.TryParse(NameOrID, out Steam64ID)) {
if (UserInformation.ContainsKey(Steam64ID)) {
User Info = UserInformation[Steam64ID];
if (Info == null) return;
if (Info.MuteInfo.RNREYHUWXUNEDIUYANKMLVSMKBNDIIEUZKDPOETRNX(MuteType.Chat)) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "The player already has a chat lock" : "Игрок уже имеет блокировку чата");
return;
}
Info.MuteInfo.WZRUOJRFANWCWMBLETLOBZTSGCBTQAAVLBJWCMUCUNUZ(MuteType.Chat, TimeMute);
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "Chat blocking issued to offline player" : "Блокировка чата выдана offline-игроку");
return;
}
else {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
else {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(Moderator, LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
APFFWHBZFDVKHCVOMKWEOHGEHJVVPOSHDTXBAGSY(target, MuteType.Chat, 0, Moderator, Reason, TimeMute, true, true);
}
public void YXFQRVSWATBLIJNQMBIHHFPIUZBLFMWUYAKMDVQBR(BasePlayer player, String Message) {
Configuration.AnswerMessage Anwser = config.AnswerMessages;
if (!Anwser.UseAnswer) return;
foreach (KeyValuePair<String, Configuration.LanguageController> Anwsers in Anwser.AnswerMessageList) if (Message.Contains(Anwsers.Key.ToLower())) {
String templateText = ISSUSAJYGKXXGGBQCGMYYZNFITRRQXXYFJWQROWDIHAZPXW(player, Anwsers.Value.LanguageMessages);
if(String.IsNullOrWhiteSpace(templateText)) continue;
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, templateText);
}
}
String IETNWVMCKOKCSHORLNAZSEOHIITLAGFODJBGPODPSUIN(UInt64 ID) {
if (!UserInformation.ContainsKey(ID)) return String.Empty;
return UserInformation[ID].Info.ColorMessage;
}
public class Footer {
public string text {
get;
set;
}
public string icon_url {
get;
set;
}
public string proxy_icon_url {
get;
set;
}
public Footer(string text, string icon_url, string proxy_icon_url) {
this.text = text;
this.icon_url = icon_url;
this.proxy_icon_url = proxy_icon_url;
}
}
public enum MuteType {
Chat, Voice
}
Int32 API_GET_DEFAULT_SIZE_NICK() => config.ControllerMessages.IUUHGMGYPWVEVYWRPTLKRYXYXXDBZEGCKOBHJXCZQVRZXCP.BEFVUETCGWNGEZJXFHEICUXSYUTNKVLCKGAUSSLALHRFMWP.SizeNick;
void OnUserPermissionGranted(string id, string FQMJRMDEQBYYDJGESZKZQEXTTLFPGHOWGJDXALLBHYUY) => KUFMRJTGHHHWDVSDYPKNDYRWBHXYHCYDIHGERZOF(id, FQMJRMDEQBYYDJGESZKZQEXTTLFPGHOWGJDXALLBHYUY);
public class FakePlayer {
[JsonProperty("displayName")]
public String displayName;
[JsonProperty("userId")]
public String userId;
public Boolean isMuted;
}
protected override void LoadDefaultConfig() => config = Configuration.GetNewConfiguration();
[ConsoleCommand("unmutevoice")]
void UnMuteVoiceCustomAdmin(ConsoleSystem.Arg arg) {
if (arg.Player() != null) if (!permission.UserHasPermission(arg.Player().UserIDString, ETNACMLOMEBYIUVDPIHTWRBYEDOMDFQCVBWEHJFC)) return;
if (arg?.Args == null || arg.Args.Length != 1 || arg.Args.Length > 1) {
PrintWarning(LanguageEn ? "Invalid syntax, please use : unmutevoice Steam64ID" : "Неверный синтаксис,используйте : unmutevoice Steam64ID");
return;
}
string NameOrID = arg.Args[0];
BasePlayer target = KKUBBBBPUANJENDAMCEYIQLTMZOQDRIIHPKJCJONCBUFXY(NameOrID);
if (target == null) {
UInt64 Steam64ID = 0;
if (UInt64.TryParse(NameOrID, out Steam64ID)) {
if (UserInformation.ContainsKey(Steam64ID)) {
User Info = UserInformation[Steam64ID];
if (Info == null) return;
if (!Info.MuteInfo.RNREYHUWXUNEDIUYANKMLVSMKBNDIIEUZKDPOETRNX(MuteType.Voice)) {
VJKXWWJBSMDPLFHLPOQGQMYRDXYXNVFUDXJALVWCFD(arg.Player(), LanguageEn ? "The player does not have a chat lock" : "У игрока нет блокировки чата");
return;
}
Info.MuteInfo.TDXDJFJUFKWFYOMHXPZMAQUDFISYIUOETNMZEPGVRB(MuteType.Voice);
VJKXWWJBSMDPLFHLPOQGQMYRDXYXNVFUDXJALVWCFD(arg.Player(), LanguageEn ? "You have unblocked the offline chat to the player" : "Вы разблокировали чат offline игроку");
return;
}
else {
VJKXWWJBSMDPLFHLPOQGQMYRDXYXNVFUDXJALVWCFD(arg.Player(), LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
else {
VJKXWWJBSMDPLFHLPOQGQMYRDXYXNVFUDXJALVWCFD(arg.Player(), LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
HCXZYJLEVSHSWRNTTXEBONCISJHEOTYDYWYRFXVTCFSQQAY(target, MuteType.Voice, arg.Player(), false, true);
Puts(LanguageEn ? "Successfully" : "Успешно");
}
void OnGroupPermissionGranted(string name, string TUZRVRNDYKUPXQGCDYEAKUWVIONVDNKDLZXNRXJXSWYP) {
String[] PlayerGroups = permission.GetUsersInGroup(name);
if (PlayerGroups == null) return;
foreach (String playerInfo in PlayerGroups) {
BasePlayer player = BasePlayer.FindByID(UInt64.Parse(playerInfo.Substring(0, 17)));
if (player == null) return;
KUFMRJTGHHHWDVSDYPKNDYRWBHXYHCYDIHGERZOF(player.UserIDString, TUZRVRNDYKUPXQGCDYEAKUWVIONVDNKDLZXNRXJXSWYP);
}
}
private Boolean SetMuteFakeUser(String idOrName, Boolean isMuted) {
if (!IsReadyIQFakeActive()) return false;
return IQFakeActive.Call<Boolean>("MuteAction", idOrName, isMuted);
}
private void BVQBTRUDNOCSKOFSCQWDXKDBHGZRDFJVWYXQXQEXJZ(BasePlayer player, String reason) {
Configuration.ControllerAlert.AdminSession AlertSessionAdmin = config.ControllerAlertSetting.AdminSessionSetting;
Configuration.ControllerAlert.PlayerSession AlertSessionPlayer = config.ControllerAlertSetting.PlayerSessionSetting;
GeneralInformation.RenameInfo QGCLEKIIIPZAXCVWPBCMAMMVFOIVKBNTIHTHLSSCXUJ = GeneralInfo.VLAXBOYNYEZXKDALSCOKNLTJXPJWTHXGSRLPSPLH(player.userID);
if (AlertSessionPlayer.DisconnectedAlert) {
if (!AlertSessionAdmin.DisconnectedAlertAdmin) if (player.IsAdmin) return;
String DisplayName = player.displayName;
UInt64 UserID = player.userID;
if (QGCLEKIIIPZAXCVWPBCMAMMVFOIVKBNTIHTHLSSCXUJ != null) {
DisplayName = QGCLEKIIIPZAXCVWPBCMAMMVFOIVKBNTIHTHLSSCXUJ.RenameNick;
UserID = QGCLEKIIIPZAXCVWPBCMAMMVFOIVKBNTIHTHLSSCXUJ.RenameID;
}
String Avatar = AlertSessionPlayer.ConnectedAvatarUse ? UserID.ToString() : String.Empty;
if (!permission.UserHasPermission(player.UserIDString, PermissionHideDisconnection)) {
if (AlertSessionPlayer.DisconnectedAlertRandom) YIDQNFRMHIUYRFLOCBIWBXRJKSHSOVEWKJJLEFKNBOI(null, Avatar, false, AlertSessionPlayer.RandomDisconnectedAlert.LanguageMessages, DisplayName, reason);
else {
System.Object[] args = AlertSessionPlayer.DisconnectedReason ? new System.Object[] {
DisplayName, reason
}
: new System.Object[] {
DisplayName
}
;
String Lang = AlertSessionPlayer.DisconnectedReason ? "LEAVE_PLAYER_REASON" : "LEAVE_PLAYER";
YIDQNFRMHIUYRFLOCBIWBXRJKSHSOVEWKJJLEFKNBOI(null, Avatar, false, Lang, args);
}
}
LXLPRVUXTKVPPZQFMXGHYVZRGFHQTYNIXVOHRSMGMIFAVSOF($"[{player.userID}] {(AlertSessionPlayer.DisconnectedReason ? BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("LEAVE_PLAYER_REASON", player.UserIDString, DisplayName, reason) : BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("LEAVE_PLAYER", player.UserIDString, DisplayName))}");
}
}
[ChatCommand("ignore")]
void CDKBFEPJZJGJJLXTKSMMKETGBTMNVOWVPZNHKOZEOEL(BasePlayer player, String cmd, String[] arg) {
Configuration.ControllerMessage ControllerMessages = config.ControllerMessages;
if (!ControllerMessages.TDUNXIAKWWJJJEYKPSTHXPHRRMTWGYBVIVHWKSEBNQK.EVKWXAYXWTEIFEYBPTPCPSNRPTSRKNPKENDXHVADIYQDHGQ) return;
User Info = UserInformation[player.userID];
if (arg.Length == 0 || arg == null) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("INGORE_NOTARG", player.UserIDString));
return;
}
String NameUser = arg[0];
if (IsFakeUser(NameUser)) {
var playerList = GetCombinedPlayerList();
if (playerList != null) {
var fakeUser = playerList.FirstOrDefault(x => x.displayName.Contains(NameUser));
if (fakeUser != null) {
if (UInt64.TryParse(fakeUser.userId, out UInt64 userIDFake)) {
String LangFake = !Info.Settings.IsIgnored(userIDFake) ? BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IGNORE_ON_PLAYER", player.UserIDString, fakeUser.displayName) : BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IGNORE_OFF_PLAYER", player.UserIDString, fakeUser.displayName);
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, LangFake);
Info.Settings.JUGKPBJFIEBUXBFDZHBIHDZEJDDZUECUGRFLWQVP(userIDFake);
}
}
}
return;
}
BasePlayer TargetUser = BasePlayer.Find(NameUser);
if (TargetUser == null || NameUser == null) {
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("COMMAND_PM_NOT_USER", player.UserIDString));
return;
}
String Lang = !Info.Settings.IsIgnored(TargetUser.userID) ? BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IGNORE_ON_PLAYER", player.UserIDString, TargetUser.displayName) : BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IGNORE_OFF_PLAYER", player.UserIDString, TargetUser.displayName);
MGHRVTOKEDSYAQPKDNOBAZFFXMCVDKMYBPTFNSUK(player, Lang);
Info.Settings.JUGKPBJFIEBUXBFDZHBIHDZEJDDZUECUGRFLWQVP(TargetUser.userID);
}
private object YTYPPYFUMREPMEOCABEIVZJGICWKKGXVAZKOUWKHZU(String message, String name) {
if (config.ControllerMessages.TDUNXIAKWWJJJEYKPSTHXPHRRMTWGYBVIVHWKSEBNQK.EZPOTPFMITGEIHNJDUDSBATUSLURCKKJDCMKYBQPIRPOOW) if (message.Contains("gave") && name == "SERVER") return true;
return null;
}
[ConsoleCommand("alert")]
private void XUMEKKXETJRUBMZBCHVAWQQWOIRJGCGUJIMCWXKPRFIE(ConsoleSystem.Arg args) {
BasePlayer HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG = args.Player();
if (HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG != null) if (!permission.UserHasPermission(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG.UserIDString, SNFFBQHHUBJBHPAISBLLLJVLJLSJJUBJOEDSXZSDUYKY)) return;
Alert(HLKXHENSBGNMJBFCDWKAXNKQKJULLJJPGGIOBZJMDCG, args.Args, false);
}
private void OEEGORRXKTNWONAXYQEYKYNHVNEDLKYTGGXUYNIBJ(BasePlayer player, TakeElementUser DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY, Configuration.ControllerParameters.AdvancedFuncion Info, Int32 VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL, Int32 Y, Int32 Count) {
String Interface = InterfaceBuilder.UBCKLARJZEEEQHYDYGSDAZHGUDTJESOQZZGKPBECPMPKJBDFD("UI_Chat_OpenDropListArgument");
if (Interface == null) return;
String Argument = DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.MultiPrefix || DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.Prefix ? Info.Argument : DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.Nick ? $"<color={Info.Argument}>{player.displayName}</color>" : DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.Chat ? $"<color={Info.Argument}>{BDDRMTPFINHODHPFMQANUIDXXFQIPQADDESYPYDPTZSMSZKL("IQCHAT_CONTEXT_NICK_DISPLAY_MESSAGE", player.UserIDString)}</color>" : DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY == TakeElementUser.Rank ? EKOMMMJSLJFSYDQYTTVATRHBTSBLDUXJPVXJJNQR(Info.Argument) : String.Empty;
Interface = Interface.Replace("%OFFSET_MIN%", $"{-140.32 - (-103 * VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL)} {-2.24 + (Y * -28)}");
Interface = Interface.Replace("%OFFSET_MAX%", $"{-65.27 - (-103 * VQLBDNYHFXZDUBHMHXKFZPJUKIZZPLULONMYNNRJSL)} {22.56 + (Y * -28)}");
Interface = Interface.Replace("%COUNT%", Count.ToString());
Interface = Interface.Replace("%ARGUMENT%", Argument);
Interface = Interface.Replace("%TAKE_COMMAND_ARGUMENT%", $"newui.cmd droplist.controller element.take {DCUONYBXGUQZUESTGJWTQFRCLWGPAVRHVFFPHOTJJDRY} {Count} {Info.Permissions} {Info.Argument}");
CuiHelper.DestroyUi(player, $"ArgumentDropList_{Count}");
CuiHelper.AddUi(player, Interface);
}
private void OnServerInitialized() {
_ = this;
if(IQFakeActive && config.ReferenceSetting.IQFakeActiveSettings.UseIQFakeActive) if (IQFakeActive.Version < new Oxide.Core.VersionNumber(2, 0, 0)) {
PrintWarning(LanguageEn ? "You have an outdated version of the IQFakeActive plugin, the plugin cannot access the API, update the IQIQFakeActiveChat plugin to version 2.0.0 or higher" : "У вас устаревшая версия плагина IQFakeActive, плагин не может получить доступ к API, обновите плагин IQFakeActive до версии 2.0.0 или выше");
NextTick(() => {
Interface.Oxide.UnloadPlugin(Name);
}
);
return;
}
if (!TranslationAPI && config.ReferenceSetting.translationApiSettings.useTranslationApi) {
PrintWarning(LanguageEn ? "You have TranslationAPI support enabled, but the plugin is not installed.Download and install the plugin - https://umod.org/plugins/translation-api" : "У вас включена поддержка TranslationAPI, но не установлен плагин.Скачайте и установите плагин - https://umod.org/plugins/translation-api");
NextTick(() => {
Interface.Oxide.UnloadPlugin(Name);
}
);
return;
}
ImageUi.RHVVSFPNAKZZPQVFQTYNBVKTEMAEKJOEZLRVLUZSZOOBMQ();
RVPQWMGYUHASNZFUYOWOCJGQXMKAHOFXFVUDTEPFMN();
foreach (BasePlayer player in BasePlayer.activePlayerList) UserConnecteionData(player);
RLGTSESMUBNOMGTHBIFTULRPPZMUPCREBSDULRBLGTLXNQAA();
TNEDGYVFKWTWZGZPDTGWJJVSUBFXCUYADEGGXWSNEHXSXWSP();
QSBXDTQSLPQXSCQMHEIDNEZTMOXQIBHTGVQHRUKH();
if (!config.ControllerMessages.NTPLWGJEIHKEVCWKOEDYVOANXCAXOSTGETDYWIZZOWMAK.MDCTCHQKQAORSUXMUWVSGVMOKZZMVPQUEAEKJEUINKXXXD.IRONMZELQRNJDHDPAJTMSQMCQCNFVYORGQRVHCEUZPN) Unsubscribe("OnUserConnected");
}
[ConsoleCommand("mute")]
void SAIGLQSHTNNMKFBJXNMCJGXJDGIJRISXIABNXMMRS(ConsoleSystem.Arg arg) {
if (arg.Player() != null) if (!permission.UserHasPermission(arg.Player().UserIDString, ETNACMLOMEBYIUVDPIHTWRBYEDOMDFQCVBWEHJFC)) return;
if (arg == null || arg.Args == null || arg.Args.Length != 3 || arg.Args.Length > 3) {
PrintWarning(LanguageEn ? "Invalid syntax, use : mute Steam64ID/Nick Reason Time(seconds)" : "Неверный синтаксис,используйте : mute Steam64ID/Ник Причина Время(секунды)");
return;
}
string NameOrID = arg.Args[0];
string Reason = arg.Args[1];
Int32 TimeMute = 0;
if (!Int32.TryParse(arg.Args[2], out TimeMute)) {
PrintWarning(LanguageEn ? "Enter time in numbers!" : "Введите время цифрами!");
return;
}
BasePlayer target = KKUBBBBPUANJENDAMCEYIQLTMZOQDRIIHPKJCJONCBUFXY(NameOrID);
if (target == null) {
UInt64 Steam64ID = 0;
if (UInt64.TryParse(NameOrID, out Steam64ID)) {
if (UserInformation.ContainsKey(Steam64ID)) {
User Info = UserInformation[Steam64ID];
if (Info == null) return;
if (Info.MuteInfo.RNREYHUWXUNEDIUYANKMLVSMKBNDIIEUZKDPOETRNX(MuteType.Chat)) {
PrintWarning(LanguageEn ? "The player already has a chat lock" : "Игрок уже имеет блокировку чата");
return;
}
Info.MuteInfo.WZRUOJRFANWCWMBLETLOBZTSGCBTQAAVLBJWCMUCUNUZ(MuteType.Chat, TimeMute);
PrintWarning(LanguageEn ? "Chat blocking issued to offline player" : "Блокировка чата выдана offline-игроку");
return;
}
else {
PrintWarning(LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
else {
PrintWarning(LanguageEn ? "This player is not on the server" : "Такого игрока нет на сервере");
return;
}
}
APFFWHBZFDVKHCVOMKWEOHGEHJVVPOSHDTXBAGSY(target, MuteType.Chat, 0, arg.Player(), Reason, TimeMute, false, true);
Puts(LanguageEn ? "Successfully" : "Успешно");
}
private IEnumerable<T> GetPageOfPlayers<T>(IEnumerable<T> items, Int32 page) => items != null ? items.Skip(18 * page).Take(18) : Enumerable.Empty<T>();
private class InterfaceBuilder {
public static InterfaceBuilder Instance;
public const String UI_Chat_Context = "UI_IQCHAT_CONTEXT";
public const String UI_Chat_Context_Visual_Nick = "UI_IQCHAT_CONTEXT_VISUAL_NICK";
public const String UI_Chat_Alert = "UI_IQCHAT_ALERT";
public Dictionary<String, String> Interfaces;
public InterfaceBuilder() {
Instance = this;
Interfaces = new Dictionary<String, String>();
OEELARBSZOQMITMEEHXXAWGMTDQFLVNIAZROBTCJADMWZ();
VWNDPHUZGKKJYZXIRCVHDUDOPYUMFTGFCBBWMKQBENORSCQU();
WTBNNUTXMSYSRXBVHDBIMIBXDKEOWXJJMEGWEYISODNZQ();
SNXAUPYDZVSGKRSQHPRFVJQYEQHLLYYMJKRMMAJOMSEIGWN();
DQDDIFWJXZVDHNSAXGWZZGDGFCTDEISIDTIVVVDENIPNE();
HYZEKAANOXMXXGLTFPHNANFXFCCSMRQQCAVVDAXRIP();
CFIFWJVRCNRDKDPEAOIOFNQERIVITJVCHUIZGQAAOVC();
FAOECKCYRBCOODONNNXSSPWPVQYJOIZKKXYQURFJHXLFRTL();
QXXGBBXIHXVSCGDCJRNLQLYTONAQREKUCLWHFAXDSTPNWMQ();
ZEGIBBDEYESNBHRDNBQQKVWJUJSXVKXCWMQMYBTBHRIBH();
CKBMAUWACDHWORIGJOGQROQEELHOISMVBKGHVIJCFVJ();
FBNCSBIUVQROUXIPNHSJQMVDKAKAEDKVEDZDYFVGKSAL();
LIYXXTUDZFRFTTCYHXHBWGVUXKQPERPFLHTOHEFZSO();
CNMBYJAQDYIMLSKIBSEREXTWHOLVEQXCEWHAVYLA();
IMVISYOMCDZPTXETQTKYFMNAGHPLJNDGDUWKXNPQWIBMYMLY();
GEFBCRWZVBKIDDOASMZBTWCEUBWKABUWQICIXFACZ();
BMEHTENMGALWJKCAHAVLZTHNRVBFCNLXBIUQAMIRXNUT();
UYSGWXAGOMIEQPXDHJTONVAPLAVRDOLYNCXWJYFPLQNW();
HTIFQQSARJJLSGUSXUKIOFMFDGYFPBXLSESUCGPAOM();
LKXLNPEBEYYYCVWCICZAJRNRBUIDDDWIECAQXGPZHXJE();
YGDJNCOOVDUWFJTGAXABQUZUFECNZTLHJSDNFUPBITIZGUSWW();
GZICIDGJDJZAOBRMMNGFBFHZSWLAOLLFQGNLZHJZHWQGBHE();
}
public static void OIKVKXUJWOWUAXGLCJXEAYALSLQCGWOPOGUMCYRIOA(String name, String json) {
if (Instance.Interfaces.ContainsKey(name)) {
_.PrintError($"Error! Tried to add existing cui elements! -> {name}");
return;
}
Instance.Interfaces.Add(name, json);
}
public static string UBCKLARJZEEEQHYDYGSDAZHGUDTJESOQZZGKPBECPMPKJBDFD(String name) {
string json = string.Empty;
if (Instance.Interfaces.TryGetValue(name, out json) == false) {
_.PrintWarning($"Warning! UI elements not found by name! -> {name}");
}
return json;
}
public static void SCVXXUUWQIGIFHPOFQBONXCPNNKWWSZOFJZMUBCLPTKWWHHH() {
for (var i = 0; i < BasePlayer.activePlayerList.Count; i++) {
var player = BasePlayer.activePlayerList[i];
CuiHelper.DestroyUi(player, UI_Chat_Context);
CuiHelper.DestroyUi(player, UI_Chat_Context_Visual_Nick);
CuiHelper.DestroyUi(player, UI_Chat_Alert);
CuiHelper.DestroyUi(player, "MUTE_AND_IGNORE_PANEL_ALERT");
}
}
private void VWNDPHUZGKKJYZXIRCVHDUDOPYUMFTGFCBBWMKQBENORSCQU() {
CuiElementContainer container = new CuiElementContainer();
container.Add(new CuiElement {
Name = UI_Chat_Context_Visual_Nick, Parent = UI_Chat_Context, Components = {
new CuiTextComponent {
Text = "%NICK_DISPLAY%", Font = "robotocondensed-regular.ttf", FontSize = 12, Align = TextAnchor.MiddleLeft, Color = "1 1 1 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0.5 0.5", AnchorMax = "0.5 0.5", OffsetMin = "-265 -25.878", OffsetMax = "-2.644 -8.613"
}
}
}
);
OIKVKXUJWOWUAXGLCJXEAYALSLQCGWOPOGUMCYRIOA("UI_Chat_Context_Visual_Nick", container.ToJson());
}
private void OEELARBSZOQMITMEEHXXAWGMTDQFLVNIAZROBTCJADMWZ() {
Configuration.ControllerParameters Controller = config.ZIHOLJKQWCTOEGCYDYYKNXAGZSIURQYVHHMYEZDSBXVO;
if(Controller == null) {
_.PrintWarning("Ошибка генерации интерфейса, null значение в конфигурации, свяжитесь с разработчиком");
return;
}
CuiElementContainer container = new CuiElementContainer();
container.Add(new CuiPanel {
CursorEnabled = true, RectTransform = {
AnchorMin = "0.270 0.5", AnchorMax = "0.900 0.5", OffsetMin = "0 -305", OffsetMax = "0 205"
}
, Image = {
Color = "0.4 0.4 0.4 0"
}
}
, "MS_UI", UI_Chat_Context);
container.Add(new CuiElement {
Parent = UI_Chat_Context, Name = "MULTIPLE_PANEL_BACKGROUND", Components = {
new CuiRawImageComponent {
Png = ImageUi.AUARHCTZGUGDHQRMELZORQOMLTVPREYVEVOVALVBZYID("IQCHAT_MULTIPLE_PANEL_BACKGROUND"), Color = "0.9 0.9 0.9 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0.5 1", AnchorMax = "0.5 1", OffsetMin = "-310 -210", OffsetMax = "310 -5"
}
}
}
);
container.Add(new CuiElement {
Parent = UI_Chat_Context, Name = "INFORMATION_PANEL_BACKGROUND", Components = {
new CuiRawImageComponent {
Png = ImageUi.AUARHCTZGUGDHQRMELZORQOMLTVPREYVEVOVALVBZYID("IQCHAT_PANEL_BACKGROUND"), Color = "0.9 0.9 0.9 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0.5 0", AnchorMax = "0.5 0", OffsetMin = "-300 65", OffsetMax = "-1 295"
}
}
}
);
container.Add(new CuiElement {
Parent = UI_Chat_Context, Name = "SETTINGS_PANEL_BACKGROUND", Components = {
new CuiRawImageComponent {
Png = ImageUi.AUARHCTZGUGDHQRMELZORQOMLTVPREYVEVOVALVBZYID("IQCHAT_PANEL_BACKGROUND"), Color = "0.9 0.9 0.9 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0.5 0", AnchorMax = "0.5 0", OffsetMin = "6 65", OffsetMax = "300 295"
}
}
}
);
container.Add(new CuiElement {
Name = "ImageContext", Parent = UI_Chat_Context, Components = {
new CuiRawImageComponent {
Color = "1 1 1 1", Png = "%IMG_BACKGROUND%"
}
, new CuiRectTransformComponent {
AnchorMin = "0 0", AnchorMax = "1 1"
}
}
}
);
container.Add(new CuiElement {
Name = "TitleLabel", Parent = UI_Chat_Context, Components = {
new CuiTextComponent {
Text = "%SETTING_ELEMENT%", Font = "robotocondensed-regular.ttf", FontSize = 20, Align = TextAnchor.MiddleLeft, Color = "1 1 1 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0 1", AnchorMax = "0 1", OffsetMin = "30 -50", OffsetMax = "500 0"
}
}
}
);
container.Add(new CuiElement {
Name = "InformationLabel", Parent = UI_Chat_Context, Components = {
new CuiTextComponent {
Text = "%INFORMATION%", Font = "robotocondensed-regular.ttf", FontSize = 20, Align = TextAnchor.MiddleLeft, Color = "1 1 1 1"
}
, new CuiRectTransformComponent {
AnchorMin = "0 1", AnchorMax = "0 1", OffsetMin = "30 -250", OffsetMax = "200 -220"
}
// ... [Code preview truncated due to length. Full source in attached file] ...