diff --git a/horizontal-chat/script.js b/horizontal-chat/script.js index c2730a5..23ef007 100644 --- a/horizontal-chat/script.js +++ b/horizontal-chat/script.js @@ -75,6 +75,7 @@ const showPatreonMemberships = GetBooleanParam("showPatreonMemberships", true); const showKofiDonations = GetBooleanParam("showKofiDonations", true); const showTipeeeStreamDonations = GetBooleanParam("showTipeeeStreamDonations", true); const showFourthwallAlerts = GetBooleanParam("showFourthwallAlerts", true); +const skipFourthwallFreeOrders = GetBooleanParam("skipFourthwallFreeOrders", true); const furryMode = GetBooleanParam("furryMode", false); @@ -1198,6 +1199,10 @@ function FourthwallOrderPlaced(data) { const item = data.variants[0].name; const itemsOrdered = data.variants.length; + // Skip free orders if the user has chosen to do so + if (skipFourthwallFreeOrders && orderTotal == 0) + return; + let message = ""; // If there user did not provide a username, just say "Someone" diff --git a/horizontal-chat/settings/settings.json b/horizontal-chat/settings/settings.json index 7ecd4b6..a99b145 100644 --- a/horizontal-chat/settings/settings.json +++ b/horizontal-chat/settings/settings.json @@ -379,6 +379,15 @@ "defaultValue": true, "group": "Which donation messages do you want to see?" }, + { + "id": "skipFourthwallFreeOrders", + "label": "Skip Free Orders", + "description": "If enabled, free orders from Fourthwall will be skipped.", + "type": "checkbox", + "defaultValue": true, + "showIf": "showFourthwallAlerts", + "group": "Which donation messages do you want to see?" + }, { "id": "furryMode", "label": "Furry Mode", diff --git a/multichat-overlay/script.js b/multichat-overlay/script.js index 37f267d..b731db9 100644 --- a/multichat-overlay/script.js +++ b/multichat-overlay/script.js @@ -82,6 +82,7 @@ const showPatreonMemberships = GetBooleanParam("showPatreonMemberships", true); const showKofiDonations = GetBooleanParam("showKofiDonations", true); const showTipeeeStreamDonations = GetBooleanParam("showTipeeeStreamDonations", true); const showFourthwallAlerts = GetBooleanParam("showFourthwallAlerts", true); +const skipFourthwallFreeOrders = GetBooleanParam("skipFourthwallFreeOrders", true); const furryMode = GetBooleanParam("furryMode", false); @@ -2045,6 +2046,10 @@ function FourthwallOrderPlaced(data) { const itemImageUrl = data.variants[0].image; const fourthwallProductImage = ``; + // Skip free orders if the user has chosen to do so + if (skipFourthwallFreeOrders && orderTotal == 0) + return; + avatarDiv.innerHTML = fourthwallProductImage; let contents = ""; diff --git a/multichat-overlay/settings/settings.json b/multichat-overlay/settings/settings.json index 3c73b97..fee2d12 100644 --- a/multichat-overlay/settings/settings.json +++ b/multichat-overlay/settings/settings.json @@ -517,6 +517,15 @@ "defaultValue": true, "group": "Which donation messages do you want to see?" }, + { + "id": "skipFourthwallFreeOrders", + "label": "Skip Free Orders", + "description": "If enabled, free orders from Fourthwall will be skipped.", + "type": "checkbox", + "defaultValue": true, + "showIf": "showFourthwallAlerts", + "group": "Which donation messages do you want to see?" + }, { "id": "furryMode", "label": "Furry Mode", diff --git a/multistream-alerts/script.js b/multistream-alerts/script.js index 4d92bae..7638a4a 100644 --- a/multistream-alerts/script.js +++ b/multistream-alerts/script.js @@ -112,6 +112,7 @@ const showTipeeeStreamDonations = GetBooleanParam("showTipeeeStreamDonations", f const tipeeestreamDonationAction = urlParams.get("tipeeestreamDonationAction") || ""; const showFourthwallAlerts = GetBooleanParam("showFourthwallAlerts", false); const fourthwallAlertAction = urlParams.get("fourthwallAlertAction") || ""; +const skipFourthwallFreeOrders = GetBooleanParam("skipFourthwallFreeOrders", true); //////////////////// // HIDDEN OPTIONS // @@ -1124,6 +1125,10 @@ function FourthwallOrderPlaced(data) { const message = DecodeHTMLString(data.statmessageus); const itemImageUrl = data.variants[0].image; + // Skip free orders if the user has chosen to do so + if (skipFourthwallFreeOrders && orderTotal == 0) + return; + // If there user did not provide a username, just say "Someone" if (user == undefined) user = "Someone"; diff --git a/multistream-alerts/settings/settings.json b/multistream-alerts/settings/settings.json index 49bd7f9..ec19143 100644 --- a/multistream-alerts/settings/settings.json +++ b/multistream-alerts/settings/settings.json @@ -628,6 +628,15 @@ "showIf": "showFourthwallAlerts", "group": "Which donation alerts do you want to see?" }, + { + "id": "skipFourthwallFreeOrders", + "label": "Skip Free Orders", + "description": "If enabled, free orders from Fourthwall will be skipped.", + "type": "checkbox", + "defaultValue": true, + "showIf": "showFourthwallAlerts", + "group": "Which donation alerts do you want to see?" + }, { "id": "address", "label": "IP Address",