Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
You are viewing a potentially older version of this package.
View all versions.
TwitchChatAPI
Add Twitch chat integration to your Lethal Company mods! Subscribe to events like Messages, Cheers, Subs, and Raids. No authentication required.
| Date uploaded | a year ago |
| Version | 1.1.0 |
| Download link | Zehs-TwitchChatAPI-1.1.0.zip |
| Downloads | 46581 |
| Dependency string | Zehs-TwitchChatAPI-1.1.0 |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
TwitchChatAPI
Add Twitch chat integration to your Lethal Company mods! Subscribe to events like Messages, Cheers, Subs, and Raids. No authentication required.
This mod is fully client-side.
API Usage
Click to Expand
API
https://github.com/ZehsTeam/Lethal-Company-TwitchChatAPI/blob/main/TwitchChatAPI/API.cs
namespace com.github.zehsteam.TwitchChatAPI;
public static class API
{
public static ConnectionState ConnectionState { get; }
public static event Action OnConnect;
public static event Action OnDisconnect;
public static event Action<TwitchMessage> OnMessage;
public static event Action<TwitchCheerEvent> OnCheer;
public static event Action<TwitchSubEvent> OnSub;
public static event Action<TwitchRaidEvent> OnRaid;
public static event Action<TwitchRoomState> OnRoomStateUpdate;
public static IReadOnlyCollection<TwitchUser> Users { get; }
public static bool TryGetUserByUsername(string username, out TwitchUser twitchUser);
public static bool TryGetUserByUserId(string userId, out TwitchUser twitchUser);
public static TwitchUser[] GetUsersSeenWithin(TimeSpan timeSpan);
}
TwitchUser
TwitchMessage
TwitchEvents (Cheer, Sub, Raid)
Example
using com.github.zehsteam.TwitchChatAPI;
using com.github.zehsteam.TwitchChatAPI.Enums;
using com.github.zehsteam.TwitchChatAPI.Objects;
using UnityEngine;
public class TwitchChatExample : MonoBehaviour
{
private void OnEnable()
{
// Subscribe to Twitch events
API.OnMessage += HandleMessage;
API.OnCheer += HandleCheer;
API.OnSub += HandleSub;
API.OnRaid += HandleRaid;
}
private void OnDisable()
{
// Unsubscribe to avoid memory leaks
API.OnMessage -= HandleMessage;
API.OnCheer -= HandleCheer;
API.OnSub -= HandleSub;
API.OnRaid -= HandleRaid;
}
private void HandleMessage(TwitchMessage message)
{
Debug.Log($"[{message.User.DisplayName}]: {message.Message}");
}
private void HandleCheer(TwitchCheerEvent cheer)
{
Debug.Log($"{cheer.User.DisplayName} cheered {cheer.CheerAmount} bits!");
}
private void HandleSub(TwitchSubEvent sub)
{
//...
}
private void HandleRaid(TwitchRaidEvent raid)
{
Debug.Log($"Raid incoming! {raid.User.DisplayName} is raiding with {raid.ViewerCount} viewers!");
}
}
Developer Contact
Report bugs, suggest features, or provide feedback:
- GitHub Issues Page: TwitchChatAPI
| Discord Server | Forum | Post |
|---|---|---|
| Lethal Company Modding | #mod-releases |
TwitchChatAPI |
| Unofficial Lethal Company Community | #mod-releases |
TwitchChatAPI |
- Email: [email protected]
- Twitch: CritHaxXoG
- YouTube: Zehs
CHANGELOG
v2.0.0
- Changed root namespace from
com.github.zehsteam.TwitchChatAPItoTwitchChatAPI. - Changed plugin guid from
com.github.zehsteam.TwitchChatAPItoTwitchChatAPI. - Removed all references to Lethal Company to make this mod work for other games.
- Renamed
SubTypetoTypeinTwitchSubEvent. - Removed
IsPrimebool fromTwitchSubEventand addedPrimeoption to theSubTierenum. - Added
Channelstring to the API. - Added
OnConnectionStateChangedevent to the API. - Added
Connect,Connect(string channel), andDisconnect()methods to the API. - Added extension methods to
TwitchUserfor getting the DisplayName with color as a rich text string.
v1.1.0
- Updated
TwitchSubEventclass.- Changed
Tierfrom an int to an enum. - Renamed
MonthstoCumulativeMonths.
- Changed
- Updated
TwitchUserclass.- Added
Usernameproperty.
- Added
- Updated
API.- Added
public static IReadOnlyCollection<TwitchUser> Users { get; }property. - Added
public static bool TryGetUserByUsername(string username, out TwitchUser twitchUser);method. - Added
public static bool TryGetUserByUserId(string userId, out TwitchUser twitchUser);method. - Added
public static TwitchUser[] GetUsersSeenWithin(TimeSpan timeSpan);method.
- Added
v1.0.1
- API events are now invoked on the main thread.
- Bug fixes and improvements.
v1.0.0
- Initial release.