Skip to content

Commit eb36235

Browse files
committed
Merge branch 'coreclr'
2 parents 5a94455 + ea37c00 commit eb36235

12 files changed

Lines changed: 53 additions & 54 deletions

.github/workflows/main.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ jobs:
77
runs-on: ubuntu-20.04
88

99
steps:
10-
- uses: actions/checkout@v2
10+
- uses: actions/checkout@v3
1111
with:
1212
submodules: true
1313

1414
- name: Setup .NET
15-
uses: actions/setup-dotnet@v1
15+
uses: actions/setup-dotnet@v2
1616
with:
1717
dotnet-version: 6.x
1818

@@ -21,7 +21,7 @@ jobs:
2121
with:
2222
verbosity: Diagnostic
2323

24-
- uses: actions/upload-artifact@v2
24+
- uses: actions/upload-artifact@v3
2525
with:
2626
name: CrowdedMod.dll
27-
path: src/CrowdedMod/bin/Release/netstandard2.1/CrowdedMod.dll
27+
path: src/CrowdedMod/bin/Release/net6.0/CrowdedMod.dll

build.cake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ Task("Build")
2424
settings.VersionSuffix = "ci." + buildId;
2525
}
2626

27-
foreach (var gamePlatform in new[] { "Steam", "Itch" })
27+
foreach (var gamePlatform in new[] { "Steam" })
2828
{
2929
settings.MSBuildSettings.Properties["GamePlatform"] = new[] { gamePlatform };
30-
DotNetCoreBuild("src", settings);
30+
DotNetBuild("src", settings);
3131
}
3232
});
3333

src/CrowdedMod/Components/AbstractPagingBehaviour.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace CrowdedMod.Components;
66
// Interface until unhollower implements generic il2cpp (if it's possible)
77
/// <summary>
88
/// This class is not actually abstract because unhollower does not support it <br/>
9-
/// You need to implement <see cref="OnPageChanged"/> and <see cref="MaxPage"/>
9+
/// You need to implement <see cref="OnPageChanged"/> and <see cref="MaxPageIndex"/>
1010
/// </summary>
1111
public class AbstractPagingBehaviour : MonoBehaviour
1212
{
@@ -19,7 +19,7 @@ public AbstractPagingBehaviour(IntPtr ptr) : base(ptr)
1919
public virtual int MaxPerPage => 15;
2020
// public virtual IEnumerable<T> Targets { get; }
2121

22-
public virtual int Page
22+
public virtual int PageIndex
2323
{
2424
get => _page;
2525
set
@@ -29,7 +29,7 @@ public virtual int Page
2929
}
3030
}
3131

32-
public virtual int MaxPage => throw new NotImplementedException();
32+
public virtual int MaxPageIndex => throw new NotImplementedException();
3333
// public virtual int MaxPages => Targets.Count() / MaxPerPage;
3434

3535
public virtual void OnPageChanged() => throw new NotImplementedException();
@@ -43,11 +43,11 @@ public virtual void Update()
4343
{
4444
if (Input.GetKeyDown(KeyCode.UpArrow) || Input.mouseScrollDelta.y > 0f)
4545
{
46-
Page = Mathf.Clamp(Page - 1, 0, MaxPage);
46+
PageIndex = Mathf.Clamp(PageIndex - 1, 0, MaxPageIndex);
4747
}
4848
else if (Input.GetKeyDown(KeyCode.DownArrow) || Input.mouseScrollDelta.y < 0f)
4949
{
50-
Page = Mathf.Clamp(Page + 1, 0, MaxPage);
50+
PageIndex = Mathf.Clamp(PageIndex + 1, 0, MaxPageIndex);
5151
}
5252
}
5353
}

src/CrowdedMod/Components/MeetingHudPagingBehaviour.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4-
using Reactor;
5-
using UnhollowerBaseLib.Attributes;
4+
using Il2CppInterop.Runtime.Attributes;
5+
using Reactor.Utilities.Attributes;
66
using UnityEngine;
77

88
namespace CrowdedMod.Components;
@@ -14,39 +14,39 @@ public MeetingHudPagingBehaviour(IntPtr ptr) : base(ptr)
1414
{
1515
}
1616

17-
public MeetingHud MeetingHud = null!;
17+
internal MeetingHud meetingHud = null!;
1818

1919
[HideFromIl2Cpp]
20-
public IEnumerable<PlayerVoteArea> Targets => MeetingHud.playerStates.OrderBy(p => p.AmDead);
21-
public override int MaxPage => (Targets.Count() - 1) / MaxPerPage;
20+
public IEnumerable<PlayerVoteArea> Targets => meetingHud.playerStates.OrderBy(p => p.AmDead);
21+
public override int MaxPageIndex => (Targets.Count() - 1) / MaxPerPage;
2222

