From 6536b36514b76011967c34b9a85336388dc10a96 Mon Sep 17 00:00:00 2001 From: Layne Date: Wed, 16 Mar 2022 15:23:39 -0400 Subject: [PATCH] optional sounds notif/resp --- public/ui-config.json.example | 4 ++++ src/api/nitro/room/widgets/handlers/RoomWidgetChatHandler.ts | 4 +++- src/api/notification/NotificationUtilities.ts | 4 +++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/public/ui-config.json.example b/public/ui-config.json.example index 5463c31e..3410db79 100644 --- a/public/ui-config.json.example +++ b/public/ui-config.json.example @@ -59,6 +59,10 @@ "catalog.buy": "habbo_club", "catalog.gifts": "club_gifts" }, + "respect.options": { + "enabled": false, + "sound": "sound_respect_received" + }, "currency.display.number.short": false, "currency.asset.icon.url": "${images.url}/wallet/%type%.png", "catalog.asset.url": "${image.library.url}catalogue", diff --git a/src/api/nitro/room/widgets/handlers/RoomWidgetChatHandler.ts b/src/api/nitro/room/widgets/handlers/RoomWidgetChatHandler.ts index 53ca74f2..80e20be9 100644 --- a/src/api/nitro/room/widgets/handlers/RoomWidgetChatHandler.ts +++ b/src/api/nitro/room/widgets/handlers/RoomWidgetChatHandler.ts @@ -1,5 +1,5 @@ import { AvatarFigurePartType, AvatarScaleType, AvatarSetType, IAvatarImageListener, INitroPoint, IVector3D, NitroEvent, NitroPoint, PetFigureData, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomSessionChatEvent, RoomWidgetEnum, SystemChatStyleEnum, TextureUtils, Vector3d } from '@nitrots/nitro-renderer'; -import { GetAvatarRenderManager, GetRoomEngine } from '../../../..'; +import { GetAvatarRenderManager, GetConfigurationManager, GetRoomEngine, PlaySound } from '../../../..'; import { LocalizeText } from '../../../../utils/LocalizeText'; import { RoomWidgetUpdateChatEvent, RoomWidgetUpdateEvent } from '../events'; import { RoomWidgetMessage } from '../messages'; @@ -64,6 +64,8 @@ export class RoomWidgetChatHandler extends RoomWidgetHandler implements IAvatarI { case RoomSessionChatEvent.CHAT_TYPE_RESPECT: text = LocalizeText('widgets.chatbubble.respect', [ 'username' ], [ username ]); + if(GetConfigurationManager().getValue('respect.options')['enabled']) + PlaySound(GetConfigurationManager().getValue('respect.options')['sound']) break; case RoomSessionChatEvent.CHAT_TYPE_PETRESPECT: text = LocalizeText('widget.chatbubble.petrespect', [ 'petname' ], [ username ]); diff --git a/src/api/notification/NotificationUtilities.ts b/src/api/notification/NotificationUtilities.ts index 45cc6311..067e7a1d 100644 --- a/src/api/notification/NotificationUtilities.ts +++ b/src/api/notification/NotificationUtilities.ts @@ -1,5 +1,5 @@ import { HabboWebTools, RoomEnterEffect } from '@nitrots/nitro-renderer'; -import { CreateLinkEvent, GetConfiguration, GetNitroInstance, LocalizeText } from '..'; +import { CreateLinkEvent, GetConfiguration, GetNitroInstance, LocalizeText, PlaySound } from '..'; import { NotificationAlertEvent, NotificationConfirmEvent } from '../../events'; import { NotificationBubbleEvent } from '../../events/notification-center/NotificationBubbleEvent'; import { DispatchUiEvent } from '../../hooks'; @@ -85,6 +85,8 @@ export class NotificationUtilities { this.simpleAlert(message, NotificationAlertType.EVENT, linkUrl, linkTitle, title, image); } + + if(options.get('sound')) PlaySound(options.get('sound')); } public static showSingleBubble(message: string, type: string, imageUrl: string = null, internalLink: string = null): void