From e9ea621b93fbb58d9edfca8375918791637bbd52 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 30 Dec 2020 20:59:04 +0800 Subject: +init --- Client/Assembly-CSharp/FindGameButton.cs | 63 ++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Client/Assembly-CSharp/FindGameButton.cs (limited to 'Client/Assembly-CSharp/FindGameButton.cs') diff --git a/Client/Assembly-CSharp/FindGameButton.cs b/Client/Assembly-CSharp/FindGameButton.cs new file mode 100644 index 0000000..4b3eef9 --- /dev/null +++ b/Client/Assembly-CSharp/FindGameButton.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections; +using InnerNet; +using PowerTools; +using UnityEngine; +using UnityEngine.SceneManagement; + +public class FindGameButton : MonoBehaviour, IConnectButton +{ + public SpriteAnim connectIcon; + + public AnimationClip connectClip; + + public void OnClick() + { + if (NameTextBehaviour.Instance.ShakeIfInvalid()) + { + return; + } + if (StatsManager.Instance.AmBanned) + { + AmongUsClient.Instance.LastDisconnectReason = DisconnectReasons.IntentionalLeaving; + DestroyableSingleton.Instance.Show(); + return; + } + if (!DestroyableSingleton.Instance.Connecting(this)) + { + return; + } + AmongUsClient.Instance.GameMode = GameModes.OnlineGame; + AmongUsClient.Instance.MainMenuScene = "MMOnline"; + base.StartCoroutine(this.ConnectForFindGame()); + } + + private IEnumerator ConnectForFindGame() + { + AmongUsClient.Instance.SetEndpoint(DestroyableSingleton.Instance.OnlineNetAddress, 22023); + AmongUsClient.Instance.OnlineScene = "OnlineGame"; + AmongUsClient.Instance.mode = MatchMakerModes.Client; + yield return AmongUsClient.Instance.CoConnect(); + if (AmongUsClient.Instance.LastDisconnectReason != DisconnectReasons.ExitGame) + { + DestroyableSingleton.Instance.NotConnecting(); + } + else + { + AmongUsClient.Instance.HostId = AmongUsClient.Instance.ClientId; + SceneManager.LoadScene("FindAGame"); + } + yield break; + } + + public void StartIcon() + { + this.connectIcon.Play(this.connectClip, 1f); + } + + public void StopIcon() + { + this.connectIcon.Stop(); + this.connectIcon.GetComponent().sprite = null; + } +} -- cgit v1.1-26-g67d0