public static void Postfix(KeyboardJoystick __instance) { if (!BonusRolesPlugin.DebugMode.Value) { return; } // Spawn dummys if (Input.GetKeyDown(KeyCode.F)) { var playerControl = UnityEngine.Object.Instantiate(AmongUsClient.Instance.PlayerPrefab); var i = playerControl.PlayerId = (byte)GameData.Instance.GetAvailableId(); bots.Add(playerControl); GameData.Instance.AddPlayer(playerControl); AmongUsClient.Instance.Spawn(playerControl, -2, SpawnFlags.None); playerControl.transform.position = PlayerControl.LocalPlayer.transform.position; playerControl.GetComponent <DummyBehaviour>().enabled = true; playerControl.NetTransform.enabled = false; playerControl.SetName(RandomString(10)); playerControl.SetColor((byte)random.Next(Palette.PlayerColors.Length)); playerControl.SetHat((uint)random.Next(HatManager.Instance.AllHats.Count), playerControl.Data.ColorId); playerControl.SetPet((uint)random.Next(HatManager.Instance.AllPets.Count)); playerControl.SetSkin((uint)random.Next(HatManager.Instance.AllSkins.Count)); GameData.Instance.RpcSetTasks(playerControl.PlayerId, new byte[0]); } // Terminate round if (Input.GetKeyDown(KeyCode.L)) { MessageWriter writer = AmongUsClient.Instance.StartRpcImmediately(PlayerControl.LocalPlayer.NetId, (byte)CustomRPC.ForceEnd, Hazel.SendOption.None, -1); AmongUsClient.Instance.FinishRpcImmediately(writer); RPCProcedure.forceEnd(); } }
static void Postfix(byte ACCJCEHMKLN, MessageReader HFPCBBHJIPJ) { byte packetId = ACCJCEHMKLN; MessageReader reader = HFPCBBHJIPJ; switch (packetId) { // Main Controls case (byte)CustomRPC.ResetVaribles: RPCProcedure.resetVariables(); break; case (byte)CustomRPC.ForceEnd: RPCProcedure.forceEnd(); break; case (byte)CustomRPC.SetRole: byte roleId = HFPCBBHJIPJ.ReadByte(); byte playerId = HFPCBBHJIPJ.ReadByte(); RPCProcedure.setRole(roleId, playerId); break; // Role functionality case (byte)CustomRPC.JesterWin: RPCProcedure.jesterWin(); break; case (byte)CustomRPC.EngineerFixLights: RPCProcedure.engineerFixLights(); break; case (byte)CustomRPC.EngineerUsedRepair: RPCProcedure.engineerUsedRepair(); break; case (byte)CustomRPC.JanitorClean: RPCProcedure.janitorClean(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.SheriffKill: RPCProcedure.sheriffKill(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.TimeMasterRewindTime: RPCProcedure.timeMasterRewindTime(); break; case (byte)CustomRPC.MedicSetShielded: RPCProcedure.medicSetShielded(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.ShieldedMurderAttempt: RPCProcedure.shieldedMurderAttempt(); break; case (byte)CustomRPC.TimeMasterRevive: RPCProcedure.timeMasterRevive(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.ShifterShift: RPCProcedure.shifterShift(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.SwapperSwap: byte playerId1 = HFPCBBHJIPJ.ReadByte(); byte playerId2 = HFPCBBHJIPJ.ReadByte(); RPCProcedure.swapperSwap(playerId1, playerId2); break; case (byte)CustomRPC.SeerReveal: RPCProcedure.seerReveal(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.MorphlingMorph: RPCProcedure.morphlingMorph(HFPCBBHJIPJ.ReadByte()); break; case (byte)CustomRPC.CamouflagerCamouflage: RPCProcedure.camouflagerCamouflage(); break; case (byte)CustomRPC.ChildDied: RPCProcedure.childDied(); break; case (byte)CustomRPC.LoverSuicide: RPCProcedure.loverSuicide(HFPCBBHJIPJ.ReadByte()); break; } }