diff --git a/TwitchMod.cs b/TwitchMod.cs index e58aa9a..5665a70 100644 --- a/TwitchMod.cs +++ b/TwitchMod.cs @@ -24,7 +24,7 @@ public class TwitchMain : PolyTechMod public const string pluginName = "Twitch Mod"; - public const string pluginVerson = "1.0.0"; + public const string pluginVerson = "1.0.1"; public static ConfigDefinition modEnableDef = new ConfigDefinition(pluginName, "Enable/Disable Mod"); public static ConfigDefinition NameDef = new ConfigDefinition(pluginName, "Streamer Name"); @@ -235,7 +235,6 @@ private static void Postfix() { if (!CheckForCheating()) return; - if (LastName != mName.Value && !FindingID && !SendingBridge && !GettingLayout) { FindingID = true; @@ -378,13 +377,15 @@ private static void PushBridge(UnityEngine.AsyncOperation asyncOperation) Debug.Log("Sending bridge..."); - byte[] payloadBytes = BridgeSave.SerializeBinary(); + byte[] payloadBytes; + + string guid = "Bram2323IsTheBest!"; + + if (!BridgeJoints.m_JointDictionary.ContainsKey(guid)) BridgeJoints.CreateJoint(new Vector3(0, 0, -10000), guid); + else Debug.Log("Twitch detection node already present in bridge"); + payloadBytes = BridgeSave.SerializeBinary(); + BridgeJoints.FindByGuid(guid).Destroy(); - payloadBytes = payloadBytes.AddToArray(255); - payloadBytes = payloadBytes.AddToArray(255); - payloadBytes = payloadBytes.AddToArray(255); - payloadBytes = payloadBytes.AddToArray(255); - byte[] payloadCompressed = Utils.ZipPayload(payloadBytes); string payload_md5 = Utils.MD5HashFor(payloadCompressed); @@ -409,6 +410,8 @@ private static void PushBridge(UnityEngine.AsyncOperation asyncOperation) int twitch_bits_used = consumeReply.twitch_bits_used; if (!Utils.MD5HashesMatch(level_hash, Sandbox.m_CurrentLayoutHash)) { + SendingBridge = false; + GameUI.m_Instance.m_Status.Close(); return; } if (twitch_bits_used > 0) @@ -419,6 +422,8 @@ private static void PushBridge(UnityEngine.AsyncOperation asyncOperation) if (PolyTwitchSuggestions.SuggestionFromSameOwnerExists(id2, bridgeHash)) { PolyTwitchSuggestions.UpdateSuggestionTimeAndBits(id2, bridgeHash, twitch_bits_used); + SendingBridge = false; + GameUI.m_Instance.m_Status.Close(); return; } int num = 0; diff --git a/TwitchMod.csproj b/TwitchMod.csproj index 60a2b00..c632be0 100644 --- a/TwitchMod.csproj +++ b/TwitchMod.csproj @@ -9,7 +9,7 @@ ..\..\GravityMod\Libs\0Harmony.dll - ..\..\GravityMod\Libs\Assembly-CSharp.dll + ..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Poly Bridge 2\Poly Bridge 2_Data\Managed\Assembly-CSharp.dll ..\..\GravityMod\Libs\BepInEx.dll