2323
public override void Update()
2424
{
2525
base.Update();
2626

27-
if (MeetingHud.state is MeetingHud.VoteStates.Animating or MeetingHud.VoteStates.Proceeding)
27+
if (meetingHud.state is MeetingHud.VoteStates.Animating or MeetingHud.VoteStates.Proceeding)
2828
{
2929
return; // TimerText does not update there
3030
}
3131

32-
MeetingHud.TimerText.text += $" ({Page + 1}/{MaxPage + 1})";
32+
meetingHud.TimerText.text += $" ({PageIndex + 1}/{MaxPageIndex + 1})";
3333
}
3434

3535
public override void OnPageChanged()
3636
{
3737
var i = 0;
3838

3939
foreach (var button in Targets) {
40-
if (i >= Page * MaxPerPage && i < (Page + 1) * MaxPerPage) {
40+
if (i >= PageIndex * MaxPerPage && i < (PageIndex + 1) * MaxPerPage) {
4141
button.gameObject.SetActive(true);
4242

4343
var relativeIndex = i % MaxPerPage;
4444
var row = relativeIndex / 3;
4545
var buttonTransform = button.transform;
46-
buttonTransform.localPosition = MeetingHud.VoteOrigin +
46+
buttonTransform.localPosition = meetingHud.VoteOrigin +
4747
new Vector3(
48-
MeetingHud.VoteButtonOffsets.x * (relativeIndex % 3),
49-
MeetingHud.VoteButtonOffsets.y * row,
48+
meetingHud.VoteButtonOffsets.x * (relativeIndex % 3),
49+
meetingHud.VoteButtonOffsets.y * row,
5050
buttonTransform.localPosition.z
5151
);
5252
} else {

src/CrowdedMod/Components/ShapeShifterPagingBehaviour.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4-
using Reactor;
5-
using UnhollowerBaseLib.Attributes;
4+
using Il2CppInterop.Runtime.Attributes;
5+
using Reactor.Utilities.Attributes;
66
using UnityEngine;
77

88
namespace CrowdedMod.Components;
@@ -14,27 +14,27 @@ public ShapeShifterPagingBehaviour(IntPtr ptr) : base(ptr)
1414
{
1515
}
1616

17-
public ShapeshifterMinigame ShapeshifterMinigame = null!;
17+
public ShapeshifterMinigame shapeshifterMinigame = null!;
1818
[HideFromIl2Cpp]
19-
public IEnumerable<ShapeshifterPanel> Targets => ShapeshifterMinigame.potentialVictims.ToArray();
19+
public IEnumerable<ShapeshifterPanel> Targets => shapeshifterMinigame.potentialVictims.ToArray();
2020

21-
public override int MaxPage => (Targets.Count() - 1) / MaxPerPage;
21+
public override int MaxPageIndex => (Targets.Count() - 1) / MaxPerPage;
2222

2323
public override void OnPageChanged()
2424
{
2525
var i = 0;
2626

2727
foreach (var panel in Targets)
2828
{
29-
if (i >= Page * MaxPerPage && i < (Page + 1) * MaxPerPage) {
29+
if (i >= PageIndex * MaxPerPage && i < (PageIndex + 1) * MaxPerPage) {
3030
panel.gameObject.SetActive(true);
3131

3232
var relativeIndex = i % MaxPerPage;
3333
var row = relativeIndex / 3;
3434
var buttonTransform = panel.transform;
3535
buttonTransform.localPosition = new Vector3(
36-
ShapeshifterMinigame.XStart + ShapeshifterMinigame.XOffset * (relativeIndex % 3),
37-
ShapeshifterMinigame.YStart + ShapeshifterMinigame.YOffset * row,
36+
shapeshifterMinigame.XStart + shapeshifterMinigame.XOffset * (relativeIndex % 3),
37+
shapeshifterMinigame.YStart + shapeshifterMinigame.YOffset * row,
3838
buttonTransform.localPosition.z
3939
);
4040
} else {

src/CrowdedMod/CrowdedMod.csproj

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,25 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>netstandard2.1</TargetFramework>
5-
<Version>2.7.0</Version>
4+
<TargetFramework>net6.0</TargetFramework>
5+
<Version>2.7.0-corelcr</Version>
66
<Authors>CrowdedMods, andry08</Authors>
77

88
<LangVersion>latest</LangVersion>
99
<DebugType>embedded</DebugType>
10-
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
1110
<Nullable>enable</Nullable>
1211
</PropertyGroup>
1312
<PropertyGroup>
1413
<GamePlatform Condition="'$(GamePlatform)' == ''">Steam</GamePlatform>
15-
<GameVersion>2022.6.21</GameVersion>
14+
<GameVersion>2022.10.25</GameVersion>
1615
</PropertyGroup>
1716
<ItemGroup>
18-
<PackageReference Include="Reactor" Version="1.1.0" />
19-
<PackageReference Include="BepInEx.IL2CPP" Version="6.0.0-be.540" />
17+
<PackageReference Include="Reactor" Version="2.0.0" />
18+
<PackageReference Include="BepInEx.Unity.IL2CPP" Version="6.0.0-be.662" />
2019
<PackageReference Include="AmongUs.GameLibs.$(GamePlatform)" Version="$(GameVersion)" PrivateAssets="all" />
2120

22-
<PackageReference Include="BepInEx.AutoPlugin" Version="1.0.1" PrivateAssets="all" />
23-
<PackageReference Include="BepInEx.IL2CPP.MSBuild" Version="1.0.2" PrivateAssets="all" />
21+
<PackageReference Include="BepInEx.AutoPlugin" Version="1.1.0" PrivateAssets="all" />
22+
<PackageReference Include="BepInEx.IL2CPP.MSBuild" Version="2.0.1" PrivateAssets="all" />
2423
</ItemGroup>
2524

2625
<Target Name="Copy" AfterTargets="Build" Condition="'$(AmongUs)' != ''">

src/CrowdedMod/CrowdedModPlugin.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
using System.Linq;
22
using BepInEx;
3-
using BepInEx.IL2CPP;
3+
using BepInEx.Unity.IL2CPP;
44
using HarmonyLib;
55
using Reactor;
66

77
namespace CrowdedMod {
8-
[BepInAutoPlugin]
8+
[BepInAutoPlugin("xyz.crowdedmods.crowdedmod")]
99
[BepInProcess("Among Us.exe")]
1010
[BepInDependency(ReactorPlugin.Id)]
1111
[BepInDependency("gg.reactor.debugger", BepInDependency.DependencyFlags.SoftDependency)] // fix debugger overwriting MinPlayers

src/CrowdedMod/Net/SetColorRpc.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using Hazel;
2-
using Reactor;
3-
using Reactor.Networking;
2+
using Reactor.Networking.Attributes;
3+
using Reactor.Networking.Rpc;
44

55
namespace CrowdedMod.Net;
66

src/CrowdedMod/Patches/CreateGameOptionsPatches.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
using System;
22
using HarmonyLib;
3-
using Reactor.Extensions;
3+
using Reactor.Utilities.Extensions;
44
using TMPro;
55
using UnityEngine;
66

@@ -138,19 +138,19 @@ public static bool Prefix()
138138
}
139139
}
140140

141-
[HarmonyPatch(typeof(SaveManager), nameof(SaveManager.GameHostOptions), MethodType.Getter)]
141+
[HarmonyPatch(typeof(GameOptionsData), nameof(GameOptionsData.GameHostOptions), MethodType.Getter)]
142142
public static class SaveManager_get_GameHostOptions
143143
{
144144
public static bool Prefix(out GameOptionsData __result)
145145
{
146-
SaveManager.hostOptionsData ??= SaveManager.LoadGameOptions("gameHostOptions");
146+
GameOptionsData.hostOptionsData ??= GameOptionsData.LoadGameHostOptions();
147147

148148
// patched because of impostor clamping
149-
SaveManager.hostOptionsData.NumImpostors =
150-
Mathf.Clamp(SaveManager.hostOptionsData.NumImpostors, 1, SaveManager.hostOptionsData.MaxPlayers - 1);
151-
SaveManager.hostOptionsData.KillDistance = Mathf.Clamp(SaveManager.hostOptionsData.KillDistance, 0, 2);
149+
GameOptionsData.hostOptionsData.NumImpostors =
150+
Mathf.Clamp(GameOptionsData.hostOptionsData.NumImpostors, 1, GameOptionsData.hostOptionsData.MaxPlayers - 1);
151+
GameOptionsData.hostOptionsData.KillDistance = Mathf.Clamp(GameOptionsData.hostOptionsData.KillDistance, 0, 2);
152152

153-
__result = SaveManager.hostOptionsData;
153+
__result = GameOptionsData.hostOptionsData;
154154
return false;
155155
}
156156
}

src/CrowdedMod/Patches/GenericPatches.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using System.Linq;
22
using CrowdedMod.Net;
33
using HarmonyLib;
4-
using Reactor.Networking;
5-
using UnhollowerBaseLib;
4+
using Il2CppInterop.Runtime.InteropTypes.Arrays;
5+
using Reactor.Networking.Rpc;
66
using UnityEngine;
77

88
namespace CrowdedMod.Patches {

0 commit comments

Comments
 (0)