-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMain.cs
60 lines (53 loc) · 2.12 KB
/
Main.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using Rocket.API.Collections;
using Rocket.Core.Plugins;
using UP = Rocket.Unturned.Player.UnturnedPlayer;
using static SMultiLangTranslations.Utils;
using Rocket.Unturned.Chat;
using Rocket.Unturned;
using UnityEngine;
namespace SMultiLangTranslations
{
public class MultiLangManager : MultiLangRocketPlugin<Config>
{
public static MultiLangManager Instance;
/// <summary>
/// Creates new instance of <see cref="MultiLangTranslator" /> for <paramref name="plugin" /> <br/>
/// You can use <see cref="MultiLangRocketPlugin" /> for easier integration
/// </summary>
/// <param name="plugin"></param>
/// <returns>Default <see cref="MultiLangTranslator"/></returns>
public static MultiLangTranslator RegisterTranslator(RocketPlugin plugin) => new MultiLangTranslator(plugin);
/// <summary>
/// Creates new instance of <see cref="MultiLangTranslator"/> for custom usage<br/>
/// </summary>
/// <returns>Custom <see cref="MultiLangTranslator"/></returns>
public static MultiLangTranslator RegisterCustomTranslator(string directory, string prefix) => new MultiLangTranslator(directory, prefix);
protected override void Unload()
{
#if DEBUG
U.Events.OnPlayerConnected -= playerConnected;
#endif
}
protected override void Load()
{
Instance = this;
#if DEBUG
U.Events.OnPlayerConnected += playerConnected;
#endif
}
#if DEBUG
void playerConnected(UP up)
{
var color = Color.yellow;
Log($"Player {up.CSteamID} with language {conf.GetLanguage(up.CSteamID)}", Utils.ToConsoleColor(color));
foreach(var translation in DefaultTranslations)
UnturnedChat.Say(up, Translate(up, translation.Id), color);
}
#endif
public override TranslationList DefaultTranslations => new TranslationList
{
{ LangCommand.LangChanged, "You successfully changed your language to: \"{0}\"" },
{ LangCommand.LangError, "Usage: `/lang [language]`. Example: `/lang ru`." },
};
}
}