diff options
author | chai <215380520@qq.com> | 2023-10-27 11:05:14 +0800 |
---|---|---|
committer | chai <215380520@qq.com> | 2023-10-27 11:05:14 +0800 |
commit | 766cdff5ffa72b65d7f106658d1603f47739b2ba (patch) | |
tree | 34d7799a94dfa9be182825577583c0fa6dc935f7 /GameCode/TwitchIrcExample.cs |
+ init
Diffstat (limited to 'GameCode/TwitchIrcExample.cs')
-rw-r--r-- | GameCode/TwitchIrcExample.cs | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/GameCode/TwitchIrcExample.cs b/GameCode/TwitchIrcExample.cs new file mode 100644 index 0000000..dc08227 --- /dev/null +++ b/GameCode/TwitchIrcExample.cs @@ -0,0 +1,88 @@ +using System; +using Irc; +using UnityEngine; +using UnityEngine.UI; + +public class TwitchIrcExample : MonoBehaviour +{ + public InputField UsernameText; + + public InputField TokenText; + + public InputField ChannelText; + + public Text ChatText; + + public InputField MessageText; + + private void Start() + { + TwitchIrc instance = TwitchIrc.Instance; + instance.OnChannelMessage = (ChannelMessage)Delegate.Combine(instance.OnChannelMessage, new ChannelMessage(OnChannelMessage)); + TwitchIrc instance2 = TwitchIrc.Instance; + instance2.OnUserLeft = (UserLeft)Delegate.Combine(instance2.OnUserLeft, new UserLeft(OnUserLeft)); + TwitchIrc instance3 = TwitchIrc.Instance; + instance3.OnUserJoined = (UserJoined)Delegate.Combine(instance3.OnUserJoined, new UserJoined(OnUserJoined)); + TwitchIrc instance4 = TwitchIrc.Instance; + instance4.OnServerMessage = (ServerMessage)Delegate.Combine(instance4.OnServerMessage, new ServerMessage(OnServerMessage)); + TwitchIrc instance5 = TwitchIrc.Instance; + instance5.OnExceptionThrown = (ExceptionThrown)Delegate.Combine(instance5.OnExceptionThrown, new ExceptionThrown(OnExceptionThrown)); + } + + public void Connect() + { + TwitchIrc.Instance.Username = UsernameText.text; + TwitchIrc.Instance.OauthToken = TokenText.text; + TwitchIrc.Instance.Channel = ChannelText.text; + TwitchIrc.Instance.Connect(); + } + + public void MessageSend() + { + if (!string.IsNullOrEmpty(MessageText.text)) + { + TwitchIrc.Instance.Message(MessageText.text); + Text chatText = ChatText; + chatText.text = chatText.text + "<b>" + TwitchIrc.Instance.Username + "</b>: " + MessageText.text + "\n"; + MessageText.text = ""; + } + } + + public void GoUrl(string url) + { + Application.OpenURL(url); + } + + private void OnServerMessage(string message) + { + Text chatText = ChatText; + chatText.text = chatText.text + "<b>SERVER:</b> " + message + "\n"; + Debug.Log(message); + } + + private void OnChannelMessage(ChannelMessageEventArgs channelMessageArgs) + { + Text chatText = ChatText; + chatText.text = chatText.text + "<b>" + channelMessageArgs.From + ":</b> " + channelMessageArgs.Message + "\n"; + Debug.Log("MESSAGE: " + channelMessageArgs.From + ": " + channelMessageArgs.Message); + } + + private void OnUserJoined(UserJoinedEventArgs userJoinedArgs) + { + Text chatText = ChatText; + chatText.text = chatText.text + "<b>USER JOINED:</b> " + userJoinedArgs.User + "\n"; + Debug.Log("USER JOINED: " + userJoinedArgs.User); + } + + private void OnUserLeft(UserLeftEventArgs userLeftArgs) + { + Text chatText = ChatText; + chatText.text = chatText.text + "<b>USER JOINED:</b> " + userLeftArgs.User + "\n"; + Debug.Log("USER JOINED: " + userLeftArgs.User); + } + + private void OnExceptionThrown(Exception exeption) + { + Debug.Log(exeption); + } +} |