From b286288dbf411c254a971f505b46ba5934f4bbd7 Mon Sep 17 00:00:00 2001 From: Bill Date: Tue, 8 Nov 2022 17:09:35 -0500 Subject: [PATCH] Updates for renderer changes --- src/App.tsx | 4 ++-- src/api/nitro/GetCommunication.ts | 2 +- src/api/nitro/GetConfiguration.ts | 4 ++-- src/api/nitro/GetConnection.ts | 2 +- .../room/events/RoomWidgetPollUpdateEvent.ts | 8 ++++---- src/api/room/widgets/AvatarInfoUtilities.ts | 18 +++++++++--------- src/common/layout/LayoutPetImageView.tsx | 4 ++-- src/components/hotel-view/HotelView.tsx | 16 ++++++++-------- .../widget-container/WidgetContainerView.tsx | 5 +++-- src/components/room/RoomView.tsx | 2 +- .../AvatarInfoUseProductConfirmView.tsx | 10 +++++----- src/hooks/rooms/useRoom.ts | 6 +++--- src/hooks/rooms/widgets/useChatWidget.ts | 4 ++-- src/index.tsx | 1 - 14 files changed, 43 insertions(+), 43 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 82ca72a4..a4ffe39c 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,4 +1,4 @@ -import { ConfigurationEvent, HabboWebTools, LegacyExternalInterface, Nitro, NitroCommunicationDemoEvent, NitroEvent, NitroLocalizationEvent, NitroVersion, RoomEngineEvent, WebGL } from '@nitrots/nitro-renderer'; +import { ConfigurationEvent, HabboWebTools, LegacyExternalInterface, Nitro, NitroCommunicationDemoEvent, NitroConfiguration, NitroEvent, NitroLocalizationEvent, NitroVersion, RoomEngineEvent, WebGL } from '@nitrots/nitro-renderer'; import { FC, useCallback, useEffect, useState } from 'react'; import { DispatchUiEvent, GetCommunication, GetConfiguration, GetNitroInstance, GetUIVersion } from './api'; import { Base, TransitionAnimation, TransitionAnimationTypes } from './common'; @@ -86,7 +86,7 @@ export const App: FC<{}> = props => const assetUrls = GetConfiguration('preload.assets.urls'); const urls: string[] = []; - if(assetUrls && assetUrls.length) for(const url of assetUrls) urls.push(GetNitroInstance().core.configuration.interpolate(url)); + if(assetUrls && assetUrls.length) for(const url of assetUrls) urls.push(NitroConfiguration.interpolate(url)); GetNitroInstance().core.asset.downloadAssets(urls, (status: boolean) => { diff --git a/src/api/nitro/GetCommunication.ts b/src/api/nitro/GetCommunication.ts index 96b4c67e..5dc57616 100644 --- a/src/api/nitro/GetCommunication.ts +++ b/src/api/nitro/GetCommunication.ts @@ -3,5 +3,5 @@ import { GetNitroInstance } from './GetNitroInstance'; export function GetCommunication(): INitroCommunicationManager { - return GetNitroInstance().communication; + return GetNitroInstance()?.communication; } diff --git a/src/api/nitro/GetConfiguration.ts b/src/api/nitro/GetConfiguration.ts index 2676d53f..800d1f16 100644 --- a/src/api/nitro/GetConfiguration.ts +++ b/src/api/nitro/GetConfiguration.ts @@ -1,6 +1,6 @@ -import { GetNitroInstance } from './GetNitroInstance'; +import { NitroConfiguration } from '@nitrots/nitro-renderer'; export function GetConfiguration(key: string, value: T = null): T { - return GetNitroInstance().getConfiguration(key, value); + return NitroConfiguration.getValue(key, value); } diff --git a/src/api/nitro/GetConnection.ts b/src/api/nitro/GetConnection.ts index fc27f045..ec39d8db 100644 --- a/src/api/nitro/GetConnection.ts +++ b/src/api/nitro/GetConnection.ts @@ -3,5 +3,5 @@ import { GetCommunication } from './GetCommunication'; export function GetConnection(): IConnection { - return GetCommunication().connection; + return GetCommunication()?.connection; } diff --git a/src/api/room/events/RoomWidgetPollUpdateEvent.ts b/src/api/room/events/RoomWidgetPollUpdateEvent.ts index 58e8d644..edfb8fd0 100644 --- a/src/api/room/events/RoomWidgetPollUpdateEvent.ts +++ b/src/api/room/events/RoomWidgetPollUpdateEvent.ts @@ -1,4 +1,4 @@ -import { PollQuestion } from '@nitrots/nitro-renderer'; +import { IPollQuestion } from '@nitrots/nitro-renderer'; import { RoomWidgetUpdateEvent } from './RoomWidgetUpdateEvent'; export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent @@ -13,7 +13,7 @@ export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent private _numQuestions = 0; private _startMessage = ''; private _endMessage = ''; - private _questionArray: PollQuestion[] = null; + private _questionArray: IPollQuestion[] = null; private _pollType = ''; private _npsPoll = false; @@ -78,12 +78,12 @@ export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent this._endMessage = k; } - public get questionArray(): PollQuestion[] + public get questionArray(): IPollQuestion[] { return this._questionArray; } - public set questionArray(k: PollQuestion[]) + public set questionArray(k: IPollQuestion[]) { this._questionArray = k; } diff --git a/src/api/room/widgets/AvatarInfoUtilities.ts b/src/api/room/widgets/AvatarInfoUtilities.ts index 57501993..5162a00e 100644 --- a/src/api/room/widgets/AvatarInfoUtilities.ts +++ b/src/api/room/widgets/AvatarInfoUtilities.ts @@ -1,4 +1,4 @@ -import { IFurnitureData, ObjectDataFactory, PetFigureData, PetType, RoomControllerLevel, RoomModerationSettings, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomPetData, RoomTradingLevelEnum, RoomUserData, RoomWidgetEnumItemExtradataParameter, Vector3d } from '@nitrots/nitro-renderer'; +import { IFurnitureData, IRoomModerationSettings, IRoomPetData, IRoomUserData, ObjectDataFactory, PetFigureData, PetType, RoomControllerLevel, RoomModerationSettings, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomTradingLevelEnum, RoomWidgetEnumItemExtradataParameter, Vector3d } from '@nitrots/nitro-renderer'; import { GetNitroInstance, GetRoomEngine, GetRoomSession, GetSessionDataManager, IsOwnerOfFurniture } from '../../nitro'; import { LocalizeText } from '../../utils'; import { AvatarInfoFurni } from './AvatarInfoFurni'; @@ -170,7 +170,7 @@ export class AvatarInfoUtilities return furniInfo; } - public static getUserInfo(category: number, userData: RoomUserData): AvatarInfoUser + public static getUserInfo(category: number, userData: IRoomUserData): AvatarInfoUser { const roomSession = GetRoomSession(); @@ -267,7 +267,7 @@ export class AvatarInfoUtilities return userInfo; } - public static getBotInfo(category: number, userData: RoomUserData): AvatarInfoUser + public static getBotInfo(category: number, userData: IRoomUserData): AvatarInfoUser { const roomSession = GetRoomSession(); const userInfo = new AvatarInfoUser(AvatarInfoUser.BOT); @@ -293,7 +293,7 @@ export class AvatarInfoUtilities return userInfo; } - public static getRentableBotInfo(category: number, userData: RoomUserData): AvatarInfoRentableBot + public static getRentableBotInfo(category: number, userData: IRoomUserData): AvatarInfoRentableBot { const roomSession = GetRoomSession(); const botInfo = new AvatarInfoRentableBot(AvatarInfoRentableBot.RENTABLE_BOT); @@ -319,7 +319,7 @@ export class AvatarInfoUtilities return botInfo; } - public static getPetInfo(petData: RoomPetData): AvatarInfoPet + public static getPetInfo(petData: IRoomPetData): AvatarInfoPet { const roomSession = GetRoomSession(); const userData = roomSession.userDataManager.getPetData(petData.id); @@ -387,7 +387,7 @@ export class AvatarInfoUtilities return (userInfo.roomControllerLevel >= RoomControllerLevel.GUEST); } - private static isValidSetting(userInfo: AvatarInfoUser, checkSetting: (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) => boolean): boolean + private static isValidSetting(userInfo: AvatarInfoUser, checkSetting: (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) => boolean): boolean { const roomSession = GetRoomSession(); @@ -404,7 +404,7 @@ export class AvatarInfoUtilities private static canBeMuted(userInfo: AvatarInfoUser): boolean { - const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) => + const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) => { switch(moderation.allowMute) { @@ -420,7 +420,7 @@ export class AvatarInfoUtilities private static canBeKicked(userInfo: AvatarInfoUser): boolean { - const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) => + const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) => { switch(moderation.allowKick) { @@ -438,7 +438,7 @@ export class AvatarInfoUtilities private static canBeBanned(userInfo: AvatarInfoUser): boolean { - const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) => + const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) => { switch(moderation.allowBan) { diff --git a/src/common/layout/LayoutPetImageView.tsx b/src/common/layout/LayoutPetImageView.tsx index e504fce2..092fe6f9 100644 --- a/src/common/layout/LayoutPetImageView.tsx +++ b/src/common/layout/LayoutPetImageView.tsx @@ -1,4 +1,4 @@ -import { PetCustomPart, PetFigureData, TextureUtils, Vector3d } from '@nitrots/nitro-renderer'; +import { IPetCustomPart, PetFigureData, TextureUtils, Vector3d } from '@nitrots/nitro-renderer'; import { CSSProperties, FC, useEffect, useMemo, useRef, useState } from 'react'; import { GetRoomEngine } from '../../api'; import { Base, BaseProps } from '../Base'; @@ -9,7 +9,7 @@ interface LayoutPetImageViewProps extends BaseProps typeId?: number; paletteId?: number; petColor?: number; - customParts?: PetCustomPart[]; + customParts?: IPetCustomPart[]; posture?: string; headOnly?: boolean; direction?: number; diff --git a/src/components/hotel-view/HotelView.tsx b/src/components/hotel-view/HotelView.tsx index a3e806ff..d78c941d 100644 --- a/src/components/hotel-view/HotelView.tsx +++ b/src/components/hotel-view/HotelView.tsx @@ -1,6 +1,6 @@ -import { RoomSessionEvent } from '@nitrots/nitro-renderer'; +import { NitroConfiguration, RoomSessionEvent } from '@nitrots/nitro-renderer'; import { FC, useState } from 'react'; -import { GetConfiguration, GetConfigurationManager } from '../../api'; +import { GetConfiguration } from '../../api'; import { LayoutAvatarImageView } from '../../common'; import { useRoomSessionManagerEvent, useSessionInfo } from '../../hooks'; import { WidgetSlotView } from './views/widgets/WidgetSlotView'; @@ -30,12 +30,12 @@ export const HotelView: FC<{}> = props => if(!isVisible) return null; const backgroundColor = GetConfiguration('hotelview')['images']['background.colour']; - const background = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['background']); - const sun = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['sun']); - const drape = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['drape']); - const left = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['left']); - const rightRepeat = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['right.repeat']); - const right = GetConfigurationManager().interpolate(GetConfiguration('hotelview')['images']['right']); + const background = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['background']); + const sun = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['sun']); + const drape = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['drape']); + const left = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['left']); + const rightRepeat = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['right.repeat']); + const right = NitroConfiguration.interpolate(GetConfiguration('hotelview')['images']['right']); return (
diff --git a/src/components/hotel-view/views/widgets/widget-container/WidgetContainerView.tsx b/src/components/hotel-view/views/widgets/widget-container/WidgetContainerView.tsx index 31b06072..2a8321c0 100644 --- a/src/components/hotel-view/views/widgets/widget-container/WidgetContainerView.tsx +++ b/src/components/hotel-view/views/widgets/widget-container/WidgetContainerView.tsx @@ -1,5 +1,6 @@ +import { NitroConfiguration } from '@nitrots/nitro-renderer'; import { FC } from 'react'; -import { GetConfigurationManager, LocalizeText, OpenUrl } from '../../../../../api'; +import { LocalizeText, OpenUrl } from '../../../../../api'; export interface WidgetContainerViewProps { @@ -19,7 +20,7 @@ export const WidgetContainerView: FC = props => switch(key) { case 'image': - return GetConfigurationManager().interpolate(option); + return NitroConfiguration.interpolate(option); } return option; diff --git a/src/components/room/RoomView.tsx b/src/components/room/RoomView.tsx index b8c65dc9..29fd6418 100644 --- a/src/components/room/RoomView.tsx +++ b/src/components/room/RoomView.tsx @@ -12,7 +12,7 @@ export const RoomView: FC<{}> = props => useEffect(() => { - const canvas = GetNitroInstance().renderer.view; + const canvas = GetNitroInstance().application.renderer.view; if(!canvas) return; diff --git a/src/components/room/widgets/avatar-info/AvatarInfoUseProductConfirmView.tsx b/src/components/room/widgets/avatar-info/AvatarInfoUseProductConfirmView.tsx index 402aba50..b9c00b34 100644 --- a/src/components/room/widgets/avatar-info/AvatarInfoUseProductConfirmView.tsx +++ b/src/components/room/widgets/avatar-info/AvatarInfoUseProductConfirmView.tsx @@ -1,4 +1,4 @@ -import { IFurnitureData, PetCustomPart, PetFigureData, RoomObjectCategory, RoomObjectVariable, RoomUserData } from '@nitrots/nitro-renderer'; +import { IFurnitureData, IPetCustomPart, IRoomUserData, PetCustomPart, PetFigureData, RoomObjectCategory, RoomObjectVariable } from '@nitrots/nitro-renderer'; import { FC, useEffect, useMemo, useState } from 'react'; import { FurniCategory, GetFurnitureDataForRoomObject, GetRoomEngine, LocalizeText, UseProductItem } from '../../../../api'; import { Base, Button, Column, Flex, LayoutPetImageView, NitroCardContentView, NitroCardHeaderView, NitroCardView, Text } from '../../../../common'; @@ -23,7 +23,7 @@ export const AvatarInfoUseProductConfirmView: FC(null); + const [ petData, setPetData ] = useState(null); const [ furniData, setFurniData ] = useState(null); const { roomSession = null } = useRoom(); @@ -74,7 +74,7 @@ export const AvatarInfoUseProductConfirmView: FC parseInt(piece)); const _local_7 = customParts[2].split(',').map(piece => parseInt(piece)); @@ -101,7 +101,7 @@ export const AvatarInfoUseProductConfirmView: FC parseInt(piece)); const _local_8 = customParts[2].split(',').map(piece => parseInt(piece)); @@ -127,7 +127,7 @@ export const AvatarInfoUseProductConfirmView: FC parseInt(piece)); const _local_7 = customParts[2].split(',').map(piece => parseInt(piece)); diff --git a/src/hooks/rooms/useRoom.ts b/src/hooks/rooms/useRoom.ts index 7481bd2a..98852f69 100644 --- a/src/hooks/rooms/useRoom.ts +++ b/src/hooks/rooms/useRoom.ts @@ -199,7 +199,7 @@ const useRoomState = () => const canvasId = 1; const width = Math.floor(window.innerWidth); const height = Math.floor(window.innerHeight); - const renderer = nitroInstance.renderer; + const renderer = nitroInstance.application.renderer; if(renderer) { @@ -250,7 +250,7 @@ const useRoomState = () => geometry.location = new Vector3d(x, y, z); } - const stage = nitroInstance.stage; + const stage = nitroInstance.application.stage; if(!stage) return; @@ -273,7 +273,7 @@ const useRoomState = () => InitializeRoomInstanceRenderingCanvas(width, height, 1); - nitroInstance.render(); + nitroInstance.application.render(); } window.addEventListener('resize', resize); diff --git a/src/hooks/rooms/widgets/useChatWidget.ts b/src/hooks/rooms/widgets/useChatWidget.ts index 13a71c80..e8db7439 100644 --- a/src/hooks/rooms/widgets/useChatWidget.ts +++ b/src/hooks/rooms/widgets/useChatWidget.ts @@ -1,6 +1,6 @@ import { AvatarFigurePartType, AvatarScaleType, AvatarSetType, GetGuestRoomResultEvent, NitroPoint, PetFigureData, RoomChatSettings, RoomChatSettingsEvent, RoomDragEvent, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomSessionChatEvent, RoomUserData, SystemChatStyleEnum, TextureUtils, Vector3d } from '@nitrots/nitro-renderer'; import { useEffect, useMemo, useRef, useState } from 'react'; -import { ChatBubbleMessage, ChatEntryType, ChatHistoryCurrentDate, GetAvatarRenderManager, GetConfigurationManager, GetRoomEngine, GetRoomObjectScreenLocation, IRoomChatSettings, LocalizeText, PlaySound, RoomChatFormatter } from '../../../api'; +import { ChatBubbleMessage, ChatEntryType, ChatHistoryCurrentDate, GetAvatarRenderManager, GetConfiguration, GetRoomEngine, GetRoomObjectScreenLocation, IRoomChatSettings, LocalizeText, PlaySound, RoomChatFormatter } from '../../../api'; import { useMessageEvent, useRoomEngineEvent, useRoomSessionManagerEvent } from '../../events'; import { useRoom } from '../useRoom'; import { useChatHistory } from './../../chat-history/useChatHistory'; @@ -180,7 +180,7 @@ const useChatWidgetState = () => case RoomSessionChatEvent.CHAT_TYPE_RESPECT: text = LocalizeText('widgets.chatbubble.respect', [ 'username' ], [ username ]); - if(GetConfigurationManager().getValue('respect.options')['enabled']) PlaySound(GetConfigurationManager().getValue('respect.options')['sound']); + if(GetConfiguration('respect.options')['enabled']) PlaySound(GetConfiguration('respect.options')['sound']); break; case RoomSessionChatEvent.CHAT_TYPE_PETREVIVE: diff --git a/src/index.tsx b/src/index.tsx index b0fc34bc..b151f186 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,6 +1,5 @@ import { library } from '@fortawesome/fontawesome-svg-core'; import { fas } from '@fortawesome/free-solid-svg-icons'; -import React from 'react'; import { createRoot } from 'react-dom/client'; import { App } from './App'; import './index.scss';