From c8ba629a44a656584015ae4d2e2cf2b54f7c6503 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=99=AF=E5=A4=A7=E4=BE=A0?= <802181+cddjr@users.noreply.github.com> Date: Fri, 21 Jun 2024 18:10:33 +0800 Subject: [PATCH] Update to 2024.6.18 (#638) * update types * remove GameData_PlayerOutfit * add list/array/dict wrapper * fix Palette__StaticFields * fix role color/name --- appdata/il2cpp-functions.h | 29 +- appdata/il2cpp-types.h | 1619 +++++++++--------------------------- events/_events.h | 8 +- gui/aum-chat.cpp | 2 +- gui/gui-helpers.cpp | 4 +- gui/radar.cpp | 6 +- gui/replay.cpp | 2 +- gui/tabs/game_tab.cpp | 2 +- gui/tabs/host_tab.cpp | 4 +- gui/tabs/players_tab.cpp | 6 +- hooks/AirshipStatus.cpp | 2 +- hooks/Chat.cpp | 8 +- hooks/InnerNetClient.cpp | 4 +- hooks/MeetingHud.cpp | 4 +- hooks/PlayerControl.cpp | 10 +- hooks/RoleManager.cpp | 8 - hooks/ShipStatus.cpp | 2 +- hooks/Vent.cpp | 4 +- hooks/_hooks.h | 10 +- user/utility.cpp | 51 +- user/utility.h | 26 +- 21 files changed, 478 insertions(+), 1333 deletions(-) diff --git a/appdata/il2cpp-functions.h b/appdata/il2cpp-functions.h index 06e8fbdf..7336d020 100644 --- a/appdata/il2cpp-functions.h +++ b/appdata/il2cpp-functions.h @@ -43,7 +43,7 @@ DO_APP_FUNC(int32_t, Screen_get_height, (MethodInfo* method), "UnityEngine.CoreM DO_APP_FUNC(bool, Screen_get_fullScreen, (MethodInfo* method), "UnityEngine.CoreModule, System.Boolean UnityEngine.Screen::get_fullScreen()"); DO_APP_FUNC(void, AirshipStatus_OnEnable, (AirshipStatus* __this, MethodInfo* method), "Assembly-CSharp, System.Void AirshipStatus::OnEnable()"); -DO_APP_FUNC(float, AirshipStatus_CalculateLightRadius, (AirshipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method), "Assembly-CSharp, System.Single AirshipStatus::CalculateLightRadius(GameData.PlayerInfo)"); +DO_APP_FUNC(float, AirshipStatus_CalculateLightRadius, (AirshipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method), "Assembly-CSharp, System.Single AirshipStatus::CalculateLightRadius(NetworkedPlayerInfo)"); DO_APP_FUNC(bool, AutoOpenDoor_DoUpdate, (AutoOpenDoor* __this, float dt, MethodInfo* method), "Assembly-CSharp, System.Boolean AutoOpenDoor::DoUpdate(System.Single)"); @@ -57,7 +57,7 @@ DO_APP_FUNC(void, CustomNetworkTransform_SnapTo, (CustomNetworkTransform* __this DO_APP_FUNC(Vector2, DeadBody_get_TruePosition, (DeadBody* __this, MethodInfo* method), "Assembly-CSharp, UnityEngine.Vector2 DeadBody::get_TruePosition()"); -DO_APP_FUNC(GameData_PlayerInfo*, GameData_GetPlayerById, (GameData* __this, uint8_t id, MethodInfo* method), "Assembly-CSharp, GameData.PlayerInfo GameData::GetPlayerById(System.Byte)"); +DO_APP_FUNC(NetworkedPlayerInfo*, GameData_GetPlayerById, (GameData* __this, uint8_t id, MethodInfo* method), "Assembly-CSharp, NetworkedPlayerInfo GameData::GetPlayerById(System.Byte)"); DO_APP_FUNC(void, GameObject_SetActive, (GameObject* __this, bool value, MethodInfo* method), "UnityEngine.CoreModule, System.Void UnityEngine.GameObject::SetActive(System.Boolean)"); @@ -67,7 +67,7 @@ DO_APP_FUNC(void, ScreenJoystick_FixedUpdate, (ScreenJoystick* __this, MethodInf DO_APP_FUNC(void, MeetingHud_Awake, (MeetingHud* __this, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::Awake()"); DO_APP_FUNC(void, MeetingHud_Close, (MeetingHud* __this, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::Close()"); DO_APP_FUNC(void, MeetingHud_Update, (MeetingHud* __this, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::Update()"); -DO_APP_FUNC(void, MeetingHud_BloopAVoteIcon, (MeetingHud* __this, GameData_PlayerInfo* voterPlayer, int index, Transform* parent, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::BloopAVoteIcon(GameData.PlayerInfo, System.Int32, UnityEngine.Transform)"); +DO_APP_FUNC(void, MeetingHud_BloopAVoteIcon, (MeetingHud* __this, NetworkedPlayerInfo* voterPlayer, int index, Transform* parent, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::BloopAVoteIcon(NetworkedPlayerInfo, System.Int32, UnityEngine.Transform)"); DO_APP_FUNC(void, MeetingHud_PopulateResults, (MeetingHud* __this, Il2CppArraySize* states, MethodInfo* method), "Assembly-CSharp, System.Void MeetingHud::PopulateResults(MeetingHud.VoterState[])"); DO_APP_FUNC(void, MovingPlatformBehaviour_SetSide, (MovingPlatformBehaviour* __this, bool isLeft, MethodInfo* method), "Assembly-CSharp, System.Void MovingPlatformBehaviour::SetSide(System.Boolean)"); @@ -82,16 +82,16 @@ DO_APP_FUNC(void, Minigame_Close, (Minigame* __this, MethodInfo* method), "Assem DO_APP_FUNC(void, PlayerControl_CompleteTask, (PlayerControl* __this, uint32_t idx, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::CompleteTask(System.UInt32)"); DO_APP_FUNC(void, PlayerControl_FixedUpdate, (PlayerControl* __this, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::FixedUpdate()"); -DO_APP_FUNC(GameData_PlayerInfo*, PlayerControl_get_Data, (PlayerControl* __this, MethodInfo* method), "Assembly-CSharp, GameData.PlayerInfo PlayerControl::get_Data()"); +DO_APP_FUNC(NetworkedPlayerInfo*, PlayerControl_get_Data, (PlayerControl* __this, MethodInfo* method), "Assembly-CSharp, NetworkedPlayerInfo PlayerControl::get_Data()"); DO_APP_FUNC(Vector2, PlayerControl_GetTruePosition, (PlayerControl* __this, MethodInfo* method), "Assembly-CSharp, UnityEngine.Vector2 PlayerControl::GetTruePosition()"); DO_APP_FUNC(void, PlayerControl_RpcSyncSettings, (PlayerControl* __this, Byte__Array* optionsByteArray, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::RpcSyncSettings(System.Byte[])"); DO_APP_FUNC(void, PlayerControl_RpcPlayAnimation, (PlayerControl* __this, uint8_t animType, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::RpcPlayAnimation(System.Byte)"); -DO_APP_FUNC(void, PlayerControl_CmdReportDeadBody, (PlayerControl* __this, GameData_PlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::CmdReportDeadBody(GameData.PlayerInfo)"); +DO_APP_FUNC(void, PlayerControl_CmdReportDeadBody, (PlayerControl* __this, NetworkedPlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::CmdReportDeadBody(NetworkedPlayerInfo)"); DO_APP_FUNC(void, PlayerControl_CmdCheckMurder, (PlayerControl* __this, PlayerControl* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::CmdCheckMurder(PlayerControl)"); DO_APP_FUNC(void, PlayerControl_MurderPlayer, (PlayerControl* __this, PlayerControl* target, MurderResultFlags__Enum resultFlags, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::MurderPlayer(PlayerControl, MurderResultFlags)"); DO_APP_FUNC(void, PlayerControl_RpcMurderPlayer, (PlayerControl* __this, PlayerControl* target, bool didSucceed, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::RpcMurderPlayer(PlayerControl, System.Boolean)"); -DO_APP_FUNC(void, PlayerControl_ReportDeadBody, (PlayerControl* __this, GameData_PlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::ReportDeadBody(GameData.PlayerInfo)"); -DO_APP_FUNC(void, PlayerControl_StartMeeting, (PlayerControl* __this, GameData_PlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::StartMeeting(GameData.PlayerInfo)"); +DO_APP_FUNC(void, PlayerControl_ReportDeadBody, (PlayerControl* __this, NetworkedPlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::ReportDeadBody(NetworkedPlayerInfo)"); +DO_APP_FUNC(void, PlayerControl_StartMeeting, (PlayerControl* __this, NetworkedPlayerInfo* target, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::StartMeeting(NetworkedPlayerInfo)"); DO_APP_FUNC(void, PlayerControl_RpcSetRole, (PlayerControl* __this, RoleTypes__Enum roleType, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::RpcSetRole(AmongUs.GameOptions.RoleTypes)"); DO_APP_FUNC(void, PlayerControl_RpcSetScanner, (PlayerControl* __this, bool value, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::RpcSetScanner(System.Boolean)"); DO_APP_FUNC(void, PlayerControl_CmdCheckColor, (PlayerControl* __this, uint8_t bodyColor, MethodInfo* method), "Assembly-CSharp, System.Void PlayerControl::CmdCheckColor(System.Byte)"); @@ -112,7 +112,7 @@ DO_APP_FUNC(void, PlayerMaterial_SetColors_1, (Color color, Renderer* rend, Meth DO_APP_FUNC(void, PolusShipStatus_OnEnable, (PolusShipStatus* __this, MethodInfo* method), "Assembly-CSharp, System.Void PolusShipStatus::OnEnable()"); -DO_APP_FUNC(float, ShipStatus_CalculateLightRadius, (ShipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method), "Assembly-CSharp, System.Single ShipStatus::CalculateLightRadius(GameData.PlayerInfo)"); +DO_APP_FUNC(float, ShipStatus_CalculateLightRadius, (ShipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method), "Assembly-CSharp, System.Single ShipStatus::CalculateLightRadius(NetworkedPlayerInfo)"); DO_APP_FUNC(void, ShipStatus_OnEnable, (ShipStatus* __this, MethodInfo* method), "Assembly-CSharp, System.Void ShipStatus::OnEnable()"); DO_APP_FUNC(void, ShipStatus_RpcCloseDoorsOfType, (ShipStatus* __this, SystemTypes__Enum type, MethodInfo* method), "Assembly-CSharp, System.Void ShipStatus::RpcCloseDoorsOfType(SystemTypes)"); DO_APP_FUNC(void, ShipStatus_RpcUpdateSystem, (ShipStatus* __this, SystemTypes__Enum systemType, uint8_t amount, MethodInfo* method), "Assembly-CSharp, System.Void ShipStatus::RpcUpdateSystem(SystemTypes, System.Byte)"); @@ -121,7 +121,7 @@ DO_APP_FUNC(float, StatsManager_get_BanPoints, (StatsManager* __this, MethodInfo DO_APP_FUNC(int32_t, StatsManager_get_BanMinutesLeft, (StatsManager* __this, MethodInfo* method), "Assembly-CSharp, System.Int32 StatsManager::get_BanMinutesLeft()"); DO_APP_FUNC(bool, StatsManager_get_AmBanned, (StatsManager* __this, MethodInfo* method), "Assembly-CSharp, System.Boolean StatsManager::get_AmBanned()"); -DO_APP_FUNC(float, Vent_CanUse, (Vent* __this, GameData_PlayerInfo* player, bool* canUse, bool* couldUse, MethodInfo* method), "Assembly-CSharp, System.Single Vent::CanUse(GameData.PlayerInfo, System.Boolean&, System.Boolean&)"); +DO_APP_FUNC(float, Vent_CanUse, (Vent* __this, NetworkedPlayerInfo* player, bool* canUse, bool* couldUse, MethodInfo* method), "Assembly-CSharp, System.Single Vent::CanUse(NetworkedPlayerInfo, System.Boolean&, System.Boolean&)"); DO_APP_FUNC(float, Vent_get_UsableDistance, (Vent* __this, MethodInfo* method), "Assembly-CSharp, System.Single Vent::get_UsableDistance()"); DO_APP_FUNC(void, Vent_EnterVent, (Vent* __this, PlayerControl* pc, MethodInfo* method), "Assembly-CSharp, System.Void Vent::EnterVent(PlayerControl)"); DO_APP_FUNC(void*, Vent_ExitVent, (Vent* __this, PlayerControl* pc, MethodInfo* method), "Assembly-CSharp, System.Collections.IEnumerator Vent::ExitVent(PlayerControl)"); @@ -195,8 +195,6 @@ DO_APP_FUNC(void, TMP_Text_set_text, (TMP_Text* __this, String* value, MethodInf DO_APP_FUNC(Color32, Color32_op_Implicit, (Color c, MethodInfo* method), "UnityEngine.CoreModule, UnityEngine.Color32 UnityEngine.Color32::op_Implicit(UnityEngine.Color)"); DO_APP_FUNC(void, RoleManager_SelectRoles, (RoleManager* __this, MethodInfo* method), "Assembly-CSharp, System.Void RoleManager::SelectRoles()"); -//DO_APP_FUNC(void, RoleManager_AssignRolesForTeam, (List_1_GameData_PlayerInfo_* players, RoleOptionsData* opts, RoleTeamTypes__Enum team, int32_t teamMax, Nullable_1_RoleTypes_ defaultRole, MethodInfo* method), "Assembly-CSharp, System.Void RoleManager::AssignRolesForTeam(System.Collections.Generic.List, RoleOptionsData, RoleTeamTypes, System.Int32, System.Nullable)"); -//DO_APP_FUNC(void, RoleManager_AssignRolesFromList, (List_1_GameData_PlayerInfo_* players, int32_t teamMax, List_1_RoleTypes_* roleList, int32_t* rolesAssigned, MethodInfo* method), "Assembly-CSharp, System.Void RoleManager::AssignRolesFromList(System.Collections.Generic.List, System.Int32, System.Collections.Generic.List, System.Int32&)"); DO_APP_FUNC(void, InnerNetClient_EnqueueDisconnect, (InnerNetClient* __this, DisconnectReasons__Enum reason, String* stringReason, MethodInfo* method), "Assembly-CSharp, System.Void InnerNet.InnerNetClient::EnqueueDisconnect(DisconnectReasons, System.String)"); DO_APP_FUNC(void, InnerNetClient_DisconnectInternal, (InnerNetClient* __this, DisconnectReasons__Enum reason, String* stringReason, MethodInfo* method), "Assembly-CSharp, System.Void InnerNet.InnerNetClient::DisconnectInternal(DisconnectReasons, System.String)"); @@ -212,10 +210,9 @@ DO_APP_FUNC(bool, PlayerControl_get_IsKillTimerEnabled, (PlayerControl* __this, DO_APP_FUNC(void, ExileController_ReEnableGameplay, (ExileController* __this, MethodInfo* method), "Assembly-CSharp, System.Void ExileController::ReEnableGameplay()"); DO_APP_FUNC(void, SabotageSystemType_SetInitialSabotageCooldown, (SabotageSystemType* __this, MethodInfo* method), "Assembly-CSharp, System.Void SabotageSystemType::SetInitialSabotageCooldown()"); -DO_APP_FUNC(PlayerControl*, GameData_PlayerInfo_get_Object, (GameData_PlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, PlayerControl GameData+PlayerInfo::get_Object()"); -DO_APP_FUNC(GameData_PlayerOutfit*, GameData_PlayerInfo_get_DefaultOutfit, (GameData_PlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, GameData.PlayerOutfit GameData+PlayerInfo::get_DefaultOutfit()"); -DO_APP_FUNC(String*, GameData_PlayerOutfit_get_PlayerName, (GameData_PlayerOutfit* __this, MethodInfo* method), "Assembly-CSharp, System.String GameData+PlayerOutfit::get_PlayerName()"); -DO_APP_FUNC(String*, GameData_PlayerInfo_get_PlayerName, (GameData_PlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, System.String GameData+PlayerInfo::get_PlayerName()"); +DO_APP_FUNC(PlayerControl*, NetworkedPlayerInfo_get_Object, (NetworkedPlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, PlayerControl NetworkedPlayerInfo::get_Object()"); +DO_APP_FUNC(NetworkedPlayerInfo_PlayerOutfit*, NetworkedPlayerInfo_get_DefaultOutfit, (NetworkedPlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, NetworkedPlayerInfo.PlayerOutfit NetworkedPlayerInfo::get_DefaultOutfit()"); +DO_APP_FUNC(String*, NetworkedPlayerInfo_get_PlayerName, (NetworkedPlayerInfo* __this, MethodInfo* method), "Assembly-CSharp, System.String NetworkedPlayerInfo::get_PlayerName()"); DO_APP_FUNC(void, AccountManager_UpdateKidAccountDisplay, (AccountManager* __this, MethodInfo* method), "Assembly-CSharp, System.Void AccountManager::UpdateKidAccountDisplay()"); DO_APP_FUNC(void, PlayerStorageManager_OnReadPlayerPrefsComplete, (PlayerStorageManager* __this, void* data, MethodInfo* method), "Assembly-CSharp, System.Void PlayerStorageManager::OnReadPlayerPrefsComplete(Epic.OnlineServices.PlayerDataStorage.ReadFileCallbackInfo&)"); @@ -243,3 +240,5 @@ DO_APP_FUNC(LogicOptions*, GameManager_get_LogicOptions, (GameManager* __this, M DO_APP_FUNC(void, FungleShipStatus_OnEnable, (FungleShipStatus* __this, MethodInfo* method), "Assembly-CSharp, System.Void FungleShipStatus::OnEnable()"); DO_APP_FUNC(void, MushroomWallDoor_SetDoorway, (MushroomWallDoor* __this, bool open, MethodInfo* method), "Assembly-CSharp, System.Void MushroomWallDoor::SetDoorway(System.Boolean)"); DO_APP_FUNC(void, MushroomDoorSabotageMinigame_Begin, (MushroomDoorSabotageMinigame* __this, PlayerTask* task, MethodInfo* method), "Assembly-CSharp, System.Void MushroomDoorSabotageMinigame::Begin(PlayerTask)"); + +// 2024.6.18e diff --git a/appdata/il2cpp-types.h b/appdata/il2cpp-types.h index 13349272..4b9ff244 100644 --- a/appdata/il2cpp-types.h +++ b/appdata/il2cpp-types.h @@ -2393,6 +2393,228 @@ typedef union Il2CppSingle_float } Il2CppSingle_float; #pragma endregion +#pragma region Wrappers +#define WRAPPER_IL2CPP_ARRAY(CLASS, TYPE) \ + struct CLASS##__Array__VTable { \ + }; \ + struct CLASS##__Array__StaticFields { \ + }; \ + struct CLASS##__Array__Class { \ + Il2CppClass_0 _0; \ + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; \ + struct CLASS##__Array__StaticFields* static_fields; \ + const Il2CppRGCTXData* rgctx_data; \ + Il2CppClass_1 _1; \ + struct CLASS##__Array__VTable vtable; \ + }; \ + struct CLASS##__Array { \ + struct CLASS##__Array__Class* klass; \ + MonitorData* monitor; \ + Il2CppArrayBounds* bounds; \ + il2cpp_array_size_t max_length; \ + TYPE vector[32]; \ + } + +#define WRAPPER_IL2CPP_LIST_2(CLASS, ARRAY_CLASS, TYPE) \ + WRAPPER_IL2CPP_ARRAY(ARRAY_CLASS, TYPE); \ + struct List_1_##CLASS##___VTable { \ + VirtualInvokeData Equals; \ + VirtualInvokeData Finalize; \ + VirtualInvokeData GetHashCode; \ + VirtualInvokeData ToString; \ + VirtualInvokeData get_Item; \ + VirtualInvokeData set_Item; \ + VirtualInvokeData IndexOf; \ + VirtualInvokeData Insert; \ + VirtualInvokeData RemoveAt; \ + VirtualInvokeData get_Count; \ + VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; \ + VirtualInvokeData Add; \ + VirtualInvokeData Clear; \ + VirtualInvokeData Contains; \ + VirtualInvokeData CopyTo; \ + VirtualInvokeData Remove; \ + VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; \ + VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; \ + VirtualInvokeData System_Collections_IList_get_Item; \ + VirtualInvokeData System_Collections_IList_set_Item; \ + VirtualInvokeData System_Collections_IList_Add; \ + VirtualInvokeData System_Collections_IList_Contains; \ + VirtualInvokeData Clear_1; \ + VirtualInvokeData System_Collections_IList_get_IsReadOnly; \ + VirtualInvokeData System_Collections_IList_get_IsFixedSize; \ + VirtualInvokeData System_Collections_IList_IndexOf; \ + VirtualInvokeData System_Collections_IList_Insert; \ + VirtualInvokeData System_Collections_IList_Remove; \ + VirtualInvokeData RemoveAt_1; \ + VirtualInvokeData System_Collections_ICollection_CopyTo; \ + VirtualInvokeData get_Count_1; \ + VirtualInvokeData System_Collections_ICollection_get_SyncRoot; \ + VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; \ + VirtualInvokeData get_Item_1; \ + VirtualInvokeData get_Count_2; \ + }; \ + struct List_1_##CLASS##___StaticFields { \ + struct ARRAY_CLASS##__Array* _emptyArray; \ + }; \ + struct List_1_##CLASS##___Class { \ + Il2CppClass_0 _0; \ + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; \ + struct List_1_##CLASS##___StaticFields* static_fields; \ + const Il2CppRGCTXData* rgctx_data; \ + Il2CppClass_1 _1; \ + struct List_1_##CLASS##___VTable vtable; \ + }; \ + struct __declspec(align(4)) List_1_##CLASS##___Fields { \ + struct ARRAY_CLASS##__Array* _items; \ + int32_t _size; \ + int32_t _version; \ + struct Object* _syncRoot; \ + }; \ + struct List_1_##CLASS##_ { \ + struct List_1_##CLASS##___Class* klass; \ + MonitorData* monitor; \ + struct List_1_##CLASS##___Fields fields; \ + } + +#define WRAPPER_IL2CPP_LIST(CLASS, TYPE) \ + WRAPPER_IL2CPP_LIST_2(CLASS, CLASS, TYPE) + +#define WRAPPER_IL2CPP_DICTIONARY(KEY_CLASS,VALUE_CLASS, KEY_TYPE, VALUE_TYPE) \ + struct __declspec(align(4)) Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___Fields { \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##_* dictionary; \ + }; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##_ { \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___Class* klass; \ + MonitorData* monitor; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___Fields fields; \ + }; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___VTable { \ + VirtualInvokeData Equals; \ + VirtualInvokeData Finalize; \ + VirtualInvokeData GetHashCode; \ + VirtualInvokeData ToString; \ + VirtualInvokeData get_Count; \ + VirtualInvokeData System_Collections_Generic_ICollection_TKey__get_IsReadOnly; \ + VirtualInvokeData System_Collections_Generic_ICollection_TKey__Add; \ + VirtualInvokeData System_Collections_Generic_ICollection_TKey__Clear; \ + VirtualInvokeData System_Collections_Generic_ICollection_TKey__Contains; \ + VirtualInvokeData CopyTo; \ + VirtualInvokeData System_Collections_Generic_ICollection_TKey__Remove; \ + VirtualInvokeData System_Collections_Generic_IEnumerable_TKey__GetEnumerator; \ + VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; \ + VirtualInvokeData System_Collections_ICollection_CopyTo; \ + VirtualInvokeData get_Count_1; \ + VirtualInvokeData System_Collections_ICollection_get_SyncRoot; \ + VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; \ + VirtualInvokeData get_Count_2; \ + }; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___Class { \ + Il2CppClass_0 _0; \ + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___StaticFields* static_fields; \ + const Il2CppRGCTXData* rgctx_data; \ + Il2CppClass_1 _1; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##___VTable vtable; \ + }; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##_ { \ + int32_t hashCode; \ + int32_t next; \ + KEY_TYPE key; \ + VALUE_TYPE value; \ + }; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___VTable { \ + VirtualInvokeData Equals; \ + VirtualInvokeData Finalize; \ + VirtualInvokeData GetHashCode; \ + VirtualInvokeData ToString; \ + }; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___StaticFields { \ + }; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___Class { \ + Il2CppClass_0 _0; \ + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___StaticFields* static_fields; \ + const Il2CppRGCTXData* rgctx_data; \ + Il2CppClass_1 _1; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___VTable vtable; \ + }; \ + WRAPPER_IL2CPP_ARRAY(Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##_, struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##_); \ + struct __declspec(align(4)) Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___Fields { \ + void* buckets; \ + struct Dictionary_2_TKey_TValue_Entry_##KEY_CLASS##_##VALUE_CLASS##___Array* entries; \ + int32_t count; \ + int32_t version; \ + int32_t freeList; \ + int32_t freeCount; \ + void* comparer; \ + struct Dictionary_2_TKey_TValue_KeyCollection_##KEY_CLASS##_##VALUE_CLASS##_* keys; \ + struct Dictionary_2_TKey_TValue_ValueCollection_##KEY_CLASS##_##VALUE_CLASS##_* values; \ + void* _syncRoot; \ + }; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___VTable { \ + VirtualInvokeData Equals; \ + VirtualInvokeData Finalize; \ + VirtualInvokeData GetHashCode; \ + VirtualInvokeData ToString; \ + VirtualInvokeData get_Item; \ + VirtualInvokeData set_Item; \ + VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Keys; \ + VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Values; \ + VirtualInvokeData ContainsKey; \ + VirtualInvokeData Add; \ + VirtualInvokeData Remove; \ + VirtualInvokeData TryGetValue; \ + VirtualInvokeData get_Count; \ + VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___get_IsReadOnly; \ + VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Add; \ + VirtualInvokeData Clear; \ + VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Contains; \ + VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___CopyTo; \ + VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Remove; \ + VirtualInvokeData System_Collections_Generic_IEnumerable_System_Collections_Generic_KeyValuePair_TKey_TValue___GetEnumerator; \ + VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; \ + VirtualInvokeData System_Collections_IDictionary_get_Item; \ + VirtualInvokeData System_Collections_IDictionary_set_Item; \ + VirtualInvokeData System_Collections_IDictionary_get_Keys; \ + VirtualInvokeData System_Collections_IDictionary_get_Values; \ + VirtualInvokeData System_Collections_IDictionary_Contains; \ + VirtualInvokeData System_Collections_IDictionary_Add; \ + VirtualInvokeData Clear_1; \ + VirtualInvokeData System_Collections_IDictionary_get_IsReadOnly; \ + VirtualInvokeData System_Collections_IDictionary_get_IsFixedSize; \ + VirtualInvokeData System_Collections_IDictionary_GetEnumerator; \ + VirtualInvokeData System_Collections_IDictionary_Remove; \ + VirtualInvokeData System_Collections_ICollection_CopyTo; \ + VirtualInvokeData get_Count_1; \ + VirtualInvokeData System_Collections_ICollection_get_SyncRoot; \ + VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; \ + VirtualInvokeData ContainsKey_1; \ + VirtualInvokeData TryGetValue_1; \ + VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Keys; \ + VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Values; \ + VirtualInvokeData get_Count_2; \ + VirtualInvokeData GetObjectData; \ + VirtualInvokeData OnDeserialization; \ + VirtualInvokeData GetObjectData_1; \ + VirtualInvokeData OnDeserialization_1; \ + }; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___StaticFields { \ + }; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___Class { \ + Il2CppClass_0 _0; \ + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___StaticFields* static_fields; \ + const Il2CppRGCTXData* rgctx_data; \ + Il2CppClass_1 _1; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___VTable vtable; \ + }; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##_{ \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___Class * klass; \ + MonitorData* monitor; \ + struct Dictionary_2_##KEY_CLASS##_##VALUE_CLASS##___Fields fields; \ + } +#pragma endregion // ****************************************************************************** // * Game types @@ -2826,32 +3048,7 @@ namespace app #pragma endregion #pragma region Camera__Array - struct Camera__Array - { - struct Camera__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Camera* vector[32]; - }; - - struct Camera__Array__VTable - { - }; - - struct Camera__Array__StaticFields - { - }; - - struct Camera__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Camera__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Camera__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(Camera, struct Camera*); #pragma endregion #pragma region Exception @@ -3088,32 +3285,7 @@ namespace app #pragma endregion #pragma region Object_1__Array - struct Object_1__Array - { - struct Object_1__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Object_1* vector[32]; - }; - - struct Object_1__Array__VTable - { - }; - - struct Object_1__Array__StaticFields - { - }; - - struct Object_1__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Object_1__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Object_1__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(Object_1, struct Object_1*); #pragma endregion #pragma region SpriteRenderer @@ -3153,31 +3325,7 @@ namespace app #pragma endregion #pragma region Color32__Array - struct Color32__Array - { - struct Color32__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Color32 vector[32]; - }; - struct Color32__Array__VTable - { - }; - - struct Color32__Array__StaticFields - { - }; - - struct Color32__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Color32__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Color32__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(Color32, struct Color32); #pragma endregion #pragma region Scene @@ -3268,32 +3416,7 @@ namespace app #pragma endregion #pragma region Byte__Array - struct Byte__Array - { - struct Byte__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - uint8_t vector[32]; - }; - - struct Byte__Array__VTable - { - }; - - struct Byte__Array__StaticFields - { - }; - - struct Byte__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Byte__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Byte__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(Byte, uint8_t); #pragma endregion #pragma region MessageWriter @@ -4630,28 +4753,7 @@ namespace app #pragma endregion #pragma region OpenableDoor__Array - struct OpenableDoor__Array { - struct OpenableDoor__Array__Class* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct OpenableDoor* vector[32]; - }; - - struct OpenableDoor__Array__VTable { - }; - - struct OpenableDoor__Array__StaticFields { - }; - - struct OpenableDoor__Array__Class { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct OpenableDoor__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct OpenableDoor__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(OpenableDoor, struct OpenableDoor*); #pragma endregion #pragma region PlayerVoteArea @@ -4715,32 +4817,7 @@ namespace app #pragma endregion #pragma region PlayerVoteArea__Array - struct PlayerVoteArea__Array - { - struct PlayerVoteArea__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct PlayerVoteArea* vector[32]; - }; - - struct PlayerVoteArea__Array__VTable - { - }; - - struct PlayerVoteArea__Array__StaticFields - { - }; - - struct PlayerVoteArea__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct PlayerVoteArea__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct PlayerVoteArea__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(PlayerVoteArea, struct PlayerVoteArea*); #pragma endregion #pragma region SystemTypes__Enum @@ -4916,31 +4993,7 @@ namespace app #pragma endregion #pragma region PlainShipRoom__Array - struct PlainShipRoom__Array - { - struct PlainShipRoom__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct PlainShipRoom* vector[32]; - }; - struct PlainShipRoom__Array__VTable - { - }; - - struct PlainShipRoom__Array__StaticFields - { - }; - - struct PlainShipRoom__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct PlainShipRoom__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct PlainShipRoom__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(PlainShipRoom, struct PlainShipRoom*); #pragma endregion #pragma region ShipStatus @@ -5072,6 +5125,8 @@ namespace app typedef int32_t StringNames__Enum; + WRAPPER_IL2CPP_ARRAY(StringNames__Enum, StringNames__Enum); + #pragma endregion #pragma region SwitchSystem @@ -5147,216 +5202,11 @@ namespace app }; #pragma endregion -#pragma region Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType_ - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType_ - { - int32_t hashCode; - int32_t next; -#if defined(_CPLUSPLUS_) - SystemTypes__Enum key; -#else - uint8_t key; -#endif - struct ISystemType* value; - }; -#pragma endregion - -#pragma region Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array - { - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__Class* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType_ vector[32]; - }; - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__VTable - { - }; - - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__StaticFields - { - }; - - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array__VTable vtable; - }; -#pragma endregion - -#pragma region Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType_ - struct __declspec(align(4)) Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___Fields - { - struct Dictionary_2_SystemTypes_ISystemType_* dictionary; - }; - - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType_ - { - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___Class* klass; - void* monitor; - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___Fields fields; - }; - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_TKey__get_IsReadOnly; - VirtualInvokeData System_Collections_Generic_ICollection_TKey__Add; - VirtualInvokeData System_Collections_Generic_ICollection_TKey__Clear; - VirtualInvokeData System_Collections_Generic_ICollection_TKey__Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData System_Collections_Generic_ICollection_TKey__Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_TKey__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Count_2; - }; - - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___StaticFields - { - }; - - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType___VTable vtable; - }; -#pragma endregion - -#pragma region Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType_ - struct __declspec(align(4)) Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___Fields - { - struct Dictionary_2_SystemTypes_ISystemType_* dictionary; - }; - - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType_ - { - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___Class* klass; - void* monitor; - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___Fields fields; - }; - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_TValue__get_IsReadOnly; - VirtualInvokeData System_Collections_Generic_ICollection_TValue__Add; - VirtualInvokeData System_Collections_Generic_ICollection_TValue__Clear; - VirtualInvokeData System_Collections_Generic_ICollection_TValue__Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData System_Collections_Generic_ICollection_TValue__Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_TValue__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Count_2; - }; - - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___StaticFields - { - }; - - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType___VTable vtable; - }; -#pragma endregion - #pragma region Dictionary_2_SystemTypes_ISystemType_ - struct __declspec(align(4)) Dictionary_2_SystemTypes_ISystemType___Fields - { - struct Int32__Array* buckets; - struct Dictionary_2_TKey_TValue_Entry_SystemTypes_ISystemType___Array* entries; - int32_t count; - int32_t version; - int32_t freeList; - int32_t freeCount; - void* comparer; - struct Dictionary_2_TKey_TValue_KeyCollection_SystemTypes_ISystemType_* keys; - struct Dictionary_2_TKey_TValue_ValueCollection_SystemTypes_ISystemType_* values; - struct Object* _syncRoot; - }; - - struct Dictionary_2_SystemTypes_ISystemType_ - { - struct Dictionary_2_SystemTypes_ISystemType___Class* klass; - MonitorData* monitor; - struct Dictionary_2_SystemTypes_ISystemType___Fields fields; - }; - struct Dictionary_2_SystemTypes_ISystemType___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Keys; - VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Values; - VirtualInvokeData ContainsKey; - VirtualInvokeData Add; - VirtualInvokeData Remove; - VirtualInvokeData TryGetValue; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___get_IsReadOnly; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Add; - VirtualInvokeData Clear; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Contains; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___CopyTo; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_System_Collections_Generic_KeyValuePair_TKey_TValue___GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IDictionary_get_Item; - VirtualInvokeData System_Collections_IDictionary_set_Item; - VirtualInvokeData System_Collections_IDictionary_get_Keys; - VirtualInvokeData System_Collections_IDictionary_get_Values; - VirtualInvokeData System_Collections_IDictionary_Contains; - VirtualInvokeData System_Collections_IDictionary_Add; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IDictionary_get_IsReadOnly; - VirtualInvokeData System_Collections_IDictionary_get_IsFixedSize; - VirtualInvokeData System_Collections_IDictionary_GetEnumerator; - VirtualInvokeData System_Collections_IDictionary_Remove; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData ContainsKey_1; - VirtualInvokeData TryGetValue_1; - VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Keys; - VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Values; - VirtualInvokeData get_Count_2; - VirtualInvokeData GetObjectData; - VirtualInvokeData OnDeserialization; - VirtualInvokeData GetObjectData_1; - VirtualInvokeData OnDeserialization_1; - }; + WRAPPER_IL2CPP_DICTIONARY(SystemTypes, ISystemType, SystemTypes__Enum, struct ISystemType*); +#pragma endregion +#pragma region Dictionary_RGCTXs struct System_Collections_Generic_Dictionary_TKey__TValue__RGCTXs { MethodInfo* _0_System_Collections_Generic_Dictionary_TKey__TValue___ctor; MethodInfo* _1_System_Collections_Generic_Dictionary_TKey__TValue__Initialize; @@ -5406,20 +5256,6 @@ namespace app Il2CppType* _45_TKey; MethodInfo* _46_System_Collections_Generic_Dictionary_TKey__TValue__ContainsKey; }; - - struct Dictionary_2_SystemTypes_ISystemType___StaticFields - { - }; - - struct Dictionary_2_SystemTypes_ISystemType___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_SystemTypes_ISystemType___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_SystemTypes_ISystemType___VTable vtable; - }; #pragma endregion #pragma region AirshipStatus @@ -5473,202 +5309,35 @@ namespace app }; #pragma endregion -#pragma region GameData_PlayerOutfit - struct __declspec(align(4)) GameData_PlayerOutfit__Fields { - bool dontCensorName; +#pragma region NetworkedPlayerInfo_PlayerOutfit + struct __declspec(align(4)) NetworkedPlayerInfo_PlayerOutfit__Fields { int32_t ColorId; struct String* HatId; struct String* PetId; struct String* SkinId; struct String* VisorId; struct String* NamePlateId; - void* /* struct Action_1_String_* */nameCallback; - struct String* preCensorName; - struct String* postCensorName; + struct String* PlayerName; + uint8_t HatSequenceId; + uint8_t PetSequenceId; + uint8_t SkinSequenceId; + uint8_t VisorSequenceId; + uint8_t NamePlateSequenceId; }; - struct GameData_PlayerOutfit { - struct GameData_PlayerOutfit__Class* klass; + struct NetworkedPlayerInfo_PlayerOutfit { + void* klass; MonitorData* monitor; - struct GameData_PlayerOutfit__Fields fields; - }; - - struct GameData_PlayerOutfit__VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - }; - - struct GameData_PlayerOutfit__StaticFields - { - }; - - struct GameData_PlayerOutfit__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct GameData_PlayerOutfit__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct GameData_PlayerOutfit__VTable vtable; + struct NetworkedPlayerInfo_PlayerOutfit__Fields fields; }; #pragma endregion #pragma region Int32__Array - struct Int32__Array - { - struct Int32__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - int32_t vector[32]; - }; - struct Int32__Array__VTable - { - }; - - struct Int32__Array__StaticFields - { - }; - - struct Int32__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Int32__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Int32__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(Int32, int32_t); #pragma endregion -#pragma region Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit_ - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit_ - { - int32_t hashCode; - int32_t next; -#if defined(_CPLUSPLUS_) - PlayerOutfitType__Enum key; -#else - int32_t key; -#endif - struct GameData_PlayerOutfit* value; - }; -#pragma endregion - -#pragma region Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array - { - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__Class* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit_ vector[32]; - }; - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__VTable - { - }; - - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__StaticFields - { - }; - - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array__VTable vtable; - }; -#pragma endregion - -#pragma region Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit_ - struct __declspec(align(4)) Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___Fields - { - struct Int32__Array* buckets; - struct Dictionary_2_TKey_TValue_Entry_PlayerOutfitType_GameData_PlayerOutfit___Array* entries; - int32_t count; - int32_t version; - int32_t freeList; - int32_t freeCount; - struct IEqualityComparer_1_PlayerOutfitType_* comparer; - struct Dictionary_2_TKey_TValue_KeyCollection_PlayerOutfitType_GameData_PlayerOutfit_* keys; - struct Dictionary_2_TKey_TValue_ValueCollection_PlayerOutfitType_GameData_PlayerOutfit_* values; - struct Object* _syncRoot; - }; - - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit_ - { - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___Class* klass; - MonitorData* monitor; - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___Fields fields; - }; - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Keys; - VirtualInvokeData System_Collections_Generic_IDictionary_TKey_TValue__get_Values; - VirtualInvokeData ContainsKey; - VirtualInvokeData Add; - VirtualInvokeData Remove; - VirtualInvokeData TryGetValue; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___get_IsReadOnly; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Add; - VirtualInvokeData Clear; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Contains; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___CopyTo; - VirtualInvokeData System_Collections_Generic_ICollection_System_Collections_Generic_KeyValuePair_TKey_TValue___Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_System_Collections_Generic_KeyValuePair_TKey_TValue___GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IDictionary_get_Item; - VirtualInvokeData System_Collections_IDictionary_set_Item; - VirtualInvokeData System_Collections_IDictionary_get_Keys; - VirtualInvokeData System_Collections_IDictionary_get_Values; - VirtualInvokeData System_Collections_IDictionary_Contains; - VirtualInvokeData System_Collections_IDictionary_Add; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IDictionary_get_IsReadOnly; - VirtualInvokeData System_Collections_IDictionary_get_IsFixedSize; - VirtualInvokeData System_Collections_IDictionary_GetEnumerator; - VirtualInvokeData System_Collections_IDictionary_Remove; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData ContainsKey_1; - VirtualInvokeData TryGetValue_1; - VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Keys; - VirtualInvokeData System_Collections_Generic_IReadOnlyDictionary_TKey_TValue__get_Values; - VirtualInvokeData get_Count_2; - VirtualInvokeData GetObjectData; - VirtualInvokeData OnDeserialization; - VirtualInvokeData GetObjectData_1; - VirtualInvokeData OnDeserialization_1; - }; - - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___StaticFields - { - }; - - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit___VTable vtable; - }; +#pragma region Dictionary_2_PlayerOutfitType_NetworkedPlayerInfo_PlayerOutfit_ + WRAPPER_IL2CPP_DICTIONARY(PlayerOutfitType, NetworkedPlayerInfo_PlayerOutfit, PlayerOutfitType__Enum, struct NetworkedPlayerInfo_PlayerOutfit*); #pragma endregion #pragma region RoleTypes__Enum @@ -5682,6 +5351,9 @@ namespace app Shapeshifter = 0x0005, CrewmateGhost = 0x0006, ImpostorGhost = 0x0007, + Noisemaker = 0x0008, + Phantom = 0x0009, + Tracker = 0x000a, }; #else @@ -5694,6 +5366,9 @@ namespace app RoleTypes__Enum_Shapeshifter = 0x0005, RoleTypes__Enum_CrewmateGhost = 0x0006, RoleTypes__Enum_ImpostorGhost = 0x0007, + RoleTypes__Enum_Noisemaker = 0x0008, + RoleTypes__Enum_Phantom = 0x0009, + RoleTypes__Enum_Tracker = 0x000a, }; #endif @@ -5763,6 +5438,9 @@ namespace app #else int32_t BlurbNameLong; #endif + void* RoleIconSolid; + void* RoleIconWhite; + void* RoleScreenshot; struct Color NameColor; bool TasksCountTowardProgress; bool CanUseKillButton; @@ -5806,7 +5484,9 @@ namespace app VirtualInvokeData Deinitialize; VirtualInvokeData SpawnTaskHeader; VirtualInvokeData UseAbility; + VirtualInvokeData OnMeetingStart; VirtualInvokeData OnVotingComplete; + VirtualInvokeData OnDeath; VirtualInvokeData Initialize; VirtualInvokeData SetUsableTarget; VirtualInvokeData SetPlayerTarget; @@ -5845,9 +5525,11 @@ namespace app }; #pragma endregion -#pragma region GameData_PlayerInfo - struct __declspec(align(4)) GameData_PlayerInfo__Fields { +#pragma region NetworkedPlayerInfo + struct NetworkedPlayerInfo__Fields { + struct InnerNetObject__Fields _; uint8_t PlayerId; + int32_t ClientId; struct String* FriendCode; struct String* Puid; #if defined(_CPLUSPLUS_) @@ -5856,7 +5538,7 @@ namespace app uint16_t RoleType; #endif struct Nullable_1_AmongUs_GameOptions_RoleTypes_ RoleWhenAlive; - struct Dictionary_2_PlayerOutfitType_GameData_PlayerOutfit_* Outfits; + struct Dictionary_2_PlayerOutfitType_NetworkedPlayerInfo_PlayerOutfit_* Outfits; uint32_t PlayerLevel; bool Disconnected; struct RoleBehaviour* Role; @@ -5865,33 +5547,10 @@ namespace app struct PlayerControl* _object; }; - struct GameData_PlayerInfo - { - struct GameData_PlayerInfo__Class* klass; - void* monitor; - struct GameData_PlayerInfo__Fields fields; - }; - - struct GameData_PlayerInfo__VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - }; - - struct GameData_PlayerInfo__StaticFields - { - }; - - struct GameData_PlayerInfo__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct GameData_PlayerInfo__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct GameData_PlayerInfo__VTable vtable; + struct NetworkedPlayerInfo { + void* klass; + MonitorData* monitor; + struct NetworkedPlayerInfo__Fields fields; }; #pragma endregion @@ -6336,81 +5995,45 @@ namespace app struct PlayerTask__VTable { VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData __unknown; - VirtualInvokeData __unknown_1; - VirtualInvokeData __unknown_2; - VirtualInvokeData OnRemove; - VirtualInvokeData __unknown_3; - VirtualInvokeData __unknown_4; - VirtualInvokeData __unknown_5; - VirtualInvokeData GetMinigamePrefab; - }; - - struct PlayerTask__StaticFields - { - }; - - struct PlayerTask__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct PlayerTask__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct PlayerTask__VTable vtable; - }; -#pragma endregion - -#pragma region PlayerTask__Array - struct PlayerTask__Array - { - struct PlayerTask__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct PlayerTask* vector[32]; - }; - struct PlayerTask__Array__VTable - { + VirtualInvokeData Finalize; + VirtualInvokeData GetHashCode; + VirtualInvokeData ToString; + VirtualInvokeData __unknown; + VirtualInvokeData __unknown_1; + VirtualInvokeData __unknown_2; + VirtualInvokeData OnRemove; + VirtualInvokeData __unknown_3; + VirtualInvokeData __unknown_4; + VirtualInvokeData __unknown_5; + VirtualInvokeData GetMinigamePrefab; }; - struct PlayerTask__Array__StaticFields + struct PlayerTask__StaticFields { }; - struct PlayerTask__Array__Class + struct PlayerTask__Class { Il2CppClass_0 _0; Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct PlayerTask__Array__StaticFields* static_fields; + struct PlayerTask__StaticFields* static_fields; const Il2CppRGCTXData* rgctx_data; Il2CppClass_1 _1; - struct PlayerTask__Array__VTable vtable; + struct PlayerTask__VTable vtable; }; #pragma endregion #pragma region List_1_RoleEffectAnimation_ - struct __declspec(align(4)) List_1_RoleEffectAnimation___Fields { - struct RoleEffectAnimation__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_RoleEffectAnimation_ { - void* klass; - MonitorData* monitor; - struct List_1_RoleEffectAnimation___Fields fields; - }; + WRAPPER_IL2CPP_LIST(RoleEffectAnimation, struct RoleEffectAnimation*); #if defined(_CPLUSPLUS_) enum class RoleEffectAnimation_EffectType__Enum : int32_t { Default = 0x00000000, ProtectLoop = 0x00000001, Shapeshift = 0x00000002, + Vanish_Charge = 0x00000003, + Vanish_Poof = 0x00000004, + Appear_Poof = 0x00000005, }; #else @@ -6418,6 +6041,9 @@ namespace app RoleEffectAnimation_EffectType__Enum_Default = 0x00000000, RoleEffectAnimation_EffectType__Enum_ProtectLoop = 0x00000001, RoleEffectAnimation_EffectType__Enum_Shapeshift = 0x00000002, + RoleEffectAnimation_EffectType__Enum_Vanish_Charge = 0x00000003, + RoleEffectAnimation_EffectType__Enum_Vanish_Poof = 0x00000004, + RoleEffectAnimation_EffectType__Enum_Appear_Poof = 0x00000005, }; #endif @@ -6445,84 +6071,10 @@ namespace app MonitorData* monitor; struct RoleEffectAnimation__Fields fields; }; - - struct RoleEffectAnimation__Array { - void* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct RoleEffectAnimation* vector[32]; - }; #pragma endregion #pragma region List_1_PlayerTask_ - struct __declspec(align(4)) List_1_PlayerTask___Fields - { - struct PlayerTask__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_PlayerTask_ - { - struct List_1_PlayerTask___Class* klass; - void* monitor; - struct List_1_PlayerTask___Fields fields; - }; - struct List_1_PlayerTask___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData IndexOf; - VirtualInvokeData Insert; - VirtualInvokeData RemoveAt; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; - VirtualInvokeData Add; - VirtualInvokeData Clear; - VirtualInvokeData Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IList_get_Item; - VirtualInvokeData System_Collections_IList_set_Item; - VirtualInvokeData System_Collections_IList_Add; - VirtualInvokeData System_Collections_IList_Contains; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IList_get_IsReadOnly; - VirtualInvokeData System_Collections_IList_get_IsFixedSize; - VirtualInvokeData System_Collections_IList_IndexOf; - VirtualInvokeData System_Collections_IList_Insert; - VirtualInvokeData System_Collections_IList_Remove; - VirtualInvokeData RemoveAt_1; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Item_1; - VirtualInvokeData get_Count_2; - }; - - struct List_1_PlayerTask___StaticFields - { - struct PlayerTask__Array* _emptyArray; - }; - - struct List_1_PlayerTask___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct List_1_PlayerTask___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct List_1_PlayerTask___VTable vtable; - }; + WRAPPER_IL2CPP_LIST(PlayerTask, struct PlayerTask*); #pragma endregion #pragma region VersionShower @@ -6605,47 +6157,42 @@ namespace app #pragma endregion #pragma region GameData - struct GameData__Fields - { - struct InnerNetObject__Fields _; - struct List_1_GameData_PlayerInfo_* AllPlayers; + struct GameData__Fields { + struct MonoBehaviour__Fields _; + struct List_1_NetworkedPlayerInfo_* AllPlayers; + struct List_1_NetworkedPlayerInfo_* PlayerQueue; int32_t TotalTasks; int32_t CompletedTasks; struct RoleBehaviour* DefaultRole; + struct NetworkedPlayerInfo* PlayerInfoPrefab; }; - struct GameData - { - void* klass; - void* monitor; + struct GameData { + struct GameData__Class* klass; + MonitorData* monitor; struct GameData__Fields fields; }; - struct GameData__VTable - { + struct GameData__VTable { VirtualInvokeData Equals; VirtualInvokeData Finalize; VirtualInvokeData GetHashCode; VirtualInvokeData ToString; - VirtualInvokeData CompareTo; - VirtualInvokeData get_IsDirty; - VirtualInvokeData get_Chunked; - VirtualInvokeData OnDestroy; - VirtualInvokeData HandleRpc; - VirtualInvokeData Serialize; - VirtualInvokeData Deserialize; + VirtualInvokeData get_IsPersistent; VirtualInvokeData HandleDisconnect; VirtualInvokeData HandleDisconnect_1; }; - struct GameData__StaticFields - { + struct GameData__StaticFields { struct GameData* Instance; - void* randy; + float TimeGameStarted; + float TimeLastMeetingStarted; + int32_t MeetingCount; + int32_t RoundsPlayedInSession; + int32_t LastDeathReason;// DeathReason__Enum }; - struct GameData__Class - { + struct GameData__Class { Il2CppClass_0 _0; Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; struct GameData__StaticFields* static_fields; @@ -6675,7 +6222,7 @@ namespace app struct SpriteRenderer* MaskArea; void* PlatformIcon; struct TextMeshPro* ColorBlindName; - struct GameData_PlayerInfo* playerInfo; + struct NetworkedPlayerInfo* playerInfo; int32_t maskLayer; }; @@ -6736,7 +6283,7 @@ namespace app struct ChatController__Fields { struct MonoBehaviour__Fields _; - struct GameObject* chatButton; + void* chatButton; void* chatButtonAspectPosition; void* banButton; struct GameObject* openKeyboardButton; @@ -6758,6 +6305,7 @@ namespace app void* backButton; void* defaultButtonSelected; void* controllerSelectable; + void* chatNotification; #if defined(_CPLUSPLUS_) ChatControllerState__Enum state; #else @@ -7061,10 +6609,15 @@ namespace app bool shapeshifting; bool waitingForShapeshiftResponse; bool isKilling; - struct GameData_PlayerInfo* _cachedData; + float invisibilityAlpha; + struct NetworkedPlayerInfo *CachedPlayerData; int32_t protectedByGuardianId; float flashlightAngle; int32_t shapeshiftTargetPlayerId; + bool shouldAppearInvisible; + bool isTrackingPlayer; + struct PlayerControl *trackedPlayer; + int32_t trackedPlayerColorID; void* FootSteps; void* KillSfx; void* KillAnimations; @@ -7132,104 +6685,8 @@ namespace app }; #pragma endregion -#pragma region PlayerControl__Array - struct PlayerControl__Array - { - struct PlayerControl__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct PlayerControl* vector[32]; - }; - - struct PlayerControl__Array__VTable - { - }; - - struct PlayerControl__Array__StaticFields - { - }; - - struct PlayerControl__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct PlayerControl__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct PlayerControl__Array__VTable vtable; - }; -#pragma endregion - #pragma region List_1_PlayerControl_ - struct __declspec(align(4)) List_1_PlayerControl___Fields - { - struct PlayerControl__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_PlayerControl_ - { - struct List_1_PlayerControl___Class* klass; - void* monitor; - struct List_1_PlayerControl___Fields fields; - }; - - struct List_1_PlayerControl___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData IndexOf; - VirtualInvokeData Insert; - VirtualInvokeData RemoveAt; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; - VirtualInvokeData Add; - VirtualInvokeData Clear; - VirtualInvokeData Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IList_get_Item; - VirtualInvokeData System_Collections_IList_set_Item; - VirtualInvokeData System_Collections_IList_Add; - VirtualInvokeData System_Collections_IList_Contains; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IList_get_IsReadOnly; - VirtualInvokeData System_Collections_IList_get_IsFixedSize; - VirtualInvokeData System_Collections_IList_IndexOf; - VirtualInvokeData System_Collections_IList_Insert; - VirtualInvokeData System_Collections_IList_Remove; - VirtualInvokeData RemoveAt_1; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Item_1; - VirtualInvokeData get_Count_2; - }; - - struct List_1_PlayerControl___StaticFields - { - struct PlayerControl__Array* _emptyArray; - }; - - struct List_1_PlayerControl___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct List_1_PlayerControl___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct List_1_PlayerControl___VTable vtable; - }; + WRAPPER_IL2CPP_LIST(PlayerControl, struct PlayerControl*); #pragma endregion #pragma region HudManager @@ -7253,7 +6710,6 @@ namespace app void* PetButton; void* AbilityButton; void* ReportButton; - struct TextMeshPro* GameSettings; struct GameObject* TaskStuff; struct TaskPanelBehaviour* TaskPanel; struct CrewmatesKilledTracker* CrewmatesKilled; @@ -7413,31 +6869,8 @@ namespace app }; #pragma endregion -#pragma region SpriteRenderer__Array - struct SpriteRenderer__Array - { - Il2CppObject obj; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct SpriteRenderer* vector[32]; - }; -#pragma endregion - #pragma region List_1_UnityEngine_SpriteRenderer_ - struct __declspec(align(4)) List_1_UnityEngine_SpriteRenderer___Fields - { - struct SpriteRenderer__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_UnityEngine_SpriteRenderer_ - { - void* klass; - void* monitor; - struct List_1_UnityEngine_SpriteRenderer___Fields fields; - }; + WRAPPER_IL2CPP_LIST_2(UnityEngine_SpriteRenderer, SpriteRenderer, struct SpriteRenderer*); #pragma endregion #pragma region VoteSpreader @@ -7530,7 +6963,7 @@ namespace app #endif struct GameObject* SkippedVoting; struct SpriteRenderer* HostIcon; - struct GameData_PlayerInfo* exiledPlayer; + struct NetworkedPlayerInfo* exiledPlayer; bool wasTie; struct TextMeshPro* TimerText; float discussionTimer; @@ -7562,6 +6995,7 @@ namespace app VirtualInvokeData HandleRpc; VirtualInvokeData Serialize; VirtualInvokeData Deserialize; + VirtualInvokeData get_IsPersistent; VirtualInvokeData HandleDisconnect; VirtualInvokeData HandleDisconnect_1; }; @@ -7901,6 +7335,7 @@ namespace app VirtualInvokeData __unknown_9; VirtualInvokeData __unknown_10; VirtualInvokeData __unknown_11; + VirtualInvokeData __unknown_12; }; struct InnerNetClient__StaticFields { @@ -7964,6 +7399,7 @@ namespace app struct String* OnlineScene; struct String* MainMenuScene; struct GameData* GameDataPrefab; + void* VoteBanPrefab; struct PlayerControl* PlayerPrefab; void* ShipPrefabs; int32_t TutorialMapId; @@ -7980,7 +7416,6 @@ namespace app #else int32_t CrossplayPrivilegeError; #endif - int32_t MAX_CLIENT_WAIT_TIME; void* logger; struct AsyncOperationHandle_1_UnityEngine_GameObject_ ShipLoadingAsyncHandle; }; @@ -8012,6 +7447,7 @@ namespace app VirtualInvokeData OnPlayerLeft; VirtualInvokeData OnReportedPlayer; VirtualInvokeData OnDisconnected; + VirtualInvokeData PreDisconnectInternal; VirtualInvokeData OnGetGameList; }; @@ -8038,6 +7474,7 @@ namespace app bool InScene; bool IsReady; bool HasBeenReported; + bool IsBeingCreated; struct PlayerControl* Character; uint32_t PlayerLevel; void* PlatformData; @@ -8077,102 +7514,8 @@ namespace app }; #pragma endregion -#pragma region ClientData__Array - struct ClientData__Array - { - struct ClientData__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct ClientData* vector[32]; - }; - struct ClientData__Array__VTable - { - }; - - struct ClientData__Array__StaticFields - { - }; - - struct ClientData__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct ClientData__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct ClientData__Array__VTable vtable; - }; -#pragma endregion - #pragma region List_1_InnerNet_ClientData_ - struct __declspec(align(4)) List_1_InnerNet_ClientData___Fields - { - struct ClientData__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_InnerNet_ClientData_ - { - struct List_1_InnerNet_ClientData___Class* klass; - void* monitor; - struct List_1_InnerNet_ClientData___Fields fields; - }; - struct List_1_InnerNet_ClientData___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData IndexOf; - VirtualInvokeData Insert; - VirtualInvokeData RemoveAt; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; - VirtualInvokeData Add; - VirtualInvokeData Clear; - VirtualInvokeData Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IList_get_Item; - VirtualInvokeData System_Collections_IList_set_Item; - VirtualInvokeData System_Collections_IList_Add; - VirtualInvokeData System_Collections_IList_Contains; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IList_get_IsReadOnly; - VirtualInvokeData System_Collections_IList_get_IsFixedSize; - VirtualInvokeData System_Collections_IList_IndexOf; - VirtualInvokeData System_Collections_IList_Insert; - VirtualInvokeData System_Collections_IList_Remove; - VirtualInvokeData RemoveAt_1; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Item_1; - VirtualInvokeData get_Count_2; - }; - - struct List_1_InnerNet_ClientData___StaticFields - { - struct ClientData__Array* _emptyArray; - }; - - struct List_1_InnerNet_ClientData___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct List_1_InnerNet_ClientData___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct List_1_InnerNet_ClientData___VTable vtable; - }; + WRAPPER_IL2CPP_LIST_2(InnerNet_ClientData, ClientData, struct ClientData*); #pragma endregion #pragma region LobbyBehaviour @@ -8182,6 +7525,7 @@ namespace app void* SpawnInClip; void* SpawnPositions; void* DropShipSound; + void* MapTheme; void* AllRooms; void* logger; float lastFriendsCheckTime; @@ -8527,32 +7871,7 @@ namespace app #pragma endregion #pragma region DeadBody__Array - struct DeadBody__Array - { - struct DeadBody__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct DeadBody* vector[32]; - }; - - struct DeadBody__Array__VTable - { - }; - - struct DeadBody__Array__StaticFields - { - }; - - struct DeadBody__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct DeadBody__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct DeadBody__Array__VTable vtable; - }; + WRAPPER_IL2CPP_ARRAY(DeadBody, struct DeadBody*); #pragma endregion #pragma region IRoleOptionsCollection @@ -8614,6 +7933,13 @@ namespace app VirtualInvokeData GetShapeshifterLeaveSkin; VirtualInvokeData GetScientistCooldown; VirtualInvokeData GetScientistBatteryCharge; + VirtualInvokeData GetPhantomCooldown; + VirtualInvokeData GetPhantomDuration; + VirtualInvokeData GetTrackerCooldown; + VirtualInvokeData GetTrackerDuration; + VirtualInvokeData GetTrackerDelay; + VirtualInvokeData GetNoisemakerImpostorAlert; + VirtualInvokeData GetNoisemakerAlertDuration; VirtualInvokeData GetKillCooldown; VirtualInvokeData GetKillDistance; VirtualInvokeData GetPlayerSpeedMod; @@ -8695,6 +8021,12 @@ namespace app ScientistBatteryCharge = 0x000004b1, EngineerCooldown = 0x00000514, EngineerInVentMaxTime = 0x00000515, + PhantomCooldown = 0x000005dc, + PhantomDuration = 0x000005dd, + TrackerCooldown = 0x0000060e, + TrackerDuration = 0x0000060f, + TrackerDelay = 0x00000610, + NoisemakerAlertDuration = 0x00000640, }; #else @@ -8719,6 +8051,12 @@ namespace app FloatOptionNames__Enum_ScientistBatteryCharge = 0x000004b1, FloatOptionNames__Enum_EngineerCooldown = 0x00000514, FloatOptionNames__Enum_EngineerInVentMaxTime = 0x00000515, + FloatOptionNames__Enum_PhantomCooldown = 0x000005dc, + FloatOptionNames__Enum_PhantomDuration = 0x000005dd, + FloatOptionNames__Enum_TrackerCooldown = 0x0000060e, + FloatOptionNames__Enum_TrackerDuration = 0x0000060f, + FloatOptionNames__Enum_TrackerDelay = 0x00000610, + FloatOptionNames__Enum_NoisemakerAlertDuration = 0x00000640, }; #endif @@ -8738,6 +8076,7 @@ namespace app ShowCrewmateNames = 0x0000000a, ShapeshifterLeaveSkin = 0x000003e8, ImpostorsCanSeeProtect = 0x0000044c, + NoisemakerImpostorAlert = 0x00000514, }; #else @@ -8755,6 +8094,7 @@ namespace app BoolOptionNames__Enum_ShowCrewmateNames = 0x0000000a, BoolOptionNames__Enum_ShapeshifterLeaveSkin = 0x000003e8, BoolOptionNames__Enum_ImpostorsCanSeeProtect = 0x0000044c, + BoolOptionNames__Enum_NoisemakerImpostorAlert = 0x00000514, }; #endif @@ -8778,6 +8118,7 @@ namespace app CrewmatesRemainingForVitals = 0x00000064, CrewmateVentUses = 0x00000065, ImpostorPlayerID = 0x00000066, + RulePreset = 0x000000c8, }; #else @@ -8799,6 +8140,7 @@ namespace app Int32OptionNames__Enum_CrewmatesRemainingForVitals = 0x00000064, Int32OptionNames__Enum_CrewmateVentUses = 0x00000065, Int32OptionNames__Enum_ImpostorPlayerID = 0x00000066, + Int32OptionNames__Enum_RulePreset = 0x000000c8, }; #endif @@ -8855,8 +8197,10 @@ namespace app struct IGameOptions__VTable { VirtualInvokeData get_Version; VirtualInvokeData get_GameMode; + VirtualInvokeData get_SpecialMode; VirtualInvokeData get_AprilFoolsOnMode; VirtualInvokeData get_AprilFoolsOffMode; + VirtualInvokeData get_RulesPreset; VirtualInvokeData get_MaxPlayers; VirtualInvokeData get_Keywords; VirtualInvokeData get_MapId; @@ -8866,6 +8210,7 @@ namespace app VirtualInvokeData get_RoleOptions; VirtualInvokeData AreInvalid; VirtualInvokeData SetRecommendations; + VirtualInvokeData SetRecommendations_1; VirtualInvokeData SetByte; VirtualInvokeData SetFloat; VirtualInvokeData SetBool; @@ -8900,178 +8245,12 @@ namespace app #pragma endregion - -#pragma region List_1_GameData_PlayerInfo_ - struct __declspec(align(4)) List_1_GameData_PlayerInfo___Fields - { - struct GameData_PlayerInfo__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_GameData_PlayerInfo_ - { - struct List_1_GameData_PlayerInfo___Class* klass; - void* monitor; - struct List_1_GameData_PlayerInfo___Fields fields; - }; - - struct GameData_PlayerInfo__Array { - struct GameData_PlayerInfo__Array__Class* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct GameData_PlayerInfo* vector[32]; - }; - - struct List_1_GameData_PlayerInfo___VTable - { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData IndexOf; - VirtualInvokeData Insert; - VirtualInvokeData RemoveAt; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; - VirtualInvokeData Add; - VirtualInvokeData Clear; - VirtualInvokeData Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IList_get_Item; - VirtualInvokeData System_Collections_IList_set_Item; - VirtualInvokeData System_Collections_IList_Add; - VirtualInvokeData System_Collections_IList_Contains; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IList_get_IsReadOnly; - VirtualInvokeData System_Collections_IList_get_IsFixedSize; - VirtualInvokeData System_Collections_IList_IndexOf; - VirtualInvokeData System_Collections_IList_Insert; - VirtualInvokeData System_Collections_IList_Remove; - VirtualInvokeData RemoveAt_1; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Item_1; - VirtualInvokeData get_Count_2; - }; - - struct List_1_GameData_PlayerInfo___StaticFields - { - struct GameData_PlayerInfo__Array* _emptyArray; - }; - - struct List_1_GameData_PlayerInfo___Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct List_1_GameData_PlayerInfo___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct List_1_GameData_PlayerInfo___VTable vtable; - }; -#pragma endregion - -#pragma region RoleTypes__Enum__Array - struct RoleTypes__Enum__Array - { - struct RoleTypes__Enum__Array__Class* klass; - void* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - RoleTypes__Enum vector[32]; - }; - struct RoleTypes__Enum__Array__VTable - { - }; - - struct RoleTypes__Enum__Array__StaticFields - { - }; - - struct RoleTypes__Enum__Array__Class - { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct RoleTypes__Enum__Array__StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct RoleTypes__Enum__Array__VTable vtable; - }; +#pragma region List_1_NetworkedPlayerInfo_ + WRAPPER_IL2CPP_LIST(NetworkedPlayerInfo, struct NetworkedPlayerInfo*); #pragma endregion #pragma region List_1_RoleTypes_ - struct __declspec(align(4)) List_1_AmongUs_GameOptions_RoleTypes___Fields { - struct RoleTypes__Enum__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; - - struct List_1_AmongUs_GameOptions_RoleTypes_ { - struct List_1_AmongUs_GameOptions_RoleTypes___Class* klass; - MonitorData* monitor; - struct List_1_AmongUs_GameOptions_RoleTypes___Fields fields; - }; - - struct List_1_AmongUs_GameOptions_RoleTypes___VTable { - VirtualInvokeData Equals; - VirtualInvokeData Finalize; - VirtualInvokeData GetHashCode; - VirtualInvokeData ToString; - VirtualInvokeData get_Item; - VirtualInvokeData set_Item; - VirtualInvokeData IndexOf; - VirtualInvokeData Insert; - VirtualInvokeData RemoveAt; - VirtualInvokeData get_Count; - VirtualInvokeData System_Collections_Generic_ICollection_T__get_IsReadOnly; - VirtualInvokeData Add; - VirtualInvokeData Clear; - VirtualInvokeData Contains; - VirtualInvokeData CopyTo; - VirtualInvokeData Remove; - VirtualInvokeData System_Collections_Generic_IEnumerable_T__GetEnumerator; - VirtualInvokeData System_Collections_IEnumerable_GetEnumerator; - VirtualInvokeData System_Collections_IList_get_Item; - VirtualInvokeData System_Collections_IList_set_Item; - VirtualInvokeData System_Collections_IList_Add; - VirtualInvokeData System_Collections_IList_Contains; - VirtualInvokeData Clear_1; - VirtualInvokeData System_Collections_IList_get_IsReadOnly; - VirtualInvokeData System_Collections_IList_get_IsFixedSize; - VirtualInvokeData System_Collections_IList_IndexOf; - VirtualInvokeData System_Collections_IList_Insert; - VirtualInvokeData System_Collections_IList_Remove; - VirtualInvokeData RemoveAt_1; - VirtualInvokeData System_Collections_ICollection_CopyTo; - VirtualInvokeData get_Count_1; - VirtualInvokeData System_Collections_ICollection_get_SyncRoot; - VirtualInvokeData System_Collections_ICollection_get_IsSynchronized; - VirtualInvokeData get_Item_1; - VirtualInvokeData get_Count_2; - }; - - struct List_1_AmongUs_GameOptions_RoleTypes___StaticFields { - struct RoleTypes__Enum__Array* _emptyArray; - }; - - struct List_1_AmongUs_GameOptions_RoleTypes___Class { - Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - struct List_1_AmongUs_GameOptions_RoleTypes___StaticFields* static_fields; - const Il2CppRGCTXData* rgctx_data; - Il2CppClass_1 _1; - struct List_1_AmongUs_GameOptions_RoleTypes___VTable vtable; - }; + WRAPPER_IL2CPP_LIST_2(AmongUs_GameOptions_RoleTypes, RoleTypes__Enum, RoleTypes__Enum); #pragma endregion #pragma region BinaryReader @@ -9531,6 +8710,17 @@ namespace app struct Color Brown; struct Color CrewmateBlue; struct Color ImpostorRed; + struct Color CrewmateRoleBlue; + struct Color CrewmateRoleHeaderBlue; + struct Color CrewmateRoleHeaderTextBlue; + struct Color CrewmateRoleHeaderDarkBlue; + struct Color CrewmateRoleHeaderVeryDarkBlue; + struct Color CrewmateSettingChangeText; + struct Color ImpostorRoleRed; + struct Color ImpostorRoleHeaderRed; + struct Color ImpostorRoleHeaderTextRed; + struct Color ImpostorRoleHeaderDarkRed; + struct Color ImpostorRoleHeaderVeryDarkRed; struct Color CosmicubeCellUnlockedColor; struct Color CosmicubeCellLockedColor; struct Color CosmicubeQuality_NamePlate; @@ -9547,6 +8737,8 @@ namespace app struct StringNames__Enum__Array* ColorNames; struct Color32__Array* PlayerColors; struct Color32__Array* ShadowColors; + struct Color32__Array* TextColors; + struct Color32__Array* TextOutlineColors; struct Color32 VisorColor; }; @@ -9659,7 +8851,9 @@ namespace app VirtualInvokeData Deinitialize; VirtualInvokeData SpawnTaskHeader; VirtualInvokeData UseAbility; + VirtualInvokeData OnMeetingStart; VirtualInvokeData OnVotingComplete; + VirtualInvokeData OnDeath; VirtualInvokeData Initialize; VirtualInvokeData SetUsableTarget; VirtualInvokeData SetPlayerTarget; @@ -9687,13 +8881,15 @@ namespace app #pragma endregion #pragma region RoleManager - struct RoleManager__Fields - { + struct RoleManager__Fields { struct DestroyableSingleton_1_RoleManager___Fields _; void* AllRoles; - void* shapeshiftAnim; - void* protectAnim; - void* protectLoopAnim; + struct RoleEffectAnimation* shapeshiftAnim; + struct RoleEffectAnimation* protectAnim; + struct RoleEffectAnimation* protectLoopAnim; + struct RoleEffectAnimation* vanish_ChargeAnim; + struct RoleEffectAnimation* vanish_PoofAnim; + struct RoleEffectAnimation* appear_PoofAnim; }; struct RoleManager @@ -9872,60 +9068,10 @@ namespace app #pragma endregion #pragma region AchievementManager - struct GameModes__Enum__Array { - void* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - GameModes__Enum vector[32]; - }; - - struct __declspec(align(4)) List_1_AmongUs_GameOptions_GameModes___Fields { - struct GameModes__Enum__Array* _items; - int32_t _size; - int32_t _version; - struct Object* _syncRoot; - }; + WRAPPER_IL2CPP_LIST_2(AmongUs_GameOptions_GameModes, GameModes__Enum, GameModes__Enum); - struct List_1_AmongUs_GameOptions_GameModes_ { - void* klass; - MonitorData* monitor; - struct List_1_AmongUs_GameOptions_GameModes___Fields fields; - }; - - struct __declspec(align(4)) Dictionary_2_System_String_List_1_AmongUs_GameOptions_GameModes___Fields { - struct Int32__Array* buckets; - struct Dictionary_2_TKey_TValue_Entry_System_String_List_1_AmongUs_GameOptions_GameModes___Array* entries; - int32_t count; - int32_t version; - int32_t freeList; - int32_t freeCount; - void* comparer; - void* keys; - void* values; - struct Object* _syncRoot; - }; - - struct Dictionary_2_System_String_List_1_AmongUs_GameOptions_GameModes_ { - void* klass; - MonitorData* monitor; - struct Dictionary_2_System_String_List_1_AmongUs_GameOptions_GameModes___Fields fields; - }; - - struct Dictionary_2_TKey_TValue_Entry_System_String_List_1_AmongUs_GameOptions_GameModes_ { - int32_t hashCode; - int32_t next; - struct String* key; - struct List_1_AmongUs_GameOptions_GameModes_* value; - }; - - struct Dictionary_2_TKey_TValue_Entry_System_String_List_1_AmongUs_GameOptions_GameModes___Array { - void* klass; - MonitorData* monitor; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; - struct Dictionary_2_TKey_TValue_Entry_System_String_List_1_AmongUs_GameOptions_GameModes_ vector[32]; - }; + WRAPPER_IL2CPP_DICTIONARY(System_String, List_1_AmongUs_GameOptions_GameModes, \ + struct String*, struct List_1_AmongUs_GameOptions_GameModes_*); struct AchievementManager_1 { struct AchievementManager_1__Class* klass; @@ -9969,4 +9115,5 @@ namespace app typedef Il2CppObject GameOptionsFactory; typedef Il2CppObject SettingsData; typedef Il2CppObject AccessibilitySettingsData; + } \ No newline at end of file diff --git a/events/_events.h b/events/_events.h index bc4125fa..2277d357 100644 --- a/events/_events.h +++ b/events/_events.h @@ -56,14 +56,14 @@ struct EVENT_PLAYER { isProtected = false; } - EVENT_PLAYER(GameData_PlayerInfo* playerInfo) { + EVENT_PLAYER(NetworkedPlayerInfo* playerInfo) { playerId = playerInfo->fields.PlayerId; - GameData_PlayerOutfit* outfit = app::GameData_PlayerInfo_get_DefaultOutfit(playerInfo, nullptr); + auto outfit = app::NetworkedPlayerInfo_get_DefaultOutfit(playerInfo, nullptr); if (outfit != nullptr) { colorId = outfit->fields.ColorId; - playerName = convert_from_string(app::GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + playerName = convert_from_string(outfit->fields.PlayerName); } else { @@ -74,7 +74,7 @@ struct EVENT_PLAYER { isDead = playerInfo->fields.IsDead; isAngel = (playerInfo->fields.Role) ? playerInfo->fields.Role->fields.Role == RoleTypes__Enum::GuardianAngel : false; - if (auto object = GameData_PlayerInfo_get_Object(playerInfo, nullptr)) + if (auto object = app::NetworkedPlayerInfo_get_Object(playerInfo, nullptr)) isProtected = object->fields.protectedByGuardianId >= 0; else isProtected = false; diff --git a/gui/aum-chat.cpp b/gui/aum-chat.cpp index 8a79cc7b..e67752f3 100644 --- a/gui/aum-chat.cpp +++ b/gui/aum-chat.cpp @@ -14,7 +14,7 @@ namespace ChatGui auto gPlayerInfo = GetPlayerDataById((*Game::pLocalPlayer)->fields.PlayerId); auto outfit = GetPlayerOutfit(gPlayerInfo); - auto name = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + auto name = convert_from_string(outfit->fields.PlayerName); State.chatMessages.emplace_back(std::make_unique(name, message, (uint32_t)outfit->fields.ColorId, std::chrono::system_clock::now())); if (IsInGame()) State.rpcQueue.push(new RpcChatMessage(name, message, (uint32_t)outfit->fields.ColorId, std::chrono::system_clock::now())); else if (IsInLobby()) State.lobbyRpcQueue.push(new RpcChatMessage(name, message, (uint32_t)outfit->fields.ColorId, std::chrono::system_clock::now())); diff --git a/gui/gui-helpers.cpp b/gui/gui-helpers.cpp index e3b7ad65..7a76d1e4 100644 --- a/gui/gui-helpers.cpp +++ b/gui/gui-helpers.cpp @@ -140,10 +140,10 @@ bool CustomListBoxPlayerSelectionMultiple(const char* label, std::arrayat(playerData->fields.PlayerId); - std::string playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + std::string playerName = convert_from_string(outfit->fields.PlayerName); PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(0, 0) * State.dpiScale); PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(0, 0) * State.dpiScale); if (Selectable(std::string("##" + playerName + "_ConsoleName").c_str(), item.second)) diff --git a/gui/radar.cpp b/gui/radar.cpp index 92b56e4d..e2400740 100644 --- a/gui/radar.cpp +++ b/gui/radar.cpp @@ -6,14 +6,14 @@ #include "gui-helpers.hpp" namespace Radar { - ImU32 GetRadarPlayerColor(GameData_PlayerInfo* playerData) { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + ImU32 GetRadarPlayerColor(NetworkedPlayerInfo* playerData) { + auto outfit = GetPlayerOutfit(playerData); if (outfit == NULL) return ImU32(0); return ImGui::ColorConvertFloat4ToU32(AmongUsColorToImVec4((GetPlayerColor(outfit->fields.ColorId)))); } - ImU32 GetRadarPlayerColorStatus(GameData_PlayerInfo* playerData) { + ImU32 GetRadarPlayerColorStatus(NetworkedPlayerInfo* playerData) { if (playerData->fields.IsDead) return ImGui::ColorConvertFloat4ToU32(AmongUsColorToImVec4(app::Palette__TypeInfo->static_fields->HalfWhite)); else if (State.RevealRoles diff --git a/gui/replay.cpp b/gui/replay.cpp index 35e0dd18..4a3d33a4 100644 --- a/gui/replay.cpp +++ b/gui/replay.cpp @@ -323,7 +323,7 @@ namespace Replay ImVec2(1.0f, 1.0f), GetReplayPlayerColor(plrLineData.colorId)); - app::GameData_PlayerInfo* plrInfo = GetPlayerDataById(plrLineData.playerId); + auto plrInfo = GetPlayerDataById(plrLineData.playerId); if ((plrInfo != NULL) && ((plrInfo->fields.IsDead) || ((plrInfo->fields.Role != NULL) && diff --git a/gui/tabs/game_tab.cpp b/gui/tabs/game_tab.cpp index b2f25296..cd4cb061 100644 --- a/gui/tabs/game_tab.cpp +++ b/gui/tabs/game_tab.cpp @@ -44,7 +44,7 @@ namespace GameTab { for (PlayerControl* player : GetAllPlayerControl()) { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(GetPlayerData(player)); + auto outfit = GetPlayerOutfit(GetPlayerData(player)); if (outfit == NULL) continue; if (State.SelectedColorId == outfit->fields.ColorId) { diff --git a/gui/tabs/host_tab.cpp b/gui/tabs/host_tab.cpp index a014f125..f90d2524 100644 --- a/gui/tabs/host_tab.cpp +++ b/gui/tabs/host_tab.cpp @@ -33,9 +33,9 @@ namespace HostTab { if (State.assignedRolesPlayer[index] == nullptr) continue; - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + auto outfit = GetPlayerOutfit(playerData); if (outfit == NULL) continue; - const std::string& playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + const std::string& playerName = convert_from_string(outfit->fields.PlayerName); if (CustomListBoxInt(playerName.c_str(), reinterpret_cast(&State.assignedRoles[index]), ROLE_NAMES, 80 * State.dpiScale)) { State.engineers_amount = (int)GetRoleCount(RoleType::Engineer); diff --git a/gui/tabs/players_tab.cpp b/gui/tabs/players_tab.cpp index d6eb4f77..4901e533 100644 --- a/gui/tabs/players_tab.cpp +++ b/gui/tabs/players_tab.cpp @@ -24,9 +24,9 @@ namespace PlayersTab { if (player.is_Disconnected()) continue; - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + auto outfit = GetPlayerOutfit(playerData); if (outfit == NULL) continue; - std::string playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + std::string playerName = convert_from_string(outfit->fields.PlayerName); ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing, ImVec2(0, 0) * State.dpiScale); ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(0, 0) * State.dpiScale); if (ImGui::Selectable(std::string("##" + playerName).c_str(), selectedPlayer.equals(player))) { @@ -146,7 +146,7 @@ namespace PlayersTab { } if ((IsInGame() || IsInLobby())) { if (!selectedPlayer.is_LocalPlayer()) { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(selectedPlayer.get_PlayerData()); + auto outfit = GetPlayerOutfit(selectedPlayer.get_PlayerData()); if (outfit != NULL) { if (ImGui::Button("Impersonate")) { diff --git a/hooks/AirshipStatus.cpp b/hooks/AirshipStatus.cpp index 2f2f74b8..87705300 100644 --- a/hooks/AirshipStatus.cpp +++ b/hooks/AirshipStatus.cpp @@ -32,7 +32,7 @@ void dAirshipStatus_OnEnable(AirshipStatus* __this, MethodInfo* method) ResetOriginalAppearance(); } -float dAirshipStatus_CalculateLightRadius(AirshipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method) +float dAirshipStatus_CalculateLightRadius(AirshipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method) { if (State.MaxVision || State.EnableZoom || State.FreeCam) return 10.F; diff --git a/hooks/Chat.cpp b/hooks/Chat.cpp index 779856a7..efea699b 100644 --- a/hooks/Chat.cpp +++ b/hooks/Chat.cpp @@ -7,8 +7,8 @@ void dChatController_AddChat(ChatController* __this, PlayerControl* sourcePlayer, String* chatText, bool censor, MethodInfo* method) { if (State.ReadGhostMessages) { bool wasDead = false; - GameData_PlayerInfo* player = GetPlayerData(sourcePlayer); - GameData_PlayerInfo* local = GetPlayerData(*Game::pLocalPlayer); + auto player = GetPlayerData(sourcePlayer); + auto local = GetPlayerData(*Game::pLocalPlayer); if (player != NULL && player->fields.IsDead && local != NULL && !local->fields.IsDead) { local->fields.IsDead = true; @@ -36,9 +36,9 @@ void dChatController_SetVisible(ChatController* __this, bool visible, MethodInfo void dChatBubble_SetName(ChatBubble* __this, String* playerName, bool isDead, bool voted, Color color, MethodInfo* method) { if (IsInGame()) { for (auto playerData : GetAllPlayerData()) { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + auto outfit = GetPlayerOutfit(playerData); if (outfit == NULL) continue; - if (playerName == GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)) { + if (playerName == outfit->fields.PlayerName) { if (State.RevealRoles) color = GetRoleColor(playerData->fields.Role); else diff --git a/hooks/InnerNetClient.cpp b/hooks/InnerNetClient.cpp index 5f0c04a0..7846389b 100644 --- a/hooks/InnerNetClient.cpp +++ b/hooks/InnerNetClient.cpp @@ -94,9 +94,9 @@ void dInnerNetClient_Update(InnerNetClient* __this, MethodInfo* method) if (IsInLobby()) { if (State.originalName == "-") { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(GetPlayerData(*Game::pLocalPlayer)); + auto outfit = GetPlayerOutfit(GetPlayerData(*Game::pLocalPlayer)); if (outfit != NULL) - State.originalName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + State.originalName = convert_from_string(outfit->fields.PlayerName); } if (!State.lobbyRpcQueue.empty()) { diff --git a/hooks/MeetingHud.cpp b/hooks/MeetingHud.cpp index 0dcaaca5..e1d34a43 100644 --- a/hooks/MeetingHud.cpp +++ b/hooks/MeetingHud.cpp @@ -140,10 +140,10 @@ void dMeetingHud_Update(MeetingHud* __this, MethodInfo* method) { auto playerData = GetPlayerDataById(playerVoteArea->fields.TargetPlayerId); auto localData = GetPlayerData(*Game::pLocalPlayer); auto playerNameTMP = playerVoteArea->fields.NameText; - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + auto outfit = GetPlayerOutfit(playerData); if (playerData && localData && outfit) { - std::string playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + std::string playerName = convert_from_string(outfit->fields.PlayerName); if (State.RevealRoles) { std::string roleName = GetRoleName(playerData->fields.Role, State.AbbreviatedRoleNames); diff --git a/hooks/PlayerControl.cpp b/hooks/PlayerControl.cpp index 1ebd0de3..1c6871e8 100644 --- a/hooks/PlayerControl.cpp +++ b/hooks/PlayerControl.cpp @@ -60,10 +60,10 @@ void dPlayerControl_FixedUpdate(PlayerControl* __this, MethodInfo* method) { if (!playerData || !localData) return; - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData, true); + auto outfit = GetPlayerOutfit(playerData, true); std::string playerName = ""; if (outfit != NULL) - playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + playerName = convert_from_string(outfit->fields.PlayerName); if (State.ShowKillCD && __this != *Game::pLocalPlayer && !playerData->fields.IsDead @@ -276,14 +276,14 @@ void dPlayerControl_FixedUpdate(PlayerControl* __this, MethodInfo* method) { } Profiler::EndSample("WalkEventCreation"); } - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(playerData); + auto outfit = GetPlayerOutfit(playerData); EspPlayerData espPlayerData; espPlayerData.Position = WorldToScreen(playerPos); if (outfit != NULL) { espPlayerData.Color = State.ShowEsp_RoleBased == false ? AmongUsColorToImVec4(GetPlayerColor(outfit->fields.ColorId)) : AmongUsColorToImVec4(GetRoleColor(playerData->fields.Role)); - espPlayerData.Name = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + espPlayerData.Name = convert_from_string(outfit->fields.PlayerName); } else { @@ -358,7 +358,7 @@ void dPlayerControl_MurderPlayer(PlayerControl* __this, PlayerControl* target, M PlayerControl_MurderPlayer(__this, target, resultFlags, method); } -void dPlayerControl_StartMeeting(PlayerControl* __this, GameData_PlayerInfo* target, MethodInfo* method) +void dPlayerControl_StartMeeting(PlayerControl* __this, NetworkedPlayerInfo* target, MethodInfo* method) { if (auto player = GetEventPlayerControl(__this); player && target) { diff --git a/hooks/RoleManager.cpp b/hooks/RoleManager.cpp index 4ff989ea..e0992915 100644 --- a/hooks/RoleManager.cpp +++ b/hooks/RoleManager.cpp @@ -28,14 +28,6 @@ void dRoleManager_SelectRoles(RoleManager* __this, MethodInfo* method) { }//Assign hidenseek roles } -/*void dRoleManager_AssignRolesForTeam(List_1_GameData_PlayerInfo_* players, RoleOptionsData* opts, RoleTeamTypes__Enum team, int32_t teamMax, Nullable_1_RoleTypes_ defaultRole, MethodInfo* method) { - return RoleManager_AssignRolesForTeam(players, opts, team, teamMax, defaultRole, method); -} - -void dRoleManager_AssignRolesFromList(List_1_GameData_PlayerInfo_* players, int32_t teamMax, List_1_RoleTypes_* roleList, int32_t* rolesAssigned, MethodInfo* method) { - return RoleManager_AssignRolesFromList(players, teamMax, roleList, rolesAssigned, method); -}*/ - void AssignPreChosenRoles(RoleRates& roleRates, std::vector& assignedPlayers) { for (size_t i = 0; i < State.assignedRolesPlayer.size(); i++) diff --git a/hooks/ShipStatus.cpp b/hooks/ShipStatus.cpp index 9cb17226..fd217814 100644 --- a/hooks/ShipStatus.cpp +++ b/hooks/ShipStatus.cpp @@ -6,7 +6,7 @@ #include "replay.hpp" #include "profiler.h" -float dShipStatus_CalculateLightRadius(ShipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method) { +float dShipStatus_CalculateLightRadius(ShipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method) { if (State.MaxVision || State.EnableZoom || State.FreeCam) return 10.F; else diff --git a/hooks/Vent.cpp b/hooks/Vent.cpp index 80ea1bdc..b813bcc5 100644 --- a/hooks/Vent.cpp +++ b/hooks/Vent.cpp @@ -4,9 +4,9 @@ #include "logger.h" #include -float dVent_CanUse(Vent* __this, GameData_PlayerInfo* pc, bool* canUse, bool* couldUse, MethodInfo* method) { +float dVent_CanUse(Vent* __this, NetworkedPlayerInfo* pc, bool* canUse, bool* couldUse, MethodInfo* method) { if (State.UnlockVents) { - auto object = GameData_PlayerInfo_get_Object(pc, nullptr); + auto object = NetworkedPlayerInfo_get_Object(pc, nullptr); if (!object) { LOG_ERROR(ToString(pc) + " _object is null"); return app::Vent_CanUse(__this, pc, canUse, couldUse, method); diff --git a/hooks/_hooks.h b/hooks/_hooks.h index 68faf9ca..39766df2 100644 --- a/hooks/_hooks.h +++ b/hooks/_hooks.h @@ -9,9 +9,9 @@ void dInnerNetClient_Update(InnerNetClient* __this, MethodInfo* method); void dAmongUsClient_OnPlayerLeft(AmongUsClient* __this, ClientData* data, DisconnectReasons__Enum reason, MethodInfo* method); void dCustomNetworkTransform_SnapTo(CustomNetworkTransform* __this, Vector2 position, uint16_t minSid, MethodInfo* method); bool dStatsManager_get_AmBanned(StatsManager* __this, MethodInfo* method); -float dShipStatus_CalculateLightRadius(ShipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method); +float dShipStatus_CalculateLightRadius(ShipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method); float dStatsManager_get_BanPoints(StatsManager* __this, MethodInfo* method); -float dVent_CanUse(Vent* __this, GameData_PlayerInfo* pc, bool* canUse, bool* couldUse, MethodInfo* method); +float dVent_CanUse(Vent* __this, NetworkedPlayerInfo* pc, bool* canUse, bool* couldUse, MethodInfo* method); int32_t dStatsManager_get_BanMinutesLeft(StatsManager* __this, MethodInfo* method); void dChatBubble_SetName(ChatBubble* __this, String* playerName, bool isDead, bool voted, Color color, MethodInfo* method); void dChatController_AddChat(ChatController* __this, PlayerControl* sourcePlayer, String* chatText, bool censor, MethodInfo* method); @@ -28,7 +28,7 @@ void dPlainDoor_SetDoorway(PlainDoor* __this, bool open, MethodInfo* method); void dPlayerControl_CompleteTask(PlayerControl* __this, uint32_t idx, MethodInfo* method); void dPlayerControl_FixedUpdate(PlayerControl* __this, MethodInfo* method); void dPlayerControl_MurderPlayer(PlayerControl* __this, PlayerControl* target, MurderResultFlags__Enum resultFlags, MethodInfo* method); -void dPlayerControl_StartMeeting(PlayerControl* __this, GameData_PlayerInfo* target, MethodInfo* method); +void dPlayerControl_StartMeeting(PlayerControl* __this, NetworkedPlayerInfo* target, MethodInfo* method); void dPlayerControl_RpcSyncSettings(PlayerControl* __this, Byte__Array* optionsByteArray, MethodInfo* method); void dPlayerControl_HandleRpc(PlayerControl* __this, uint8_t callId, MessageReader* reader, MethodInfo* method); void dPlayerControl_Shapeshift(PlayerControl* __this, PlayerControl* target, bool animate, MethodInfo* method); @@ -44,7 +44,7 @@ void dGameObject_SetActive(GameObject* __this, bool value, MethodInfo* method); void dNoShadowBehaviour_LateUpdate(NoShadowBehaviour* __this, MethodInfo* method); void dFollowerCamera_Update(FollowerCamera* __this, MethodInfo* method); void dAirshipStatus_OnEnable (AirshipStatus* __this, MethodInfo* method); -float dAirshipStatus_CalculateLightRadius(AirshipStatus* __this, GameData_PlayerInfo* player, MethodInfo* method); +float dAirshipStatus_CalculateLightRadius(AirshipStatus* __this, NetworkedPlayerInfo* player, MethodInfo* method); void dFollowerCamera_Update(FollowerCamera* __this, MethodInfo* method); void dDoorBreakerGame_Start(DoorBreakerGame* __this, MethodInfo* method); void dDoorCardSwipeGame_Begin(DoorCardSwipeGame* __this, PlayerTask* playerTask, MethodInfo* method); @@ -61,8 +61,6 @@ void dChatController_Update(ChatController* __this, MethodInfo* method); void dInnerNetClient_EnqueueDisconnect(InnerNetClient* __this, DisconnectReasons__Enum reason, String* stringReason, MethodInfo* method); void dInnerNetClient_DisconnectInternal(InnerNetClient* __this, DisconnectReasons__Enum reason, String* stringReason, MethodInfo* method); void dRoleManager_SelectRoles(RoleManager* __this, MethodInfo * method); -//void dRoleManager_AssignRolesForTeam(List_1_GameData_PlayerInfo_* players, RoleOptionsData* opts, RoleTeamTypes__Enum team, int32_t teamMax, Nullable_1_RoleTypes_ defaultRole, MethodInfo* method); -//void dRoleManager_AssignRolesFromList(List_1_GameData_PlayerInfo_* players, int32_t teamMax, List_1_RoleTypes_* roleList, int32_t* rolesAssigned, MethodInfo* method); void dPlayerPhysics_FixedUpdate (PlayerPhysics* __this, MethodInfo* method); bool dSaveManager_GetPurchase(String* itemKey, String* bundleKey, MethodInfo* method); void dPlayerControl_TurnOnProtection(PlayerControl* __this, bool visible, int32_t colorId, int32_t guardianPlayerId, MethodInfo* method); diff --git a/user/utility.cpp b/user/utility.cpp index 5290f0c8..2926f3c6 100644 --- a/user/utility.cpp +++ b/user/utility.cpp @@ -137,8 +137,8 @@ PlayerSelection::PlayerSelection(const PlayerControl* playerControl) { } } -PlayerSelection::PlayerSelection(GameData_PlayerInfo* playerData) { - new (this)PlayerSelection(app::GameData_PlayerInfo_get_Object(playerData, nullptr)); +PlayerSelection::PlayerSelection(NetworkedPlayerInfo* playerData) { + new (this)PlayerSelection(app::NetworkedPlayerInfo_get_Object(playerData, nullptr)); } PlayerSelection::PlayerSelection(const PlayerSelection::Result& result) { @@ -209,7 +209,7 @@ std::optional PlayerSelection::get_PlayerControl() const { return std::nullopt; } -std::optional PlayerSelection::get_PlayerData() const +std::optional PlayerSelection::get_PlayerData() const { if (auto data = GetPlayerData(this->get_PlayerControl().value_or(nullptr)); data != nullptr) { @@ -265,12 +265,12 @@ bool IsColorBlindMode() { return false; } -GameData_PlayerInfo* GetPlayerData(PlayerControl* player) { +NetworkedPlayerInfo* GetPlayerData(PlayerControl* player) { if (player) return app::PlayerControl_get_Data(player, NULL); return NULL; } -GameData_PlayerInfo* GetPlayerDataById(Game::PlayerId id) { +NetworkedPlayerInfo* GetPlayerDataById(Game::PlayerId id) { return app::GameData_GetPlayerById((*Game::pGameData), id, NULL); } @@ -302,7 +302,7 @@ il2cpp::List GetAllPlayerControl() { return *Game::pAllPlayerControls; } -il2cpp::List GetAllPlayerData() { +il2cpp::List GetAllPlayerData() { return (*Game::pGameData)->fields.AllPlayers; } @@ -472,7 +472,7 @@ SystemTypes__Enum GetSystemTypes(const Vector2& vector) { return SystemTypes__Enum::Outside; } -std::optional GetEventPlayer(GameData_PlayerInfo* playerInfo) +std::optional GetEventPlayer(NetworkedPlayerInfo* playerInfo) { if (!playerInfo) return std::nullopt; return EVENT_PLAYER(playerInfo); @@ -480,16 +480,16 @@ std::optional GetEventPlayer(GameData_PlayerInfo* playerInfo) std::optional GetEventPlayerControl(PlayerControl* player) { - GameData_PlayerInfo* playerInfo = GetPlayerData(player); + auto playerInfo = GetPlayerData(player); if (!playerInfo) return std::nullopt; return EVENT_PLAYER(playerInfo); } -std::optional GetTargetPosition(GameData_PlayerInfo* playerInfo) +std::optional GetTargetPosition(NetworkedPlayerInfo* playerInfo) { if (!playerInfo) return std::nullopt; - auto object = GameData_PlayerInfo_get_Object(playerInfo, nullptr); + auto object = NetworkedPlayerInfo_get_Object(playerInfo, nullptr); if (!object) { // Likely disconnected player. if (playerInfo->fields.Disconnected != true) @@ -572,10 +572,10 @@ std::string ToString(__maybenull PlayerControl* player) { return ""; } -std::string ToString(__maybenull GameData_PlayerInfo* data) { +std::string ToString(__maybenull NetworkedPlayerInfo* data) { if (data) { if (const auto outfit = GetPlayerOutfit(data)) - return std::format("<#{} {}>", +data->fields.PlayerId, convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr))); + return std::format("<#{} {}>", +data->fields.PlayerId, convert_from_string(outfit->fields.PlayerName)); return std::format("<#{}>", +data->fields.PlayerId); } return ""; @@ -600,12 +600,12 @@ std::string GetGitBranch() return "unavailable"; } -void ImpersonateName(__maybenull GameData_PlayerInfo* data) +void ImpersonateName(__maybenull NetworkedPlayerInfo* data) { if (!data) return; - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(data); + auto outfit = GetPlayerOutfit(data); if (!(IsInGame() || IsInLobby() || outfit)) return; - const auto& playerName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + const auto& playerName = convert_from_string(outfit->fields.PlayerName); if (playerName.length() < 10) { if (IsInGame()) State.rpcQueue.push(new RpcSetName(playerName + " ")); @@ -634,7 +634,7 @@ Game::ColorId GetRandomColorId() bool colorAvailable = true; for (PlayerControl* player : players) { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(GetPlayerData(player)); + auto outfit = GetPlayerOutfit(GetPlayerData(player)); if (outfit == NULL) continue; if (i == outfit->fields.ColorId) { @@ -658,10 +658,10 @@ Game::ColorId GetRandomColorId() void SaveOriginalAppearance() { - app::GameData_PlayerOutfit* outfit = GetPlayerOutfit(GetPlayerData(*Game::pLocalPlayer)); + auto outfit = GetPlayerOutfit(GetPlayerData(*Game::pLocalPlayer)); if (outfit == NULL) return; LOG_DEBUG("Set appearance values to current player"); - State.originalName = convert_from_string(GameData_PlayerOutfit_get_PlayerName(outfit, nullptr)); + State.originalName = convert_from_string(outfit->fields.PlayerName); State.originalSkin = outfit->fields.SkinId; State.originalHat = outfit->fields.HatId; State.originalPet = outfit->fields.PetId; @@ -682,19 +682,19 @@ void ResetOriginalAppearance() State.originalNamePlate = nullptr; } -GameData_PlayerOutfit* GetPlayerOutfit(GameData_PlayerInfo* player, bool includeShapeshifted /* = false */) { +NetworkedPlayerInfo_PlayerOutfit* GetPlayerOutfit(NetworkedPlayerInfo* player, bool includeShapeshifted /* = false */) { if (!player) return nullptr; const il2cpp::Dictionary dic(player->fields.Outfits); if (includeShapeshifted) { auto playerOutfit = dic[PlayerOutfitType__Enum::Shapeshifted]; - if (playerOutfit && !convert_from_string(GameData_PlayerOutfit_get_PlayerName(playerOutfit, nullptr)).empty()) { + if (playerOutfit && !convert_from_string(playerOutfit->fields.PlayerName).empty()) { return playerOutfit; } } return dic[PlayerOutfitType__Enum::Default]; } -bool PlayerIsImpostor(GameData_PlayerInfo* player) { +bool PlayerIsImpostor(NetworkedPlayerInfo* player) { if (player->fields.Role == nullptr) return false; @@ -716,11 +716,14 @@ Color GetRoleColor(RoleBehaviour* roleBehaviour) { case RoleTypes__Enum::Engineer: case RoleTypes__Enum::GuardianAngel: case RoleTypes__Enum::Scientist: + case RoleTypes__Enum::Noisemaker: + case RoleTypes__Enum::Tracker: c = Palette__TypeInfo->static_fields->CrewmateBlue; break; case RoleTypes__Enum::Impostor: case RoleTypes__Enum::Shapeshifter: case RoleTypes__Enum::ImpostorGhost: + case RoleTypes__Enum::Phantom: c = Palette__TypeInfo->static_fields->ImpostorRed; break; } @@ -747,6 +750,12 @@ std::string GetRoleName(RoleBehaviour* roleBehaviour, bool abbreviated /* = fals case RoleTypes__Enum::Crewmate: case RoleTypes__Enum::CrewmateGhost: return (abbreviated ? "Crew" : "Crewmate"); + case RoleTypes__Enum::Noisemaker: + return (abbreviated ? "Noisemaker" : "Noisemaker"); + case RoleTypes__Enum::Phantom: + return (abbreviated ? "Phantom" : "Phantom"); + case RoleTypes__Enum::Tracker: + return (abbreviated ? "Tracker" : "Tracker"); default: return (abbreviated ? "Unk" : "Unknown"); } diff --git a/user/utility.h b/user/utility.h index 33a8929f..4c0e92db 100644 --- a/user/utility.h +++ b/user/utility.h @@ -97,7 +97,7 @@ class PlayerSelection { private: friend class PlayerSelection; PlayerControl* _playerControl; - GameData_PlayerInfo* _playerData; + NetworkedPlayerInfo* _playerData; bool _has_value; constexpr Result() noexcept { @@ -106,7 +106,7 @@ class PlayerSelection { _has_value = false; } - constexpr Result(_Notnull_ PlayerControl* pc, _Notnull_ GameData_PlayerInfo* data) { + constexpr Result(_Notnull_ PlayerControl* pc, _Notnull_ NetworkedPlayerInfo* data) { _playerControl = pc; _playerData = data; _has_value = true; @@ -116,7 +116,7 @@ class PlayerSelection { public: PlayerSelection() noexcept; explicit PlayerSelection(const PlayerControl* playerControl); - explicit PlayerSelection(GameData_PlayerInfo* playerData); + explicit PlayerSelection(NetworkedPlayerInfo* playerData); PlayerSelection(const PlayerSelection::Result& result); PlayerSelection::Result validate(); @@ -142,7 +142,7 @@ class PlayerSelection { return validate().has_value(); } /*[[deprecated]]*/ std::optional get_PlayerControl() const; - /*[[deprecated]]*/ std::optional get_PlayerData() const; + /*[[deprecated]]*/ std::optional get_PlayerData() const; }; int randi(int lo, int hi); @@ -155,15 +155,15 @@ bool IsInMultiplayerGame(); bool IsColorBlindMode(); int GetMaxImposterAmount(int playerAmount); int GenerateRandomNumber(int min, int max); -GameData_PlayerInfo* GetPlayerData(PlayerControl* player); +NetworkedPlayerInfo* GetPlayerData(PlayerControl* player); Vector2 GetTrueAdjustedPosition(PlayerControl* player); -GameData_PlayerInfo* GetPlayerDataById(Game::PlayerId id); +NetworkedPlayerInfo* GetPlayerDataById(Game::PlayerId id); PlayerControl* GetPlayerControlById(Game::PlayerId id); // MushroomWallDoor or PlainDoor OpenableDoor* GetOpenableDoorByRoom(SystemTypes__Enum room); il2cpp::Array GetAllOpenableDoors(); il2cpp::List GetAllPlayerControl(); -il2cpp::List GetAllPlayerData(); +il2cpp::List GetAllPlayerData(); il2cpp::Array GetAllDeadBodies(); il2cpp::List GetPlayerTasks(PlayerControl* player); std::vector GetNormalPlayerTasks(PlayerControl* player); @@ -178,9 +178,9 @@ std::string getGameVersion(); SystemTypes__Enum GetSystemTypes(const Vector2& vector); // TO-DO: // some C++ wizardry to allow overloading on pointer types w/ different base type (then we can rename both to just GetEventPlayer) -std::optional GetEventPlayer(GameData_PlayerInfo* playerInfo); +std::optional GetEventPlayer(NetworkedPlayerInfo* playerInfo); std::optional GetEventPlayerControl(PlayerControl* player); -std::optional GetTargetPosition(GameData_PlayerInfo* playerInfo); +std::optional GetTargetPosition(NetworkedPlayerInfo* playerInfo); il2cpp::Array GetAllCameras(); il2cpp::List GetAllClients(); Vector2 GetSpawnLocation(Game::PlayerId playerId, int numPlayer, bool initialSpawn); @@ -190,15 +190,15 @@ bool Equals(const Vector2& vec1, const Vector2& vec2); std::string ToString(Object* object); std::string ToString(Game::PlayerId id); std::string ToString(__maybenull PlayerControl* player); -std::string ToString(__maybenull GameData_PlayerInfo* data); +std::string ToString(__maybenull NetworkedPlayerInfo* data); std::string GetGitCommit(); std::string GetGitBranch(); -void ImpersonateName(__maybenull GameData_PlayerInfo* data); +void ImpersonateName(__maybenull NetworkedPlayerInfo* data); Game::ColorId GetRandomColorId(); void SaveOriginalAppearance(); void ResetOriginalAppearance(); -bool PlayerIsImpostor(GameData_PlayerInfo* player); -GameData_PlayerOutfit* GetPlayerOutfit(GameData_PlayerInfo* player, bool includeShapeshifted = false); +bool PlayerIsImpostor(NetworkedPlayerInfo* player); +NetworkedPlayerInfo_PlayerOutfit* GetPlayerOutfit(NetworkedPlayerInfo* player, bool includeShapeshifted = false); Color GetRoleColor(RoleBehaviour* roleBehaviour); std::string GetRoleName(RoleBehaviour* roleBehaviour, bool abbreviated = false); RoleTypes__Enum GetRoleTypesEnum(RoleType role);