Zehs-TwitchChatAPI icon

TwitchChatAPI

Add Twitch chat integration to your Lethal Company mods! Detect events like Messages, Cheers, Subs, and Raids! No authentication required.

Last updated 2 days ago
Total downloads 1294
Total rating 3 
Categories Mods Libraries Misc Client-side
Dependency string Zehs-TwitchChatAPI-1.0.0
Dependants 1 other package depends on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100

README

TwitchChatAPI

Add Twitch chat integration to your Lethal Company mods! Detect events like Messages, Cheers, Subs, and Raids! No authentication required.

This mod is fully client-side.

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;
}

TwitchUser

https://github.com/ZehsTeam/Lethal-Company-TwitchChatAPI/blob/main/TwitchChatAPI/Objects/TwitchUser.cs

TwitchMessage

https://github.com/ZehsTeam/Lethal-Company-TwitchChatAPI/blob/main/TwitchChatAPI/Objects/TwitchMessage.cs

TwitchEvents (Cheer, Sub, Raid)

https://github.com/ZehsTeam/Lethal-Company-TwitchChatAPI/blob/main/TwitchChatAPI/Objects/TwitchEvents.cs

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:

Discord Server Forum Post
Lethal Company Modding #mod-releases TwitchChatAPI
Unofficial Lethal Company Community #mod-releases TwitchChatAPI