Mate-Engine/Assets/DiscordRPC/Runtime/Control/MessageEvents.cs
shinyflvre 39a7b41d7d 1.4.0 Pre Release
**Changelog 1.4.0 – THE LOCAL AI Update**

**Disclaimer:**
The AI runs *entirely locally* and is designed to be environmentally and ethically responsible.
- It does **not** harm nature or exploit any artists.
- It has only **1.5 billion parameters**, making it a **very small model** by modern standards.
- It consumes as much GPU energy as watching a **1440p 60fps YouTube video**.
- It was **not trained on artist data**; it uses personal input and public Wikipedia datasets.
- It has its own personality, and I ensured it adheres to **ethical standards**.

---

### New Features

- Added **Qwen 2.5 1.5B LLM** to MateEngine!
  - Press **Middle Mouse Button** while hovering over the pet to open the chat window.
  - Runs fully locally on your GPU — no internet connection required.
  - Only uses GPU while processing prompts.
  - Note: This is a **lightweight model** and won’t handle complex tasks or coding. It’s just a small, fun feature!

- Added **Resize Button** – Quickly adjust app size for 1080p, 1440p, and 4K monitors.

- Added **VRM Information Panel** – Displays polygon count, VRM version, and bone status:
  - **Perfect** – Properly exported model.
  - **Failure** – Model has export issues; animations may break.

- Added **Options Submenu**.
- Added **Volume Sliders** – Independently control pet, effects, and menu volume.
- Added **Graphics Settings**.
- Added **Dance Trails** – Glowing effects on the pet’s hands during dance. Toggle on/off as desired.
- Improved **Music Source Selector** – You can now whitelist or add custom audio sources for dancing.
- Added **MateEngine Version Info** – View the current app version from the menu.
- Menu can now be opened with **M** key or **Right-Click**.
- Added full support for **VRM 1.x** and **VRM 0.x** models.
- Introduced **VRM Validator Tool** in Unity Editor – Great for content creators.

---

### Improvements & Fixes

- Major **Performance Optimizations**.
- Fixed a **GC Error** that could appear after 6–12 hours of continuous use.
- Improved **Hand Tracking** – Reduced stuttering in some animations.
- Added **Discord Rich Presence** integration.
- Added **Glowing Halo** for Steam users as exclusive DLC!
2025-04-08 19:16:19 +02:00

75 lines
No EOL
3.2 KiB
C#

using DiscordRPC;
using DiscordRPC.Message;
using System;
using UnityEngine;
using UnityEngine.Events;
namespace Lachee.Discord.Control
{
[Serializable]
public sealed class MessageEvents
{
[Serializable]
public sealed class ReadyMessageEvent : UnityEvent<ReadyMessage> { }
[Serializable]
public sealed class CloseMessageEvent : UnityEvent<CloseMessage> { }
[Serializable]
public sealed class ErrorMessageEvent : UnityEvent<ErrorMessage> { }
[Serializable]
public sealed class PresenceMessageEvent : UnityEvent<PresenceMessage> { }
[Serializable]
public sealed class SubscribeMessageEvent : UnityEvent<SubscribeMessage> { }
[Serializable]
public sealed class UnsubscribeMessageEvent : UnityEvent<UnsubscribeMessage> { }
[Serializable]
public sealed class JoinMessageEvent : UnityEvent<JoinMessage> { }
[Serializable]
public sealed class SpectateMessageEvent : UnityEvent<SpectateMessage> { }
[Serializable]
public sealed class JoinRequestMessageEvent : UnityEvent<JoinRequestMessage> { }
[Serializable]
public sealed class ConnectionEstablishedMessageEvent : UnityEvent<ConnectionEstablishedMessage> { }
[Serializable]
public sealed class ConnectionFailedMessageEvent : UnityEvent<ConnectionFailedMessage> { }
public ReadyMessageEvent OnReady = new ReadyMessageEvent();
public CloseMessageEvent OnClose = new CloseMessageEvent();
public ErrorMessageEvent OnError = new ErrorMessageEvent();
public PresenceMessageEvent OnPresenceUpdate = new PresenceMessageEvent();
public SubscribeMessageEvent OnSubscribe = new SubscribeMessageEvent();
public UnsubscribeMessageEvent OnUnsubscribe = new UnsubscribeMessageEvent();
public JoinMessageEvent OnJoin = new JoinMessageEvent();
public SpectateMessageEvent OnSpectate = new SpectateMessageEvent();
public JoinRequestMessageEvent OnJoinRequest = new JoinRequestMessageEvent();
public ConnectionEstablishedMessageEvent OnConnectionEstablished = new ConnectionEstablishedMessageEvent();
public ConnectionFailedMessageEvent OnConnectionFailed = new ConnectionFailedMessageEvent();
public void RegisterEvents(DiscordRpcClient client)
{
client.OnReady += (s, args) => OnReady.Invoke(args);
client.OnClose += (s, args) => OnClose.Invoke(args);
client.OnError += (s, args) => OnError.Invoke(args);
client.OnPresenceUpdate += (s, args) => OnPresenceUpdate.Invoke(args);
client.OnSubscribe += (s, args) => OnSubscribe.Invoke(args);
client.OnUnsubscribe += (s, args) => OnUnsubscribe.Invoke(args);
client.OnJoin += (s, args) => OnJoin.Invoke(args);
client.OnSpectate += (s, args) => OnSpectate.Invoke(args);
client.OnJoinRequested += (s, args) => OnJoinRequest.Invoke(args);
client.OnConnectionEstablished += (s, args) => OnConnectionEstablished.Invoke(args);
client.OnConnectionFailed += (s, args) => OnConnectionFailed.Invoke(args);
}
}
}