mirror of
https://github.com/All-Of-Us-Mods/MiraAPI.git
synced 2026-10-20 01:46:15 +00:00
Add locale to task adder
This commit is contained in:
1 parent
12a1908c3e
commit
ae5f3783b4
3 files changed
+29
-9
No files matched your search
@@ -10,6 +10,7 @@ using MiraAPI.Modifiers;
|
|||||||
using MiraAPI.Modifiers.Types;
|
using MiraAPI.Modifiers.Types;
|
||||||
using MiraAPI.PluginLoading;
|
using MiraAPI.PluginLoading;
|
||||||
using MiraAPI.Roles;
|
using MiraAPI.Roles;
|
||||||
|
using MiraAPI.Utilities;
|
||||||
using MiraAPI.Utilities.Assets;
|
using MiraAPI.Utilities.Assets;
|
||||||
using Reactor.Utilities.Extensions;
|
using Reactor.Utilities.Extensions;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
@@ -65,16 +66,18 @@ internal static class TaskAdderPatches
|
|||||||
__instance.RootFolderPrefab.GetComponent<PassiveButton>().ClickMask = collider;
|
__instance.RootFolderPrefab.GetComponent<PassiveButton>().ClickMask = collider;
|
||||||
__instance.RootFolderPrefab.gameObject.SetActive(false);
|
__instance.RootFolderPrefab.gameObject.SetActive(false);
|
||||||
__instance.TaskParent = inner.transform;
|
__instance.TaskParent = inner.transform;
|
||||||
|
var crewLocale = TranslationController.Instance.GetString(StringNames.Crewmate);
|
||||||
|
var impLocale = TranslationController.Instance.GetString(StringNames.Impostor);
|
||||||
|
|
||||||
var crewmateFolder = __instance.Root.SubFolders.ToArray().FirstOrDefault(x => x.FolderName == "Crewmate")!;
|
var crewmateFolder = __instance.Root.SubFolders.ToArray().FirstOrDefault(x => x.FolderName == crewLocale)!;
|
||||||
var impostorFolder = __instance.Root.SubFolders.ToArray().FirstOrDefault(x => x.FolderName == "Impostor")!;
|
var impostorFolder = __instance.Root.SubFolders.ToArray().FirstOrDefault(x => x.FolderName == impLocale)!;
|
||||||
var neutralFolder = __instance.CreateFolder("Neutral", __instance.Root, 2, Color.gray);
|
//var neutralFolder = __instance.CreateFolder("Neutral", __instance.Root, 2, Color.gray);
|
||||||
var modifiersFolder = __instance.CreateFolder("Modifiers", __instance.Root, 0, Color.blue);
|
var modifiersFolder = __instance.CreateFolder("Modifiers", __instance.Root, 0, Color.blue);
|
||||||
|
|
||||||
folders.Clear();
|
folders.Clear();
|
||||||
folders.Add(crewmateFolder.FolderName, crewmateFolder);
|
folders.Add(crewmateFolder.FolderName, crewmateFolder);
|
||||||
folders.Add(impostorFolder.FolderName, impostorFolder);
|
folders.Add(impostorFolder.FolderName, impostorFolder);
|
||||||
folders.Add("Neutrals", neutralFolder);
|
//folders.Add("Neutrals", neutralFolder);
|
||||||
folders.Add("Modifiers", modifiersFolder);
|
folders.Add("Modifiers", modifiersFolder);
|
||||||
|
|
||||||
int folderIdx = 3;
|
int folderIdx = 3;
|
||||||
@@ -350,7 +353,7 @@ internal static class TaskAdderPatches
|
|||||||
{
|
{
|
||||||
TaskAddButton roleAddButton = Object.Instantiate(__instance.RoleButton);
|
TaskAddButton roleAddButton = Object.Instantiate(__instance.RoleButton);
|
||||||
roleAddButton.SafePositionWorld = __instance.SafePositionWorld;
|
roleAddButton.SafePositionWorld = __instance.SafePositionWorld;
|
||||||
roleAddButton.Text.text = prettyEnabled ? role.NiceName : "Be_" + role.NiceName + ".exe";
|
roleAddButton.Text.text = prettyEnabled ? role.GetRoleName() : "Be_" + role.GetRoleName() + ".exe";
|
||||||
roleAddButton.Role = role;
|
roleAddButton.Role = role;
|
||||||
if (prettyEnabled)
|
if (prettyEnabled)
|
||||||
{
|
{
|
||||||
@@ -389,8 +392,10 @@ internal static class TaskAdderPatches
|
|||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
var crewLocale = TranslationController.Instance.GetString(StringNames.Crewmate);
|
||||||
|
var impLocale = TranslationController.Instance.GetString(StringNames.Impostor);
|
||||||
|
|
||||||
var teamFolder = roleBehaviour.IsImpostor ? "Impostor" : "Crewmate";
|
var teamFolder = roleBehaviour.IsImpostor ? impLocale : crewLocale;
|
||||||
if (roleBehaviour is ICustomRole cs)
|
if (roleBehaviour is ICustomRole cs)
|
||||||
{
|
{
|
||||||
teamFolder = cs.Configuration.FreeplayFolder;
|
teamFolder = cs.Configuration.FreeplayFolder;
|
||||||
@@ -403,7 +408,7 @@ internal static class TaskAdderPatches
|
|||||||
var roleAddButton = Object.Instantiate(__instance.RoleButton);
|
var roleAddButton = Object.Instantiate(__instance.RoleButton);
|
||||||
roleAddButton.MyTask = null;
|
roleAddButton.MyTask = null;
|
||||||
roleAddButton.SafePositionWorld = __instance.SafePositionWorld;
|
roleAddButton.SafePositionWorld = __instance.SafePositionWorld;
|
||||||
roleAddButton.Text.text = prettyEnabled ? roleBehaviour.NiceName : "Be_" + roleBehaviour.NiceName + ".exe";
|
roleAddButton.Text.text = prettyEnabled ? roleBehaviour.GetRoleName() : "Be_" + roleBehaviour.GetRoleName() + ".exe";
|
||||||
roleAddButton.Text.EnableMasking();
|
roleAddButton.Text.EnableMasking();
|
||||||
roleAddButton.role = roleBehaviour;
|
roleAddButton.role = roleBehaviour;
|
||||||
if (prettyEnabled)
|
if (prettyEnabled)
|
||||||
|
|||||||
@@ -34,8 +34,8 @@ public record struct CustomRoleConfiguration
|
|||||||
ShowInFreeplay = roleBehaviour?.IsDead == false;
|
ShowInFreeplay = roleBehaviour?.IsDead == false;
|
||||||
FreeplayFolder = role.Team switch
|
FreeplayFolder = role.Team switch
|
||||||
{
|
{
|
||||||
ModdedRoleTeams.Crewmate => "Crewmate",
|
ModdedRoleTeams.Crewmate => TranslationController.Instance.GetString(StringNames.Crewmate),
|
||||||
ModdedRoleTeams.Impostor => "Impostor",
|
ModdedRoleTeams.Impostor => TranslationController.Instance.GetString(StringNames.Impostor),
|
||||||
_ => "Neutral",
|
_ => "Neutral",
|
||||||
};
|
};
|
||||||
IntroSound = role.Team is ModdedRoleTeams.Crewmate
|
IntroSound = role.Team is ModdedRoleTeams.Crewmate
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ using System.Globalization;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using Il2CppInterop.Runtime.InteropTypes.Arrays;
|
using Il2CppInterop.Runtime.InteropTypes.Arrays;
|
||||||
using MiraAPI.Keybinds;
|
using MiraAPI.Keybinds;
|
||||||
|
using MiraAPI.Roles;
|
||||||
using MiraAPI.Utilities.Assets;
|
using MiraAPI.Utilities.Assets;
|
||||||
using Rewired;
|
using Rewired;
|
||||||
using TMPro;
|
using TMPro;
|
||||||
@@ -495,4 +496,18 @@ public static class Helpers
|
|||||||
(Il2CppSystem.Object[])[value.ToString(formatString, CultureInfo.InvariantCulture)]),
|
(Il2CppSystem.Object[])[value.ToString(formatString, CultureInfo.InvariantCulture)]),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the string of a role.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="role">The role to find.</param>
|
||||||
|
/// <returns>The role name.</returns>
|
||||||
|
public static string GetRoleName(this RoleBehaviour role)
|
||||||
|
{
|
||||||
|
if (role is ICustomRole custom)
|
||||||
|
{
|
||||||
|
return custom.RoleName;
|
||||||
|
}
|
||||||
|
return role.NiceName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user