Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
bfba6943ea | |||
d9af0db860 | |||
54f7a8dca6 |
@ -47,6 +47,7 @@ namespace VRChatboxApp {
|
|||||||
private string pendingMessage;
|
private string pendingMessage;
|
||||||
//private string lastMessage;
|
//private string lastMessage;
|
||||||
//private DateTime lastMessageTime;
|
//private DateTime lastMessageTime;
|
||||||
|
public bool soundOnNextSend = false;
|
||||||
|
|
||||||
public VRChatboxSender(string ip_address, int dstport, int srcport) {
|
public VRChatboxSender(string ip_address, int dstport, int srcport) {
|
||||||
osc = new OscSender(System.Net.IPAddress.Parse(ip_address), srcport, dstport);
|
osc = new OscSender(System.Net.IPAddress.Parse(ip_address), srcport, dstport);
|
||||||
@ -68,7 +69,8 @@ namespace VRChatboxApp {
|
|||||||
} else {
|
} else {
|
||||||
Console.WriteLine("send: " + message);
|
Console.WriteLine("send: " + message);
|
||||||
OnSend(this, new EventArgs<string>(message));
|
OnSend(this, new EventArgs<string>(message));
|
||||||
osc.Send(new OscMessage("/chatbox/input", message, true));
|
osc.Send(new OscMessage("/chatbox/input", message, true, soundOnNextSend));
|
||||||
|
soundOnNextSend = false;
|
||||||
quota--;
|
quota--;
|
||||||
if (quotaResetTimer == null) {
|
if (quotaResetTimer == null) {
|
||||||
quotaResetTimer = new System.Timers.Timer(QUOTA_TIME);
|
quotaResetTimer = new System.Timers.Timer(QUOTA_TIME);
|
||||||
@ -140,7 +142,10 @@ namespace VRChatboxApp {
|
|||||||
public static void SendChatMessage(string message) {
|
public static void SendChatMessage(string message) {
|
||||||
if (message.Length > 144) message = message.Substring(0, 144);
|
if (message.Length > 144) message = message.Substring(0, 144);
|
||||||
if (String.IsNullOrEmpty(message)) chats.Clear();
|
if (String.IsNullOrEmpty(message)) chats.Clear();
|
||||||
else chats.Add(message);
|
else {
|
||||||
|
chats.Add(message);
|
||||||
|
chatbox.soundOnNextSend = true;
|
||||||
|
}
|
||||||
RenderChatbox();
|
RenderChatbox();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
|
|||||||
[assembly: AssemblyConfiguration("")]
|
[assembly: AssemblyConfiguration("")]
|
||||||
[assembly: AssemblyCompany("lamp")]
|
[assembly: AssemblyCompany("lamp")]
|
||||||
[assembly: AssemblyProduct("VRChatboxApp")]
|
[assembly: AssemblyProduct("VRChatboxApp")]
|
||||||
[assembly: AssemblyCopyright("Copyright © 2022")]
|
[assembly: AssemblyCopyright("Copyright © 2024")]
|
||||||
[assembly: AssemblyTrademark("")]
|
[assembly: AssemblyTrademark("")]
|
||||||
[assembly: AssemblyCulture("")]
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||||||
// You can specify all the values or you can default the Build and Revision Numbers
|
// You can specify all the values or you can default the Build and Revision Numbers
|
||||||
// by using the '*' as shown below:
|
// by using the '*' as shown below:
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
[assembly: AssemblyVersion("1.1")]
|
[assembly: AssemblyVersion("1.2")]
|
||||||
[assembly: AssemblyFileVersion("1.1")]
|
[assembly: AssemblyFileVersion("1.2")]
|
||||||
|
@ -4,7 +4,6 @@
|
|||||||
- Shows the active application if it's not VRChat (useful when chilling on desktop while alt-tabbing to other things)
|
- Shows the active application if it's not VRChat (useful when chilling on desktop while alt-tabbing to other things)
|
||||||
- Input chat with external window
|
- Input chat with external window
|
||||||
- Allows you to **continue chatting on desktop after taking off your headset and loosing control of VRChat**
|
- Allows you to **continue chatting on desktop after taking off your headset and loosing control of VRChat**
|
||||||
- Alt-tabbing might be easier than finding the in-game input
|
|
||||||
- Chat persists until cleared
|
- Chat persists until cleared
|
||||||
- Chat messages are appended so you have some **chat history**
|
- Chat messages are appended so you have some **chat history**
|
||||||
- Able to update chatbox instantly while avoiding spam timeout
|
- Able to update chatbox instantly while avoiding spam timeout
|
||||||
@ -15,6 +14,7 @@ Download latest build from [releases](https://gitea.moe/lamp/VRChatboxApp/releas
|
|||||||
|
|
||||||
### Notes
|
### Notes
|
||||||
|
|
||||||
|
- If it doesn't work, run it as administrator, or add your user to the "Performance Log Users" group: open "Computer Management", find your user, type in this exact group name, then log out and back in.
|
||||||
- This app uses VRChat OSC; make sure to [enable it](https://docs.vrchat.com/docs/osc-overview#enabling-it).
|
- This app uses VRChat OSC; make sure to [enable it](https://docs.vrchat.com/docs/osc-overview#enabling-it).
|
||||||
- You cannot use in-game chatbox input, hence the external window.
|
- You cannot use in-game chatbox input, hence the external window.
|
||||||
- Anti-spam-timeout isn't foolproof apparently; you might trigger it if you spam chat input of this app.
|
- Anti-spam-timeout isn't foolproof apparently; you might trigger it if you spam chat input of this app.
|
||||||
|
Loading…
Reference in New Issue
Block a user