mirror of
https://github.com/All-Of-Us-Mods/MiraAPI.git
synced 2026-10-20 01:46:15 +00:00
cleanup CustomPlayerMenu.cs
This commit is contained in:
1 parent
51b54d4340
commit
b28a0a1253
1 file changed
+27
-27
@@ -1,5 +1,6 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Diagnostics.CodeAnalysis;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using AmongUs.GameOptions;
|
using AmongUs.GameOptions;
|
||||||
using Il2CppInterop.Runtime.Attributes;
|
using Il2CppInterop.Runtime.Attributes;
|
||||||
@@ -8,6 +9,8 @@ using Reactor.Utilities.Attributes;
|
|||||||
using Reactor.Utilities.Extensions;
|
using Reactor.Utilities.Extensions;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Events;
|
using UnityEngine.Events;
|
||||||
|
#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member
|
||||||
|
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.
|
||||||
|
|
||||||
namespace MiraAPI.Hud;
|
namespace MiraAPI.Hud;
|
||||||
|
|
||||||
@@ -16,22 +19,18 @@ namespace MiraAPI.Hud;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="il2CppPtr">Used by Il2Cpp. Do not use constructor, this is a MonoBehaviour.</param>
|
/// <param name="il2CppPtr">Used by Il2Cpp. Do not use constructor, this is a MonoBehaviour.</param>
|
||||||
[RegisterInIl2Cpp]
|
[RegisterInIl2Cpp]
|
||||||
|
[SuppressMessage("Design", "CA1051:Do not declare visible instance fields", Justification = "Unity Convention")]
|
||||||
|
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1307:Accessible fields should begin with upper-case letter", Justification = "Unity Convention")]
|
||||||
|
[SuppressMessage("StyleCop.CSharp.MaintainabilityRules", "SA1401:Fields should be private", Justification = "Unity Convention")]
|
||||||
public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
||||||
{
|
{
|
||||||
public ShapeshifterPanel PanelPrefab;
|
public ShapeshifterPanel panelPrefab;
|
||||||
|
public float xStart = -0.8f;
|
||||||
public float XStart = -0.8f;
|
public float yStart = 2.15f;
|
||||||
|
public float xOffset = 1.95f;
|
||||||
public float YStart = 2.15f;
|
public float yOffset = -0.65f;
|
||||||
|
public UiElement backButton;
|
||||||
public float XOffset = 1.95f;
|
public UiElement defaultButtonSelected;
|
||||||
|
|
||||||
public float YOffset = -0.65f;
|
|
||||||
|
|
||||||
public UiElement BackButton;
|
|
||||||
|
|
||||||
public UiElement DefaultButtonSelected;
|
|
||||||
|
|
||||||
public List<ShapeshifterPanel> potentialVictims;
|
public List<ShapeshifterPanel> potentialVictims;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -42,17 +41,17 @@ public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
|||||||
{
|
{
|
||||||
var shapeShifterRole = RoleManager.Instance.GetRole(RoleTypes.Shapeshifter);
|
var shapeShifterRole = RoleManager.Instance.GetRole(RoleTypes.Shapeshifter);
|
||||||
|
|
||||||
var ogMenu = shapeShifterRole.TryCast<ShapeshifterRole>().ShapeshifterMenu;
|
var ogMenu = shapeShifterRole.TryCast<ShapeshifterRole>()!.ShapeshifterMenu;
|
||||||
var newMenu = Instantiate(ogMenu);
|
var newMenu = Instantiate(ogMenu);
|
||||||
var customMenu = newMenu.gameObject.AddComponent<CustomPlayerMenu>();
|
var customMenu = newMenu.gameObject.AddComponent<CustomPlayerMenu>();
|
||||||
|
|
||||||
customMenu.PanelPrefab = newMenu.PanelPrefab;
|
customMenu.panelPrefab = newMenu.PanelPrefab;
|
||||||
customMenu.XStart = newMenu.XStart;
|
customMenu.xStart = newMenu.XStart;
|
||||||
customMenu.YStart = newMenu.YStart;
|
customMenu.yStart = newMenu.YStart;
|
||||||
customMenu.XOffset = newMenu.XOffset;
|
customMenu.xOffset = newMenu.XOffset;
|
||||||
customMenu.YOffset = newMenu.YOffset;
|
customMenu.yOffset = newMenu.YOffset;
|
||||||
customMenu.BackButton = newMenu.BackButton;
|
customMenu.backButton = newMenu.BackButton;
|
||||||
var back = customMenu.BackButton.GetComponent<PassiveButton>();
|
var back = customMenu.backButton.GetComponent<PassiveButton>();
|
||||||
back.OnClick.RemoveAllListeners();
|
back.OnClick.RemoveAllListeners();
|
||||||
back.OnClick.AddListener((UnityAction)(() =>
|
back.OnClick.AddListener((UnityAction)(() =>
|
||||||
{
|
{
|
||||||
@@ -65,7 +64,7 @@ public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
|||||||
|
|
||||||
newMenu.DestroyImmediate();
|
newMenu.DestroyImmediate();
|
||||||
|
|
||||||
customMenu.transform.SetParent(Camera.main.transform, false);
|
customMenu.transform.SetParent(Camera.main!.transform, false);
|
||||||
customMenu.transform.localPosition = new Vector3(0f, 0f, -50f);
|
customMenu.transform.localPosition = new Vector3(0f, 0f, -50f);
|
||||||
return customMenu;
|
return customMenu;
|
||||||
}
|
}
|
||||||
@@ -75,6 +74,7 @@ public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
|||||||
ControllerManager.Instance.CloseOverlayMenu(name);
|
ControllerManager.Instance.CloseOverlayMenu(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
public override void Begin(PlayerTask task)
|
public override void Begin(PlayerTask task)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException("Use the other Begin method.");
|
throw new NotImplementedException("Use the other Begin method.");
|
||||||
@@ -90,7 +90,7 @@ public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
|||||||
{
|
{
|
||||||
MinigameStubs.Begin(this, null);
|
MinigameStubs.Begin(this, null);
|
||||||
|
|
||||||
var back = BackButton.GetComponent<PassiveButton>();
|
var back = backButton.GetComponent<PassiveButton>();
|
||||||
back.OnClick.AddListener((UnityAction)(() =>
|
back.OnClick.AddListener((UnityAction)(() =>
|
||||||
{
|
{
|
||||||
onClick(null);
|
onClick(null);
|
||||||
@@ -107,13 +107,13 @@ public class CustomPlayerMenu(IntPtr il2CppPtr) : Minigame(il2CppPtr)
|
|||||||
var num = i % 3;
|
var num = i % 3;
|
||||||
var num2 = i / 3;
|
var num2 = i / 3;
|
||||||
var flag = PlayerControl.LocalPlayer.Data.Role.NameColor == player.Data.Role.NameColor;
|
var flag = PlayerControl.LocalPlayer.Data.Role.NameColor == player.Data.Role.NameColor;
|
||||||
var shapeshifterPanel = Instantiate(PanelPrefab, transform);
|
var shapeshifterPanel = Instantiate(panelPrefab, transform);
|
||||||
shapeshifterPanel.transform.localPosition = new Vector3(XStart + num * XOffset, YStart + num2 * YOffset, -1f);
|
shapeshifterPanel.transform.localPosition = new Vector3(xStart + num * xOffset, yStart + num2 * yOffset, -1f);
|
||||||
shapeshifterPanel.SetPlayer(i, player.Data, (Il2CppSystem.Action)(() => { onClick(player); }));
|
shapeshifterPanel.SetPlayer(i, player.Data, (Il2CppSystem.Action)(() => { onClick(player); }));
|
||||||
shapeshifterPanel.NameText.color = flag ? player.Data.Role.NameColor : Color.white;
|
shapeshifterPanel.NameText.color = flag ? player.Data.Role.NameColor : Color.white;
|
||||||
potentialVictims.Add(shapeshifterPanel);
|
potentialVictims.Add(shapeshifterPanel);
|
||||||
list2.Add(shapeshifterPanel.Button);
|
list2.Add(shapeshifterPanel.Button);
|
||||||
}
|
}
|
||||||
ControllerManager.Instance.OpenOverlayMenu(name, BackButton, DefaultButtonSelected, list2);
|
ControllerManager.Instance.OpenOverlayMenu(name, backButton, defaultButtonSelected, list2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user