Skip to content

Commit bfb8a96

Browse files
committed
Ensure the ChatBoxManager respects the blacklist setting
1 parent f68528a commit bfb8a96

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

VRCOSC.Game/App/AppManager.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ private void initialiseModuleManager()
121121

122122
private void initialiseChatBoxManager()
123123
{
124-
ChatBoxManager.Initialise(storage, this, OSCClient, configManager.GetBindable<int>(VRCOSCSetting.ChatBoxTimeSpan));
124+
ChatBoxManager.Initialise(storage, this, configManager, OSCClient, configManager.GetBindable<int>(VRCOSCSetting.ChatBoxTimeSpan));
125125
ChatBoxManager.Load();
126126
}
127127

VRCOSC.Game/Managers/ChatBoxManager.cs

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
using VRCOSC.Game.ChatBox;
1313
using VRCOSC.Game.ChatBox.Clips;
1414
using VRCOSC.Game.ChatBox.Serialisation.V1;
15+
using VRCOSC.Game.Config;
1516
using VRCOSC.Game.OSC.VRChat;
1617
using VRCOSC.Game.Serialisation;
1718
using VRCOSC.Game.Util;
@@ -41,6 +42,7 @@ public bool SendEnabled
4142
public readonly Dictionary<string, Dictionary<string, ClipEventMetadata>> EventMetadata = new();
4243
public Bindable<int> SendDelay { get; private set; } = null!;
4344
private VRChatOscClient oscClient = null!;
45+
private VRCOSCConfigManager configManager = null!;
4446
private SerialisationManager serialisationManager = null!;
4547

4648
public readonly Dictionary<(string, string), string?> VariableValues = new();
@@ -61,10 +63,11 @@ public bool SendEnabled
6163
private DateTimeOffset nextValidTime;
6264
private bool isClear;
6365

64-
public void Initialise(Storage storage, AppManager appManager, VRChatOscClient oscClient, Bindable<int> sendDelay)
66+
public void Initialise(Storage storage, AppManager appManager, VRCOSCConfigManager configManager, VRChatOscClient oscClient, Bindable<int> sendDelay)
6567
{
6668
this.appManager = appManager;
6769
this.oscClient = oscClient;
70+
this.configManager = configManager;
6871
SendDelay = sendDelay;
6972
serialisationManager = new SerialisationManager();
7073
serialisationManager.RegisterSerialiser(1, new TimelineSerialiser(storage, appManager));
@@ -147,15 +150,20 @@ public Clip CreateClip()
147150

148151
public void Update()
149152
{
150-
if (sendAllowed && !CurrentWorldExtractor.IsCurrentWorldBlacklisted)
153+
if (!sendAllowed) return;
154+
155+
if (CurrentWorldExtractor.IsCurrentWorldBlacklisted && configManager.Get<bool>(VRCOSCSetting.ChatboxWorldBlock))
151156
{
152-
appManager.ModuleManager.ChatBoxUpdate();
157+
if (!isClear) Clear();
158+
return;
159+
}
153160

154-
Clips.ForEach(clip => clip.Update());
155-
TriggeredEvents.Clear();
161+
appManager.ModuleManager.ChatBoxUpdate();
156162

157-
evaluateClips();
158-
}
163+
Clips.ForEach(clip => clip.Update());
164+
TriggeredEvents.Clear();
165+
166+
evaluateClips();
159167
}
160168

161169
public void Teardown()

0 commit comments

Comments
 (0)