Rooms now load

This commit is contained in:
Bill 2021-04-18 00:58:57 -04:00
parent bc93c0ac0f
commit dde5b6bb2d
100 changed files with 3817 additions and 88 deletions

1
src/api/index.ts Normal file
View File

@ -0,0 +1 @@
export * from './nitro';

1
src/api/nitro/index.ts Normal file
View File

@ -0,0 +1 @@
export * from './session';

View File

@ -0,0 +1,55 @@
import { MouseEventType } from 'nitro-renderer';
import { GetRoomEngine } from './GetRoomEngine';
import { SetActiveRoomId } from './SetActiveRoomId';
let didMouseMove = false;
let lastClick = 0;
let clickCount = 0;
export function DispatchMouseEvent(roomId: number, canvasId: number, event: MouseEvent)
{
const x = event.clientX;
const y = event.clientY;
let eventType = event.type;
if(eventType === MouseEventType.MOUSE_CLICK)
{
if(lastClick)
{
clickCount = 1;
if(lastClick >= Date.now() - 300) clickCount++;
}
lastClick = Date.now();
if(clickCount === 2)
{
if(!didMouseMove) eventType = MouseEventType.DOUBLE_CLICK;
clickCount = 0;
lastClick = null;
}
}
switch(eventType)
{
case MouseEventType.MOUSE_CLICK:
break;
case MouseEventType.DOUBLE_CLICK:
break;
case MouseEventType.MOUSE_MOVE:
didMouseMove = true;
break;
case MouseEventType.MOUSE_DOWN:
didMouseMove = false;
break;
case MouseEventType.MOUSE_UP:
break;
default: return;
}
SetActiveRoomId(roomId);
GetRoomEngine().dispatchMouseEvent(canvasId, x, y, eventType, event.altKey, (event.ctrlKey || event.metaKey), event.shiftKey, false);
}

View File

@ -0,0 +1,22 @@
import { Nitro } from 'nitro-renderer';
import { InitializeRoomInstanceRenderingCanvas } from './InitializeRoomInstanceRenderingCanvas';
let resizeTimer: ReturnType<typeof setTimeout> = null;
export function WindowResizeEvent(roomId: number, canvasId: number)
{
if(resizeTimer) clearTimeout(resizeTimer);
resizeTimer = setTimeout(() =>
{
Nitro.instance.renderer.resize(window.innerWidth, window.innerHeight);
InitializeRoomInstanceRenderingCanvas(roomId, canvasId, Nitro.instance.width, Nitro.instance.height);
//this._events.dispatchEvent(new RoomWidgetRoomViewUpdateEvent(RoomWidgetRoomViewUpdateEvent.SIZE_CHANGED, this.getRoomViewRect()));
//this.setRoomBackground();
Nitro.instance.render();
}, 1);
}

View File

@ -0,0 +1,70 @@
import { MouseEventType, TouchEventType } from 'nitro-renderer';
import { GetRoomEngine } from './GetRoomEngine';
let didMouseMove = false;
let lastClick = 0;
let clickCount = 0;
export function DispatchTouchEvent(roomId: number, canvasId: number, event: TouchEvent)
{
let eventType = event.type;
if(eventType === TouchEventType.TOUCH_END && !didMouseMove)
{
eventType = MouseEventType.MOUSE_CLICK;
if(lastClick)
{
clickCount = 1;
if(lastClick >= Date.now() - 300) clickCount++;
}
lastClick = Date.now();
if(clickCount === 2)
{
eventType = MouseEventType.DOUBLE_CLICK;
clickCount = 0;
lastClick = null;
}
}
switch(eventType)
{
case MouseEventType.MOUSE_CLICK:
break;
case MouseEventType.DOUBLE_CLICK:
break;
case TouchEventType.TOUCH_START:
eventType = MouseEventType.MOUSE_DOWN;
didMouseMove = false;
break;
case TouchEventType.TOUCH_MOVE:
eventType = MouseEventType.MOUSE_MOVE;
didMouseMove = true;
break;
default: return;
}
let x = 0;
let y = 0;
if(event.touches[0])
{
x = event.touches[0].clientX;
y = event.touches[0].clientY;
}
else if(event.changedTouches[0])
{
x = event.changedTouches[0].clientX;
y = event.changedTouches[0].clientY;
}
GetRoomEngine().setActiveRoomId(roomId);
GetRoomEngine().dispatchMouseEvent(canvasId, x, y, eventType, event.altKey, (event.ctrlKey || event.metaKey), event.shiftKey, false);
}

View File

@ -0,0 +1,6 @@
import { IRoomEngine, Nitro } from 'nitro-renderer';
export function GetRoomEngine(): IRoomEngine
{
return Nitro.instance.roomEngine;
}

View File

@ -0,0 +1,6 @@
import { GetRoomEngine } from './GetRoomEngine';
export function InitializeRoomInstanceRenderingCanvas(roomId: number, canvasId: number, width: number, height: number): void
{
GetRoomEngine().initializeRoomInstanceRenderingCanvas(roomId, canvasId, width, height);
}

View File

@ -0,0 +1,6 @@
import { GetRoomEngine } from './GetRoomEngine';
export function ProcessRoomObjectOperation(objectId: number, category: number, operation: string): void
{
GetRoomEngine().processRoomObjectOperation(objectId, category, operation);
}

View File

@ -0,0 +1,6 @@
import { GetRoomEngine } from './GetRoomEngine';
export function SetActiveRoomId(roomId: number): void
{
GetRoomEngine().setActiveRoomId(roomId);
}

View File

@ -0,0 +1,7 @@
import { IRoomSession } from 'nitro-renderer';
import { GetRoomSessionManager } from './GetRoomSessionManager';
export function GetRoomSession(roomId: number): IRoomSession
{
return GetRoomSessionManager().getSession(roomId);
}

View File

@ -0,0 +1,6 @@
import { IRoomSessionManager, Nitro } from 'nitro-renderer';
export function GetRoomSessionManager(): IRoomSessionManager
{
return Nitro.instance.roomSessionManager;
}

View File

@ -0,0 +1,6 @@
import { ISessionDataManager, Nitro } from 'nitro-renderer';
export function GetSessionDataManager(): ISessionDataManager
{
return Nitro.instance.sessionDataManager;
}

View File

@ -0,0 +1,7 @@
import { IRoomSession } from 'nitro-renderer';
import { GetRoomSessionManager } from './GetRoomSessionManager';
export function StartRoomSession(session: IRoomSession): void
{
GetRoomSessionManager().startSession(session);
}

View File

@ -0,0 +1,2 @@
export * from './GetRoomSessionManager';
export * from './GetSessionDataManager';

6
src/utils/IProps.ts Normal file
View File

@ -0,0 +1,6 @@
import { ReactNode } from 'react';
export interface IProps
{
readonly children?: ReactNode;
}

View File

@ -2,6 +2,8 @@
@import './hotel-view/HotelView.scss';
@import './loading/LoadingView.scss';
@import './main/MainView.scss';
@import './navigator/NavigatorView.scss';
@import './purse/PurseView.scss';
@import './right-side/RightSideView.scss';
@import './room/RoomView.scss';
@import './toolbar/ToolbarView.scss';

View File

@ -1,105 +1,34 @@
import { Nitro, RoomBackgroundColorEvent, RoomEngineDimmerStateEvent, RoomEngineEvent, RoomEngineObjectEvent, RoomEngineTriggerWidgetEvent, RoomObjectHSLColorEnabledEvent, RoomObjectWidgetRequestEvent, RoomSessionChatEvent, RoomSessionDanceEvent, RoomSessionDimmerPresetsEvent, RoomSessionDoorbellEvent, RoomSessionErrorMessageEvent, RoomSessionEvent, RoomSessionFriendRequestEvent, RoomSessionPresentEvent, RoomSessionUserBadgesEvent, RoomZoomEvent } from 'nitro-renderer';
import { Nitro, RoomSessionEvent } from 'nitro-renderer';
import { useCallback, useEffect, useState } from 'react';
import { useRoomEngineEvent } from '../../hooks/events/nitro/room/room-engine-event';
import { useRoomSessionManagerEvent } from '../../hooks/events/nitro/session/room-session-manager-event';
import { FadeTransition } from '../../transitions/FadeTransition';
import { HotelView } from '../hotel-view/HotelView';
import { NavigatorView } from '../navigator/NavigatorView';
import { RightSideView } from '../right-side/RightSideView';
import { RoomHostView } from '../room-host/RoomHostView';
import { ToolbarView } from '../toolbar/ToolbarView';
import { MainViewProps } from './MainView.types';
export function MainView(props: MainViewProps): JSX.Element
{
const [ isReady, setIsReady ] = useState(false);
const onInterstitialEvent = useCallback((event: RoomEngineEvent) =>
{
console.log(event);
}, []);
const onRoomEngineEvent = useCallback((event: RoomEngineEvent) =>
{
console.log(event);
}, []);
const onRoomEngineObjectEvent = useCallback((event: RoomEngineObjectEvent) =>
{
console.log(event);
}, []);
const [ landingViewVisible, setLandingViewVisible ] = useState(true);
const onRoomSessionEvent = useCallback((event: RoomSessionEvent) =>
{
console.log(event);
switch(event.type)
{
case RoomSessionEvent.CREATED:
setLandingViewVisible(false);
return;
case RoomSessionEvent.ENDED:
setLandingViewVisible(event.openLandingView);
return;
}
}, []);
const onRoomSessionErrorMessageEvent = useCallback((event: RoomSessionErrorMessageEvent) =>
{
console.log(event);
}, []);
useRoomEngineEvent(RoomEngineEvent.ENGINE_INITIALIZED, onInterstitialEvent);
useRoomEngineEvent(RoomEngineEvent.OBJECTS_INITIALIZED, onInterstitialEvent);
useRoomEngineEvent(RoomEngineEvent.NORMAL_MODE, onInterstitialEvent);
useRoomEngineEvent(RoomEngineEvent.GAME_MODE, onInterstitialEvent);
useRoomEngineEvent(RoomEngineEvent.INITIALIZED, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineEvent.DISPOSED, onRoomEngineEvent);
useRoomEngineEvent(RoomZoomEvent.ROOM_ZOOM, onRoomEngineEvent);
useRoomEngineEvent(RoomObjectHSLColorEnabledEvent.ROOM_BACKGROUND_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomBackgroundColorEvent.ROOM_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineDimmerStateEvent.ROOM_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineObjectEvent.SELECTED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.DESELECTED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.ADDED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REMOVED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.PLACED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REQUEST_MOVE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REQUEST_ROTATE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.MOUSE_ENTER, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.MOUSE_LEAVE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.OPEN_WIDGET, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.CLOSE_WIDGET, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_INTERNAL_LINK, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_ROOM_LINK, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_TROPHY, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_CREDITFURNI, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomObjectWidgetRequestEvent.OPEN_FURNI_CONTEXT_MENU, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_STICKIE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_DIMMER, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_BACKGROUND_COLOR, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_FRIEND_FURNITURE_ENGRAVING, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_MANNEQUIN, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_PRESENT, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_HIGH_SCORE_DISPLAY, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_HIDE_HIGH_SCORE_DISPLAY, onRoomEngineObjectEvent);
useRoomSessionManagerEvent(RoomSessionEvent.CREATED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionEvent.STARTED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionEvent.ROOM_DATA, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionEvent.ENDED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionChatEvent.CHAT_EVENT, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionChatEvent.FLOOD_EVENT, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionDanceEvent.RSDE_DANCE, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionUserBadgesEvent.RSUBE_BADGES, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionDoorbellEvent.DOORBELL, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionDoorbellEvent.RSDE_REJECTED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionDoorbellEvent.RSDE_ACCEPTED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionDimmerPresetsEvent.RSDPE_PRESETS, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionFriendRequestEvent.RSFRE_FRIEND_REQUEST, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionPresentEvent.RSPE_PRESENT_OPENED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_KICKED, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_PETS_FORBIDDEN_IN_HOTEL, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_PETS_FORBIDDEN_IN_FLAT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_MAX_PETS, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_MAX_NUMBER_OF_OWN_PETS, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_NO_FREE_TILES_FOR_PET, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_SELECTED_TILE_NOT_FREE_FOR_PET, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOTS_FORBIDDEN_IN_HOTEL, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOTS_FORBIDDEN_IN_FLAT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOT_LIMIT_REACHED, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_SELECTED_TILE_NOT_FREE_FOR_BOT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOT_NAME_NOT_ACCEPTED, onRoomSessionErrorMessageEvent);
useEffect(() =>
{
@ -110,7 +39,9 @@ export function MainView(props: MainViewProps): JSX.Element
return (
<div>
<HotelView />
{ landingViewVisible && <HotelView /> }
<RoomHostView />
<NavigatorView />
<RightSideView />
<FadeTransition inProp={ isReady } timeout={ 300 }>
<ToolbarView />

View File

View File

@ -0,0 +1,73 @@
import { RoomDataParser, RoomForwardEvent, RoomInfoComposer, RoomInfoEvent, RoomInfoOwnerEvent } from 'nitro-renderer';
import { GetRoomSessionManager, GetSessionDataManager } from '../../api';
import { CreateMessageHook, SendMessageHook } from '../../hooks/messages/message-event';
import { NavigatorViewProps } from './NavigatorView.types';
export function NavigatorView(props: NavigatorViewProps): JSX.Element
{
const onRoomForwardEvent = (event: RoomForwardEvent) =>
{
const parser = event.getParser();
SendMessageHook(new RoomInfoComposer(parser.roomId, false, true));
};
const onRoomInfoOwnerEvent = (event: RoomInfoOwnerEvent) =>
{
const parser = event.getParser();
SendMessageHook(new RoomInfoComposer(parser.roomId, true, false));
};
const onRoomInfoEvent = (event: RoomInfoEvent) =>
{
const parser = event.getParser();
if(parser.roomEnter)
{
// this._data.enteredGuestRoom = parser.data;
// this._data.staffPick = parser.data.roomPicker;
// const isCreatedRoom = (this._data.createdRoomId === parser.data.roomId);
// if(!isCreatedRoom && parser.data.displayRoomEntryAd)
// {
// // display ad
// }
// this._data.createdRoomId = 0;
}
else if(parser.roomForward)
{
if((parser.data.ownerName !== GetSessionDataManager().userName) && !parser.isGroupMember)
{
switch(parser.data.doorMode)
{
case RoomDataParser.DOORBELL_STATE:
console.log('open doorbell');
return;
case RoomDataParser.PASSWORD_STATE:
console.log('open password');
return;
}
}
GetRoomSessionManager().createSession(parser.data.roomId);
}
else
{
// this._data.enteredGuestRoom = parser.data;
// this._data.staffPick = parser.data.roomPicker;
}
};
CreateMessageHook(new RoomForwardEvent(onRoomForwardEvent));
CreateMessageHook(new RoomInfoOwnerEvent(onRoomInfoOwnerEvent));
CreateMessageHook(new RoomInfoEvent(onRoomInfoEvent));
return (
<div>navigator</div>
);
}

View File

@ -0,0 +1,4 @@
export interface NavigatorViewProps
{
}

View File

@ -7,7 +7,7 @@ export function CurrencyView(props: CurrencyViewProps): JSX.Element
return (
<div className="d-flex bg-primary rounded shadow border border-black mb-1 p-1 nitro-purse-item">
<div className="d-flex flex-grow-1 align-items-center justify-content-end detail-value">{ amount }</div>
<div className="d-flex flex-grow-1 align-items-center justify-content-end">{ amount }</div>
<div className="bg-secondary rounded ml-1"><CurrencyIcon type={ type } /></div>
</div>
);

View File

@ -0,0 +1,26 @@
import { RoomSessionErrorMessageEvent } from 'nitro-renderer';
import { useCallback } from 'react';
import { useRoomSessionManagerEvent } from '../../hooks/events/nitro/session/room-session-manager-event';
export function RoomErrorHandler(): JSX.Element
{
const onRoomSessionErrorMessageEvent = useCallback((event: RoomSessionErrorMessageEvent) =>
{
console.log(event);
}, []);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_KICKED, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_PETS_FORBIDDEN_IN_HOTEL, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_PETS_FORBIDDEN_IN_FLAT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_MAX_PETS, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_MAX_NUMBER_OF_OWN_PETS, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_NO_FREE_TILES_FOR_PET, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_SELECTED_TILE_NOT_FREE_FOR_PET, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOTS_FORBIDDEN_IN_HOTEL, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOTS_FORBIDDEN_IN_FLAT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOT_LIMIT_REACHED, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_SELECTED_TILE_NOT_FREE_FOR_BOT, onRoomSessionErrorMessageEvent);
useRoomSessionManagerEvent(RoomSessionErrorMessageEvent.RSEME_BOT_NAME_NOT_ACCEPTED, onRoomSessionErrorMessageEvent);
return null;
}

View File

@ -0,0 +1,155 @@
import { EventDispatcher, IEventDispatcher, IRoomSession, RoomBackgroundColorEvent, RoomEngineDimmerStateEvent, RoomEngineEvent, RoomEngineObjectEvent, RoomId, RoomObjectCategory, RoomObjectHSLColorEnabledEvent, RoomObjectOperationType, RoomSessionEvent, RoomZoomEvent } from 'nitro-renderer';
import { useCallback, useState } from 'react';
import { ProcessRoomObjectOperation } from '../../api/nitro/room/ProcessRoomObjectOperation';
import { SetActiveRoomId } from '../../api/nitro/room/SetActiveRoomId';
import { GetRoomSession } from '../../api/nitro/session/GetRoomSession';
import { StartRoomSession } from '../../api/nitro/session/StartRoomSession';
import { useRoomEngineEvent } from '../../hooks/events/nitro/room/room-engine-event';
import { useRoomSessionManagerEvent } from '../../hooks/events/nitro/session/room-session-manager-event';
import { RoomErrorHandler } from '../room-error-handler/RoomErrorHandler';
import { RoomView } from '../room/RoomView';
import { RoomWidgetRoomObjectUpdateEvent } from '../room/widgets/events';
import { RoomHostViewProps } from './RoomHostView.types';
import { CanManipulateFurniture } from './utils/CanManipulateFurniture';
import { IsFurnitureSelectionDisabled } from './utils/IsFurnitureSelectionDisabled';
export function RoomHostView(props: RoomHostViewProps): JSX.Element
{
const [ roomSession, setRoomSession ] = useState<IRoomSession>(null);
const [ eventDispatcher, setEventDispatcher ] = useState<IEventDispatcher>(null);
const onRoomEngineEvent = useCallback((event: RoomEngineEvent) =>
{
if(RoomId.isRoomPreviewerId(event.roomId)) return;
const session = GetRoomSession(event.roomId);
if(!session) return;
switch(event.type)
{
case RoomEngineEvent.INITIALIZED:
SetActiveRoomId(event.roomId);
setRoomSession(session);
setEventDispatcher(new EventDispatcher());
return;
case RoomEngineEvent.DISPOSED:
setRoomSession(null);
setEventDispatcher(null);
return;
}
}, []);
const onRoomEngineObjectEvent = useCallback((event: RoomEngineObjectEvent) =>
{
const objectId = event.objectId;
const category = event.category;
let updateEvent: RoomWidgetRoomObjectUpdateEvent = null;
switch(event.type)
{
case RoomEngineObjectEvent.SELECTED:
if(!IsFurnitureSelectionDisabled(event)) updateEvent = new RoomWidgetRoomObjectUpdateEvent(RoomWidgetRoomObjectUpdateEvent.OBJECT_SELECTED, objectId, category, event.roomId);
break;
case RoomEngineObjectEvent.DESELECTED:
updateEvent = new RoomWidgetRoomObjectUpdateEvent(RoomWidgetRoomObjectUpdateEvent.OBJECT_DESELECTED, objectId, category, event.roomId);
break;
case RoomEngineObjectEvent.ADDED: {
let addedEventType: string = null;
switch(category)
{
case RoomObjectCategory.FLOOR:
case RoomObjectCategory.WALL:
addedEventType = RoomWidgetRoomObjectUpdateEvent.FURNI_ADDED;
break;
case RoomObjectCategory.UNIT:
addedEventType = RoomWidgetRoomObjectUpdateEvent.USER_ADDED;
break;
}
if(addedEventType) updateEvent = new RoomWidgetRoomObjectUpdateEvent(addedEventType, objectId, category, event.roomId);
break;
}
case RoomEngineObjectEvent.REMOVED: {
let removedEventType: string = null;
switch(category)
{
case RoomObjectCategory.FLOOR:
case RoomObjectCategory.WALL:
removedEventType = RoomWidgetRoomObjectUpdateEvent.FURNI_REMOVED;
break;
case RoomObjectCategory.UNIT:
removedEventType = RoomWidgetRoomObjectUpdateEvent.USER_REMOVED;
break;
}
if(removedEventType) updateEvent = new RoomWidgetRoomObjectUpdateEvent(removedEventType, objectId, category, event.roomId);
break;
}
case RoomEngineObjectEvent.MOUSE_ENTER:
updateEvent = new RoomWidgetRoomObjectUpdateEvent(RoomWidgetRoomObjectUpdateEvent.OBJECT_ROLL_OVER, objectId, category, event.roomId);
break;
case RoomEngineObjectEvent.MOUSE_LEAVE:
updateEvent = new RoomWidgetRoomObjectUpdateEvent(RoomWidgetRoomObjectUpdateEvent.OBJECT_ROLL_OUT, objectId, category, event.roomId);
break;
case RoomEngineObjectEvent.REQUEST_MOVE:
if(CanManipulateFurniture(roomSession, objectId, category)) ProcessRoomObjectOperation(objectId, category, RoomObjectOperationType.OBJECT_MOVE);
break;
case RoomEngineObjectEvent.REQUEST_ROTATE:
if(CanManipulateFurniture(roomSession, objectId, category)) ProcessRoomObjectOperation(objectId, category, RoomObjectOperationType.OBJECT_ROTATE_POSITIVE);
break;
}
if(updateEvent)
{
let dispatchEvent = true;
if(updateEvent instanceof RoomWidgetRoomObjectUpdateEvent) dispatchEvent = (!RoomId.isRoomPreviewerId(updateEvent.roomId));
if(dispatchEvent) eventDispatcher.dispatchEvent(updateEvent);
}
}, [ roomSession, eventDispatcher ]);
const onRoomSessionEvent = useCallback((event: RoomSessionEvent) =>
{
switch(event.type)
{
case RoomSessionEvent.CREATED:
StartRoomSession(event.session);
return;
case RoomSessionEvent.ENDED:
setRoomSession(null);
return;
}
}, []);
useRoomEngineEvent(RoomEngineEvent.INITIALIZED, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineEvent.DISPOSED, onRoomEngineEvent);
useRoomEngineEvent(RoomZoomEvent.ROOM_ZOOM, onRoomEngineEvent);
useRoomEngineEvent(RoomObjectHSLColorEnabledEvent.ROOM_BACKGROUND_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomBackgroundColorEvent.ROOM_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineDimmerStateEvent.ROOM_COLOR, onRoomEngineEvent);
useRoomEngineEvent(RoomEngineObjectEvent.SELECTED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.DESELECTED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.ADDED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REMOVED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.PLACED, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REQUEST_MOVE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.REQUEST_ROTATE, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.MOUSE_ENTER, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineObjectEvent.MOUSE_LEAVE, onRoomEngineObjectEvent);
useRoomSessionManagerEvent(RoomSessionEvent.CREATED, onRoomSessionEvent);
useRoomSessionManagerEvent(RoomSessionEvent.ENDED, onRoomSessionEvent);
return (
<div>
<RoomErrorHandler />
<RoomView events={ eventDispatcher } roomSession={ roomSession } />
</div>
);
}

View File

@ -0,0 +1,4 @@
export interface RoomHostViewProps
{
}

View File

@ -0,0 +1,11 @@
import { IRoomSession, RoomControllerLevel } from 'nitro-renderer';
import { GetSessionDataManager } from '../../../api';
import { GetRoomEngine } from '../../../api/nitro/room/GetRoomEngine';
import { IsOwnerOfFurniture } from './IsOwnerOfFurniture';
export function CanManipulateFurniture(roomSession: IRoomSession, objectId: number, category: number): boolean
{
if(!roomSession) return false;
return ((roomSession.controllerLevel >= RoomControllerLevel.GUEST) || GetSessionDataManager().isModerator || IsOwnerOfFurniture(GetRoomEngine().getRoomObject(roomSession.roomId, objectId, category)));
}

View File

@ -0,0 +1,24 @@
import { RoomEngineObjectEvent, RoomObjectVariable } from 'nitro-renderer';
import { GetSessionDataManager } from '../../../api';
import { GetRoomEngine } from '../../../api/nitro/room/GetRoomEngine';
export function IsFurnitureSelectionDisabled(event: RoomEngineObjectEvent): boolean
{
let result = false;
const roomObject = GetRoomEngine().getRoomObject(event.roomId, event.objectId, event.category);
if(roomObject)
{
const selectionDisabled = (roomObject.model.getValue<number>(RoomObjectVariable.FURNITURE_SELECTION_DISABLED) === 1);
if(selectionDisabled)
{
result = true;
if(GetSessionDataManager().isModerator) result = false;
}
}
return result;
}

View File

@ -0,0 +1,12 @@
import { IRoomObject, RoomObjectVariable } from 'nitro-renderer';
import { GetSessionDataManager } from '../../../api';
export function IsOwnerOfFurniture(roomObject: IRoomObject): boolean
{
if(!roomObject || !roomObject.model) return false;
const userId = GetSessionDataManager().userId;
const objectOwnerId = roomObject.model.getValue<number>(RoomObjectVariable.FURNITURE_OWNER_ID);
return (userId === objectOwnerId);
}

View File

View File

@ -0,0 +1,99 @@
import { Nitro, RoomGeometry, RoomVariableEnum, Vector3d } from 'nitro-renderer';
import { useEffect, useState } from 'react';
import { createPortal } from 'react-dom';
import { DispatchMouseEvent } from '../../api/nitro/room/DispatchMouseEvent';
import { WindowResizeEvent } from '../../api/nitro/room/DispatchResizeEvent';
import { DispatchTouchEvent } from '../../api/nitro/room/DispatchTouchEvent';
import { GetRoomEngine } from '../../api/nitro/room/GetRoomEngine';
import { RoomViewProps } from './RoomView.types';
import { FurnitureHighScoreView } from './widgets/furniture/high-score/FurnitureHighScoreView';
import { FurnitureMannequinView } from './widgets/furniture/mannequin/FurnitureMannequinView';
import { FurniturePresentView } from './widgets/furniture/present/FurniturePresentView';
import { FurnitureStickieView } from './widgets/furniture/stickie/FurnitureStickieView';
export function RoomView(props: RoomViewProps): JSX.Element
{
const { roomSession = null, events = null } = props;
const [ roomCanvas, setRoomCanvas ] = useState<HTMLCanvasElement>(null);
useEffect(() =>
{
if(!roomSession || !events)
{
window.onresize = null;
setRoomCanvas(null);
return;
}
const canvasId = 1;
const displayObject = GetRoomEngine().getRoomInstanceDisplay(roomSession.roomId, canvasId, Nitro.instance.width, Nitro.instance.height, RoomGeometry.SCALE_ZOOMED_IN);
if(!displayObject) return;
const geometry = (GetRoomEngine().getRoomInstanceGeometry(roomSession.roomId, canvasId) as RoomGeometry);
if(geometry)
{
const minX = (GetRoomEngine().getRoomInstanceVariable<number>(roomSession.roomId, RoomVariableEnum.ROOM_MIN_X) || 0);
const maxX = (GetRoomEngine().getRoomInstanceVariable<number>(roomSession.roomId, RoomVariableEnum.ROOM_MAX_X) || 0);
const minY = (GetRoomEngine().getRoomInstanceVariable<number>(roomSession.roomId, RoomVariableEnum.ROOM_MIN_Y) || 0);
const maxY = (GetRoomEngine().getRoomInstanceVariable<number>(roomSession.roomId, RoomVariableEnum.ROOM_MAX_Y) || 0);
let x = ((minX + maxX) / 2);
let y = ((minY + maxY) / 2);
const offset = 20;
x = (x + (offset - 1));
y = (y + (offset - 1));
const z = (Math.sqrt(((offset * offset) + (offset * offset))) * Math.tan(((30 / 180) * Math.PI)));
geometry.location = new Vector3d(x, y, z);
}
const stage = Nitro.instance.stage;
if(!stage) return;
stage.addChild(displayObject);
const canvas = Nitro.instance.renderer.view;
if(!canvas) return;
canvas.onclick = event => DispatchMouseEvent(roomSession.roomId, canvasId, event);
canvas.onmousemove = event => DispatchMouseEvent(roomSession.roomId, canvasId, event);
canvas.onmousedown = event => DispatchMouseEvent(roomSession.roomId, canvasId, event);
canvas.onmouseup = event => DispatchMouseEvent(roomSession.roomId, canvasId, event);
canvas.ontouchstart = event => DispatchTouchEvent(roomSession.roomId, canvasId, event);
canvas.ontouchmove = event => DispatchTouchEvent(roomSession.roomId, canvasId, event);
canvas.ontouchend = event => DispatchTouchEvent(roomSession.roomId, canvasId, event);
canvas.ontouchcancel = event => DispatchTouchEvent(roomSession.roomId, canvasId, event);
window.onresize = event => WindowResizeEvent(roomSession.roomId, canvasId);
setRoomCanvas(canvas);
}, [ roomSession, events ]);
if(!roomSession) return null;
return (
<div>
{ roomSession && <div id="room-view"></div> }
{ roomSession && events && roomCanvas &&
createPortal(props.children, document.getElementById('room-view').appendChild(roomCanvas)) &&
<div className="nitro-room-widgets">
<FurnitureHighScoreView events={ events } />
<FurnitureMannequinView events={ events } />
<FurniturePresentView events={ events } />
<FurnitureStickieView events={ events } />
</div> }
</div>
);
}

View File

@ -0,0 +1,8 @@
import { IEventDispatcher, IRoomSession } from 'nitro-renderer';
import { IProps } from '../../utils/IProps';
export interface RoomViewProps extends IProps
{
events: IEventDispatcher;
roomSession: IRoomSession;
}

View File

@ -0,0 +1,8 @@
export class ConfirmPetBreedingPetData
{
public name: string;
public level: number;
public figure: string;
public owner: string;
public _Str_5277: number;
}

View File

@ -0,0 +1,20 @@
import { NitroEvent } from 'nitro-renderer';
export class HideRoomWidgetEvent extends NitroEvent
{
public static HRWE_HIDE_ROOM_WIDGET: string = 'hrwe_hide_room_widget';
private _Str_9477: string;
constructor(k: string)
{
super(HideRoomWidgetEvent.HRWE_HIDE_ROOM_WIDGET);
this._Str_9477 = k;
}
public get _Str_23558(): string
{
return this._Str_9477;
}
}

View File

@ -0,0 +1,15 @@
import { NitroEvent } from 'nitro-renderer';
export class RoomDesktopMouseZoomEnableEvent extends NitroEvent
{
public static RDMZEE_ENABLED: string = 'RDMZEE_ENABLED';
private _Str_2699: boolean;
constructor(k: boolean)
{
super(RoomDesktopMouseZoomEnableEvent.RDMZEE_ENABLED);
this._Str_2699 = k;
}
}

View File

@ -0,0 +1,28 @@
export class RoomObjectItem
{
private readonly _id: number;
private readonly _category: number;
private readonly _name: string;
constructor(id: number, category: number, name: string)
{
this._id = id;
this._category = category;
this._name = name;
}
public get id(): number
{
return this._id;
}
public get category(): number
{
return this._category;
}
public get name(): string
{
return this._name;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomObjectNameEvent extends RoomWidgetUpdateEvent
{
public static RWONE_TYPE: string = 'RWONE_TYPE';
private _userId: number;
private _category: number;
private _userName: string;
private _userType: number;
private _roomIndex: number;
constructor (k: number, _arg_2: number, _arg_3: string, _arg_4: number, _arg_5: number)
{
super(RoomObjectNameEvent.RWONE_TYPE);
this._userId = k;
this._category = _arg_2;
this._userName = _arg_3;
this._userType = _arg_4;
this._roomIndex = _arg_5;
}
public get userId(): number
{
return this._userId;
}
public get category(): number
{
return this._category;
}
public get userName(): string
{
return this._userName;
}
public get userType(): number
{
return this._userType;
}
public get roomIndex(): number
{
return this._roomIndex;
}
}

View File

@ -0,0 +1,7 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetAvatarEditorUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUE_HIDE_AVATAR_EDITOR: string = 'RWUE_HIDE_AVATAR_EDITOR';
public static RWUE_AVATAR_EDITOR_CLOSED: string = 'RWUE_AVATAR_EDITOR_CLOSED';
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetAvatarInfoEvent extends RoomWidgetUpdateEvent
{
public static RWAIE_AVATAR_INFO: string = 'RWAIE_AVATAR_INFO';
private _userId: number;
private _userName: string;
private _Str_3021: number;
private _Str_3947: boolean;
private _Str_2775: number;
constructor(k: number, _arg_2: string, _arg_3: number, _arg_4: number, _arg_5: boolean)
{
super(RoomWidgetAvatarInfoEvent.RWAIE_AVATAR_INFO);
this._userId = k;
this._userName = _arg_2;
this._Str_3021 = _arg_3;
this._Str_2775 = _arg_4;
this._Str_3947 = _arg_5;
}
public get userId(): number
{
return this._userId;
}
public get userName(): string
{
return this._userName;
}
public get _Str_2908(): number
{
return this._Str_3021;
}
public get _Str_2707(): number
{
return this._Str_2775;
}
public get _Str_4330(): boolean
{
return this._Str_3947;
}
}

View File

@ -0,0 +1,29 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetChatInputContentUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWWCIDE_CHAT_INPUT_CONTENT: string = 'RWWCIDE_CHAT_INPUT_CONTENT';
public static WHISPER: string = 'whisper';
public static SHOUT: string = 'shout';
private _Str_21134: string = '';
private _userName: string = '';
constructor(k: string, _arg_2: string)
{
super(RoomWidgetChatInputContentUpdateEvent.RWWCIDE_CHAT_INPUT_CONTENT);
this._Str_21134 = k;
this._userName = _arg_2;
}
public get _Str_23621(): string
{
return this._Str_21134;
}
public get userName(): string
{
return this._userName;
}
}

View File

@ -0,0 +1,123 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetChatUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWCUE_EVENT_CHAT: string = 'RWCUE_EVENT_CHAT';
public static CHAT_TYPE_SPEAK: number = 0;
public static CHAT_TYPE_WHISPER: number = 1;
public static CHAT_TYPE_SHOUT: number = 2;
public static CHAT_TYPE_RESPECT: number = 3;
public static CHAT_TYPE_PETRESPECT: number = 4;
public static CHAT_TYPE_NOTIFY: number = 5;
public static CHAT_TYPE_PETTREAT: number = 6;
public static CHAT_TYPE_PETREVIVE: number = 7;
public static CHAT_TYPE_PET_REBREED_FERTILIZE: number = 8;
public static CHAT_TYPE_PET_SPEED_FERTILIZE: number = 9;
public static CHAT_TYPE_BOT_SPEAK: number = 10;
public static CHAT_TYPE_BOT_SHOUT: number = 11;
public static CHAT_TYPE_BOT_WHISPER: number = 12;
private _userId: number;
private _text: string;
private _chatType: number;
private _userName: string;
private _links: string[];
private _userX: number;
private _userY: number;
private _userImage: HTMLImageElement;
private _userColor: number;
private _roomId: number;
private _userCategory: number;
private _userType: number;
private _petType: number;
private _styleId: number;
constructor(k: string, userId: number, text: string, userName: string, userCategory: number, userType: number, petType: number, userX: number, userY: number, userImage: HTMLImageElement, userColor: number, roomId: number, chatType: number = 0, styleId: number = 0, links: string[] = null)
{
super(k);
this._userId = userId;
this._text = text;
this._chatType = chatType;
this._userName = userName;
this._userCategory = userCategory;
this._userType = userType;
this._petType = petType;
this._links = links;
this._userX = userX;
this._userY = userY;
this._userImage = userImage;
this._userColor = userColor;
this._roomId = roomId;
this._styleId = styleId;
}
public get userId(): number
{
return this._userId;
}
public get text(): string
{
return this._text;
}
public get chatType(): number
{
return this._chatType;
}
public get userName(): string
{
return this._userName;
}
public get userCategory(): number
{
return this._userCategory;
}
public get userType(): number
{
return this._userType;
}
public get petType(): number
{
return this._petType;
}
public get links(): string[]
{
return this._links;
}
public get userX(): number
{
return this._userX;
}
public get userY(): number
{
return this._userY;
}
public get userImage(): HTMLImageElement
{
return this._userImage;
}
public get userColor(): number
{
return this._userColor;
}
public get roomId(): number
{
return this._roomId;
}
public get styleId(): number
{
return this._styleId;
}
}

View File

@ -0,0 +1,29 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { RoomObjectItem } from './RoomObjectItem';
export class RoomWidgetChooserContentEvent extends RoomWidgetUpdateEvent
{
public static RWCCE_USER_CHOOSER_CONTENT: string = 'RWCCE_USER_CHOOSER_CONTENT';
public static RWCCE_FURNI_CHOOSER_CONTENT: string = 'RWCCE_FURNI_CHOOSER_CONTENT';
private _items: RoomObjectItem[];
private _Str_10043: boolean;
constructor(k: string, _arg_2: RoomObjectItem[], _arg_3: boolean = false)
{
super(k);
this._items = _arg_2.slice();
this._Str_10043 = _arg_3;
}
public get items(): RoomObjectItem[]
{
return this._items;
}
public get _Str_2799(): boolean
{
return this._Str_10043;
}
}

View File

@ -0,0 +1,35 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetClothingChangeUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWCCUE_SHOW_GENDER_SELECTION: string = 'RWCCUE_SHOW_GENDER_SELECTION';
public static RWCCUE_SHOW_CLOTHING_EDITOR: string = 'RWCCUE_SHOW_CLOTHING_EDITOR';
private _Str_2319: number = -1;
private _Str_3014: number = -1;
private _roomId: number = -1;
constructor(k: string, _arg_2: number = 0, _arg_3: number = 0, _arg_4: number = 0)
{
super(k);
this._Str_2319 = _arg_2;
this._Str_3014 = _arg_3;
this._roomId = _arg_4;
}
public get _Str_1577(): number
{
return this._Str_2319;
}
public get _Str_4093(): number
{
return this._Str_3014;
}
public get roomId(): number
{
return this._roomId;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { ConfirmPetBreedingPetData } from './ConfirmPetBreedingPetData';
export class RoomWidgetConfirmPetBreedingEvent extends RoomWidgetUpdateEvent
{
public static RWPPBE_CONFIRM_PET_BREEDING_: string = 'RWPPBE_CONFIRM_PET_BREEDING_';
private _Str_5743: number;
private _pet1: ConfirmPetBreedingPetData;
private _pet2: ConfirmPetBreedingPetData;
private _Str_4447: string[];
private _Str_6321: number;
constructor(k: number, _arg_2: ConfirmPetBreedingPetData, _arg_3: ConfirmPetBreedingPetData, _arg_4: string[], _arg_5: number)
{
super(RoomWidgetConfirmPetBreedingEvent.RWPPBE_CONFIRM_PET_BREEDING_);
this._Str_5743 = k;
this._pet1 = _arg_2;
this._pet2 = _arg_3;
this._Str_4447 = _arg_4;
this._Str_6321 = _arg_5;
}
public get _Str_10346(): string[]
{
return this._Str_4447;
}
public get _Str_12369(): number
{
return this._Str_5743;
}
public get pet1(): ConfirmPetBreedingPetData
{
return this._pet1;
}
public get pet2(): ConfirmPetBreedingPetData
{
return this._pet2;
}
public get _Str_16867(): number
{
return this._Str_6321;
}
}

View File

@ -0,0 +1,30 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetConfirmPetBreedingResultEvent extends RoomWidgetUpdateEvent
{
public static RWPPBE_CONFIRM_PET_BREEDING_RESULT: string = 'RWPPBE_CONFIRM_PET_BREEDING_RESULT';
public static _Str_5196: number = 0;
public static _Str_16705: number = 1;
public static _Str_18855: number = 2;
public static INVALID_NAME: number = 3;
private _Str_6143: number;
private _result: number;
constructor(k: number, _arg_2: number)
{
super(RoomWidgetConfirmPetBreedingResultEvent.RWPPBE_CONFIRM_PET_BREEDING_RESULT);
this._Str_6143 = k;
this._result = _arg_2;
}
public get _Str_12769(): number
{
return this._Str_6143;
}
public get result(): number
{
return this._result;
}
}

View File

@ -0,0 +1,34 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetCreditFurniUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWCFUE_CREDIT_FURNI_UPDATE: string = 'RWCFUE_CREDIT_FURNI_UPDATE';
private _objectId: number;
private _value: number;
private _furniType: string;
constructor(k: string, furniType: string, _arg_2: number, _arg_3: number)
{
super(k);
this._value = _arg_3;
this._objectId = _arg_2;
this._furniType = furniType;
}
public get value(): number
{
return this._value;
}
public get objectId(): number
{
return this._objectId;
}
public get furniType(): string
{
return this._furniType;
}
}

View File

@ -0,0 +1,20 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetDanceUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUE_DANCE: string = 'RWUE_DANCE';
private _style: number;
constructor(k: number)
{
super(RoomWidgetDanceUpdateEvent.RWUE_DANCE);
this._style = k;
}
public get style(): number
{
return this._style;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetDimmerStateUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWDSUE_DIMMER_STATE: string = 'RWDSUE_DIMMER_STATE';
private _state: number;
private _presetId: number;
private _effectId: number;
private _color: number;
private _brightness: number;
constructor(state: number, presetId: number, effectId: number, color: number, brightness: number)
{
super(RoomWidgetDimmerStateUpdateEvent.RWDSUE_DIMMER_STATE);
this._state = state;
this._presetId = presetId;
this._effectId = effectId;
this._color = color;
this._brightness = brightness;
}
public get state(): number
{
return this._state;
}
public get _Str_14686(): number
{
return this._presetId;
}
public get _Str_6815(): number
{
return this._effectId;
}
public get color(): number
{
return this._color;
}
public get _Str_5123(): number
{
return this._brightness;
}
}

View File

@ -0,0 +1,53 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { RoomDimmerPreset } from './roomDimmerPreset';
export class RoomWidgetDimmerUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWDUE_PRESETS: string = 'RWDUE_PRESETS';
public static RWDUE_HIDE: string = 'RWDUE_HIDE';
private _selectedPresetId: number = 0;
private _presets: RoomDimmerPreset[];
constructor(k: string)
{
super(k);
this._presets = [];
}
public get _Str_10888(): number
{
return this._presets.length;
}
public get presets(): RoomDimmerPreset[]
{
return this._presets;
}
public get selectedPresetId(): number
{
return this._selectedPresetId;
}
public set selectedPresetId(k: number)
{
this._selectedPresetId = k;
}
public setPresetValues(k: number, _arg_2: number, _arg_3: number, _arg_4: number):void
{
const _local_5 = new RoomDimmerPreset(k, _arg_2, _arg_3, _arg_4);
this._presets[(k - 1)] = _local_5;
}
//_Str_14989
public getPresetNumber(k: number): RoomDimmerPreset
{
if(((k < 0) || (k >= this._presets.length))) return null;
return this._presets[k];
}
}

View File

@ -0,0 +1,22 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetDoorbellEvent extends RoomWidgetUpdateEvent
{
public static RWDE_RINGING: string = 'RWDE_RINGING';
public static REJECTED: string = 'RWDE_REJECTED';
public static RWDE_ACCEPTED: string = 'RWDE_ACCEPTED';
private _userName: string = '';
constructor(k: string, _arg_2: string)
{
super(k);
this._userName = _arg_2;
}
public get userName(): string
{
return this._userName;
}
}

View File

@ -0,0 +1,49 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetEcotronBoxDataUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWEBDUE_PACKAGEINFO: string = 'RWEBDUE_PACKAGEINFO';
public static RWEBDUE_CONTENTS: string = 'RWEBDUE_CONTENTS';
private _Str_2319: number = -1;
private _text: string;
private _Str_6880: string;
private _controller: boolean;
private _Str_12168: string;
constructor(k: string, _arg_2: number, _arg_3: string, _arg_4: string, _arg_5: boolean = false, _arg_6: string = null)
{
super(k);
this._Str_2319 = _arg_2;
this._text = _arg_3;
this._Str_6880 = _arg_4;
this._controller = _arg_5;
this._Str_12168 = _arg_6;
}
public get _Str_1577(): number
{
return this._Str_2319;
}
public get text(): string
{
return this._text;
}
public get controller(): boolean
{
return this._controller;
}
public get _Str_11625(): string
{
return this._Str_12168;
}
public get _Str_17878(): string
{
return this._Str_6880;
}
}

View File

@ -0,0 +1,20 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetFloodControlEvent extends RoomWidgetUpdateEvent
{
public static RWFCE_FLOOD_CONTROL: string = 'RWFCE_FLOOD_CONTROL';
private _seconds: number = 0;
constructor(k: number)
{
super(RoomWidgetFloodControlEvent.RWFCE_FLOOD_CONTROL);
this._seconds = k;
}
public get seconds(): number
{
return this._seconds;
}
}

View File

@ -0,0 +1,35 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetFriendRequestUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWFRUE_SHOW_FRIEND_REQUEST: string = 'RWFRUE_SHOW_FRIEND_REQUEST';
public static RWFRUE_HIDE_FRIEND_REQUEST: string = 'RWFRUE_HIDE_FRIEND_REQUEST';
private _requestId: number;
private _userId: number;
private _userName: string;
constructor(type: string, requestId: number, userId: number = 0, userName: string = null)
{
super(type);
this._requestId = requestId;
this._userId = userId;
this._userName = userName;
}
public get requestId(): number
{
return this._requestId;
}
public get userId(): number
{
return this._userId;
}
public get userName(): string
{
return this._userName;
}
}

View File

@ -0,0 +1,262 @@
import { IObjectData, RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetFurniInfostandUpdateEvent extends RoomWidgetUpdateEvent
{
public static FURNI: string = 'RWFIUE_FURNI';
private _id: number = 0;
private _category: number = 0;
private _name: string = '';
private _description: string = '';
private _image: HTMLImageElement = null;
private _isWallItem: boolean = false;
private _isStickie: boolean = false;
private _isRoomOwner: boolean = false;
private _roomControllerLevel: number = 0;
private _isAnyRoomController: boolean = false;
private _expiration: number = -1;
private _purchaseCatalogPageId: number = -1;
private _purchaseOfferId: number = -1;
private _extraParam: string = '';
private _isOwner: boolean = false;
private _stuffData: IObjectData = null;
private _groupId: number = 0;
private _ownerId: number = 0;
private _ownerName: string = '';
private _usagePolicy: number = 0;
private _rentCatalogPageId: number = -1;
private _rentOfferId: number = -1;
private _purchaseCouldBeUsedForBuyout: boolean = false;
private _rentCouldBeUsedForBuyout: boolean = false;
private _availableForBuildersClub: boolean = false;
public set id(k: number)
{
this._id = k;
}
public get id(): number
{
return this._id;
}
public set category(k: number)
{
this._category = k;
}
public get category(): number
{
return this._category;
}
public set name(k: string)
{
this._name = k;
}
public get name(): string
{
return this._name;
}
public set description(k: string)
{
this._description = k;
}
public get description(): string
{
return this._description;
}
public set image(k: HTMLImageElement)
{
this._image = k;
}
public get image(): HTMLImageElement
{
return this._image;
}
public set isWallItem(k: boolean)
{
this._isWallItem = k;
}
public get isWallItem(): boolean
{
return this._isWallItem;
}
public set isStickie(k: boolean)
{
this._isStickie = k;
}
public get isStickie(): boolean
{
return this._isStickie;
}
public set isRoomOwner(k: boolean)
{
this._isRoomOwner = k;
}
public get isRoomOwner(): boolean
{
return this._isRoomOwner;
}
public set roomControllerLevel(k: number)
{
this._roomControllerLevel = k;
}
public get roomControllerLevel(): number
{
return this._roomControllerLevel;
}
public set isAnyRoomOwner(k: boolean)
{
this._isAnyRoomController = k;
}
public get isAnyRoomOwner(): boolean
{
return this._isAnyRoomController;
}
public set expiration(k: number)
{
this._expiration = k;
}
public get expiration(): number
{
return this._expiration;
}
public set purchaseOfferId(k: number)
{
this._purchaseOfferId = k;
}
public get purchaseOfferId(): number
{
return this._purchaseOfferId;
}
public set extraParam(k: string)
{
this._extraParam = k;
}
public get extraParam(): string
{
return this._extraParam;
}
public set isOwner(k: boolean)
{
this._isOwner = k;
}
public get isOwner(): boolean
{
return this._isOwner;
}
public set stuffData(k: IObjectData)
{
this._stuffData = k;
}
public get stuffData(): IObjectData
{
return this._stuffData;
}
public set groupId(k: number)
{
this._groupId = k;
}
public get groupId(): number
{
return this._groupId;
}
public set ownerId(k: number)
{
this._ownerId = k;
}
public get ownerId(): number
{
return this._ownerId;
}
public set ownerName(k: string)
{
this._ownerName = k;
}
public get ownerName(): string
{
return this._ownerName;
}
public set usagePolicy(k: number)
{
this._usagePolicy = k;
}
public get usagePolicy(): number
{
return this._usagePolicy;
}
public set rentOfferId(k: number)
{
this._rentOfferId = k;
}
public get rentOfferId(): number
{
return this._rentOfferId;
}
public get purchaseCouldBeUsedForBuyout(): boolean
{
return this._purchaseCouldBeUsedForBuyout;
}
public set purchaseCouldBeUsedForBuyout(k: boolean)
{
this._purchaseCouldBeUsedForBuyout = k;
}
public get rentCouldBeUsedForBuyout(): boolean
{
return this._rentCouldBeUsedForBuyout;
}
public set rentCouldBeUsedForBuyout(k: boolean)
{
this._rentCouldBeUsedForBuyout = k;
}
public get availableForBuildersClub(): boolean
{
return this._availableForBuildersClub;
}
public set availableForBuildersClub(k: boolean)
{
this._availableForBuildersClub = k;
}
}

View File

@ -0,0 +1,49 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPetBreedingEvent extends RoomWidgetUpdateEvent
{
public static _Str_18166: number = 0;
public static _Str_16941: number = 1;
public static _Str_17835: number = 2;
public static _Str_16930: number = 3;
public static RWPPBE_PET_BREEDING_: string = 'RWPPBE_PET_BREEDING_';
private _state: number;
private _Str_6614: number;
private _Str_6649: number;
constructor()
{
super(RoomWidgetPetBreedingEvent.RWPPBE_PET_BREEDING_);
}
public get state(): number
{
return this._state;
}
public set state(k: number)
{
this._state = k;
}
public get _Str_7440(): number
{
return this._Str_6614;
}
public set _Str_7440(k: number)
{
this._Str_6614 = k;
}
public get _Str_7663(): number
{
return this._Str_6649;
}
public set _Str_7663(k: number)
{
this._Str_6649 = k;
}
}

View File

@ -0,0 +1,28 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { _Str_3801 } from './_Str_3801';
export class RoomWidgetPetBreedingResultEvent extends RoomWidgetUpdateEvent
{
public static RWPBRE_PET_BREEDING_RESULT: string = 'RWPBRE_PET_BREEDING_RESULT';
private _Str_3111: _Str_3801;
private _resultData2: _Str_3801;
constructor(k: _Str_3801, _arg_2: _Str_3801)
{
super(RoomWidgetPetBreedingResultEvent.RWPBRE_PET_BREEDING_RESULT);
this._Str_3111 = k;
this._resultData2 = _arg_2;
}
public get _Str_3713(): _Str_3801
{
return this._Str_3111;
}
public get resultData2(): _Str_3801
{
return this._resultData2;
}
}

View File

@ -0,0 +1,27 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPetFigureUpdateEvent extends RoomWidgetUpdateEvent
{
public static PET_FIGURE_UPDATE: string = 'RWPIUE_PET_FIGURE_UPDATE';
private _petId: number;
private _image: HTMLImageElement;
constructor(petId: number, image: HTMLImageElement)
{
super(RoomWidgetPetFigureUpdateEvent.PET_FIGURE_UPDATE);
this._petId = petId;
this._image = image;
}
public get petId(): number
{
return this._petId;
}
public get image(): HTMLImageElement
{
return this._image;
}
}

View File

@ -0,0 +1,348 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { Texture } from 'pixi.js';
export class RoomWidgetPetInfostandUpdateEvent extends RoomWidgetUpdateEvent
{
public static PET_INFO: string = 'RWPIUE_PET_INFO';
private _level: number;
private _maximumLevel: number;
private _experience: number;
private _levelExperienceGoal: number;
private _energy: number;
private _maximumEnergy: number;
private _happyness: number;
private _maximumHappyness: number;
private _Str_3973: number;
private _respect: number;
private _age: number;
private _name: string;
private _id: number;
private _image: Texture;
private _Str_6689: number;
private _Str_20932: number;
private _Str_10121: boolean;
private _ownerId: number;
private _ownerName: string;
private _Str_11149: boolean;
private _Str_2775: number;
private _unknownRarityLevel: number;
private _saddle: boolean;
private _rider: boolean;
private _breedable: boolean;
private _Str_4460: number[];
private _publiclyRideable: number;
private _fullyGrown: boolean;
private _dead: boolean;
private _rarityLevel: number;
private _maximumTimeToLive: number;
private _remainingTimeToLive: number;
private _remainingGrowTime: number;
private _publiclyBreedable: boolean;
constructor(k: number, _arg_2: number, _arg_3: string, _arg_4: number, _arg_5: Texture, _arg_6: boolean, _arg_7: number, _arg_8: string, _arg_9: number, _arg_10: number)
{
super(RoomWidgetPetInfostandUpdateEvent.PET_INFO);
this._Str_6689 = k;
this._Str_20932 = _arg_2;
this._name = _arg_3;
this._id = _arg_4;
this._image = _arg_5;
this._Str_10121 = _arg_6;
this._ownerId = _arg_7;
this._ownerName = _arg_8;
this._Str_2775 = _arg_9;
this._unknownRarityLevel = _arg_10;
}
public get name(): string
{
return this._name;
}
public get image(): Texture
{
return this._image;
}
public get id(): number
{
return this._id;
}
public get _Str_4355(): number
{
return this._Str_6689;
}
public get _Str_14767(): number
{
return this._Str_20932;
}
public get _Str_5175(): boolean
{
return this._Str_10121;
}
public get ownerId(): number
{
return this._ownerId;
}
public get ownerName(): string
{
return this._ownerName;
}
public get _Str_2707(): number
{
return this._Str_2775;
}
public get unknownRarityLevel(): number
{
return this._unknownRarityLevel;
}
public get level(): number
{
return this._level;
}
public set level(k: number)
{
this._level = k;
}
public get maximumLevel(): number
{
return this._maximumLevel;
}
public set maximumLevel(k: number)
{
this._maximumLevel = k;
}
public get experience(): number
{
return this._experience;
}
public set experience(k: number)
{
this._experience = k;
}
public get levelExperienceGoal(): number
{
return this._levelExperienceGoal;
}
public set levelExperienceGoal(k: number)
{
this._levelExperienceGoal = k;
}
public get energy(): number
{
return this._energy;
}
public set energy(k: number)
{
this._energy = k;
}
public get maximumEnergy(): number
{
return this._maximumEnergy;
}
public set maximumEnergy(k: number)
{
this._maximumEnergy = k;
}
public get happyness(): number
{
return this._happyness;
}
public set happyness(k: number)
{
this._happyness = k;
}
public get maximumHappyness(): number
{
return this._maximumHappyness;
}
public set maximumHappyness(k: number)
{
this._maximumHappyness = k;
}
public get _Str_2985(): number
{
return this._Str_3973;
}
public set _Str_2985(k: number)
{
this._Str_3973 = k;
}
public get _Str_5114(): boolean
{
return this._Str_11149;
}
public set _Str_5114(k: boolean)
{
this._Str_11149 = k;
}
public get respect(): number
{
return this._respect;
}
public set respect(k: number)
{
this._respect = k;
}
public get age(): number
{
return this._age;
}
public set age(k: number)
{
this._age = k;
}
public get saddle(): boolean
{
return this._saddle;
}
public set saddle(k: boolean)
{
this._saddle = k;
}
public get rider(): boolean
{
return this._rider;
}
public set rider(k: boolean)
{
this._rider = k;
}
public get breedable(): boolean
{
return this._breedable;
}
public set breedable(k: boolean)
{
this._breedable = k;
}
public get _Str_3307(): number[]
{
return this._Str_4460;
}
public set _Str_3307(k: number[])
{
this._Str_4460 = k;
}
public get publiclyRideable(): number
{
return this._publiclyRideable;
}
public set publiclyRideable(k: number)
{
this._publiclyRideable = k;
}
public get fullyGrown(): boolean
{
return this._fullyGrown;
}
public set fullyGrown(k: boolean)
{
this._fullyGrown = k;
}
public get dead(): boolean
{
return this._dead;
}
public set dead(k: boolean)
{
this._dead = k;
}
public get rarityLevel(): number
{
return this._rarityLevel;
}
public set rarityLevel(k: number)
{
this._rarityLevel = k;
}
public get maximumTimeToLive(): number
{
return this._maximumTimeToLive;
}
public set maximumTimeToLive(k: number)
{
this._maximumTimeToLive = k;
}
public get remainingTimeToLive(): number
{
return this._remainingTimeToLive;
}
public set remainingTimeToLive(k: number)
{
this._remainingTimeToLive = k;
}
public get remainingGrowTime(): number
{
return this._remainingGrowTime;
}
public set remainingGrowTime(k: number)
{
this._remainingGrowTime = k;
}
public get publiclyBreedable(): boolean
{
return this._publiclyBreedable;
}
public set publiclyBreedable(k: boolean)
{
this._publiclyBreedable = k;
}
}

View File

@ -0,0 +1,27 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPetLevelUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWPLUE_PET_LEVEL_UPDATE: string = 'RWPLUE_PET_LEVEL_UPDATE';
private _petId: number;
private _level: number;
constructor(petId: number, level: number)
{
super(RoomWidgetPetLevelUpdateEvent.RWPLUE_PET_LEVEL_UPDATE);
this._petId = petId;
this._level = level;
}
public get petId(): number
{
return this._petId;
}
public get level(): number
{
return this._level;
}
}

View File

@ -0,0 +1,51 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { Texture } from 'pixi.js';
export class RoomWidgetPetPackageUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWOPPUE_OPEN_PET_PACKAGE_REQUESTED: string = 'RWOPPUE_OPEN_PET_PACKAGE_REQUESTED';
public static RWOPPUE_OPEN_PET_PACKAGE_RESULT: string = 'RWOPPUE_OPEN_PET_PACKAGE_RESULT';
public static RWOPPUE_OPEN_PET_PACKAGE_UPDATE_PET_IMAGE: string = 'RWOPPUE_OPEN_PET_PACKAGE_UPDATE_PET_IMAGE';
private _Str_2319: number = -1;
private _typeId: number = -1;
private _image: Texture = null;
private _nameValidationStatus: number = 0;
private _nameValidationInfo: string = null;
constructor(k: string, _arg_2: number, _arg_3: Texture, _arg_4: number, _arg_5: string, _arg_6: number)
{
super(k);
this._Str_2319 = _arg_2;
this._image = _arg_3;
this._nameValidationStatus = _arg_4;
this._nameValidationInfo = _arg_5;
this._typeId = _arg_6;
}
public get nameValidationStatus(): number
{
return this._nameValidationStatus;
}
public get nameValidationInfo(): string
{
return this._nameValidationInfo;
}
public get image(): Texture
{
return this._image;
}
public get _Str_1577(): number
{
return this._Str_2319;
}
public get typeId(): number
{
return this._typeId;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPetStatusUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWPIUE_PET_STATUS_UPDATE: string = 'RWPIUE_PET_STATUS_UPDATE';
private _Str_2388: number;
private _Str_3101: boolean;
private _Str_3297: boolean;
private _Str_3284: boolean;
private _Str_3095: boolean;
constructor(k: number, _arg_2: boolean, _arg_3: boolean, _arg_4: boolean, _arg_5: boolean)
{
super(RoomWidgetPetStatusUpdateEvent.RWPIUE_PET_STATUS_UPDATE);
this._Str_2388 = k;
this._Str_3101 = _arg_2;
this._Str_3297 = _arg_3;
this._Str_3284 = _arg_4;
this._Str_3095 = _arg_5;
}
public get _Str_2508(): number
{
return this._Str_2388;
}
public get _Str_2934(): boolean
{
return this._Str_3101;
}
public get _Str_3068(): boolean
{
return this._Str_3297;
}
public get _Str_2898(): boolean
{
return this._Str_3284;
}
public get _Str_2921(): boolean
{
return this._Str_3095;
}
}

View File

@ -0,0 +1,25 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPlayListEditorEvent extends RoomWidgetUpdateEvent
{
public static RWPLEE_SHOW_PLAYLIST_EDITOR: string = 'RWPLEE_SHOW_PLAYLIST_EDITOR';
public static RWPLEE_HIDE_PLAYLIST_EDITOR: string = 'RWPLEE_HIDE_PLAYLIST_EDITOR';
public static RWPLEE_INVENTORY_UPDATED: string = 'RWPLEE_INVENTORY_UPDATED';
public static RWPLEE_SONG_DISK_INVENTORY_UPDATED: string = 'RWPLEE_SONG_DISK_INVENTORY_UPDATED';
public static RWPLEE_PLAY_LIST_UPDATED: string = 'RWPLEE_PLAY_LIST_UPDATED';
public static RWPLEE_PLAY_LIST_FULL: string = 'RWPLEE_PLAY_LIST_FULL';
private _furniId: number;
constructor(k: string, _arg_2: number = -1)
{
super(k);
this._furniId = _arg_2;
}
public get furniId(): number
{
return this._furniId;
}
}

View File

@ -0,0 +1,36 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPlayListEditorNowPlayingEvent extends RoomWidgetUpdateEvent
{
public static RWPLENPE_USER_PLAY_SONG: string = 'RWPLENPE_USER_PLAY_SONG';
public static RWPLENPW_USER_STOP_SONG: string = 'RWPLENPW_USER_STOP_SONG';
public static RWPLENPE_SONG_CHANGED: string = 'RWPLENPE_SONG_CHANGED';
private _id: number;
private _position: number;
private _priority: number;
constructor(k: string, _arg_2: number, _arg_3: number, _arg_4: number)
{
super(k);
this._id = _arg_2;
this._position = _arg_3;
this._priority = _arg_4;
}
public get id(): number
{
return this._id;
}
public get position(): number
{
return this._position;
}
public get priority(): number
{
return this._priority;
}
}

View File

@ -0,0 +1,110 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWPUW_OFFER: string = 'RWPUW_OFFER';
public static ERROR: string = 'RWPUW_ERROR';
public static RWPUW_CONTENT: string = 'RWPUW_CONTENT';
private _id: number = -1;
private _summary: string;
private _headline: string;
private _Str_5366: number = 0;
private _Str_5879: string = '';
private _Str_4781: string = '';
private _Str_5432: string[] = null;
private _Str_20371: string = '';
private _Str_4353: boolean = false;
constructor(k: number, _arg_2: string)
{
super(_arg_2);
this._id = k;
}
public get id(): number
{
return this._id;
}
public get summary(): string
{
return this._summary;
}
public set summary(k: string)
{
this._summary = k;
}
public get headline(): string
{
return this._headline;
}
public set headline(k: string)
{
this._headline = k;
}
public get _Str_6760(): number
{
return this._Str_5366;
}
public set _Str_6760(k: number)
{
this._Str_5366 = k;
}
public get _Str_6013(): string
{
return this._Str_5879;
}
public set _Str_6013(k: string)
{
this._Str_5879 = k;
}
public get _Str_5838(): string
{
return this._Str_4781;
}
public set _Str_5838(k: string)
{
this._Str_4781 = k;
}
public get _Str_5643(): string[]
{
return this._Str_5432;
}
public set _Str_5643(k: string[])
{
this._Str_5432 = k;
}
public get _Str_5302(): string
{
return this._Str_20371;
}
public set _Str_5302(k: string)
{
this._Str_20371 = k;
}
public get _Str_6196(): boolean
{
return this._Str_4353;
}
public set _Str_6196(k: boolean)
{
this._Str_4353 = k;
}
}

View File

@ -0,0 +1,116 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPresentDataUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWPDUE_PACKAGEINFO: string = 'RWPDUE_PACKAGEINFO';
public static RWPDUE_CONTENTS: string = 'RWPDUE_CONTENTS';
public static RWPDUE_CONTENTS_CLUB: string = 'RWPDUE_CONTENTS_CLUB';
public static RWPDUE_CONTENTS_FLOOR: string = 'RWPDUE_CONTENTS_FLOOR';
public static RWPDUE_CONTENTS_LANDSCAPE: string = 'RWPDUE_CONTENTS_LANDSCAPE';
public static RWPDUE_CONTENTS_WALLPAPER: string = 'RWPDUE_CONTENTS_WALLPAPER';
public static RWPDUE_CONTENTS_IMAGE: string = 'RWPDUE_CONTENTS_IMAGE';
private _objectId: number = -1;
private _classId: number = 0;
private _itemType: string = '';
private _giftMessage: string = '';
private _extra: string = null;
private _isController: boolean;
private _purchaserName: string;
private _purchaserFigure: string;
private _placedItemId: number = -1;
private _placedItemType: string = '';
private _placedInRoom: boolean;
constructor(type: string, objectId: number, giftMessage: string, isOwnerOfFurniture: boolean = false, extra: string = null, purchaserName: string = null, purchaserFigure: string = null)
{
super(type);
this._objectId = objectId;
this._giftMessage = giftMessage;
this._extra = extra;
this._isController = isOwnerOfFurniture;
this._purchaserName = purchaserName;
this._purchaserFigure = purchaserFigure;
}
public get objectId(): number
{
return this._objectId;
}
public get classId(): number
{
return this._classId;
}
public set classId(k: number)
{
this._classId = k;
}
public get itemType(): string
{
return this._itemType;
}
public set itemType(k: string)
{
this._itemType = k;
}
public get giftMessage(): string
{
return this._giftMessage;
}
public get extra(): string
{
return this._extra;
}
public get isController(): boolean
{
return this._isController;
}
public get purchaserName(): string
{
return this._purchaserName;
}
public get purchaserFigure(): string
{
return this._purchaserFigure;
}
public get placedItemId(): number
{
return this._placedItemId;
}
public set placedItemId(k: number)
{
this._placedItemId = k;
}
public get placedInRoom(): boolean
{
return this._placedInRoom;
}
public set placedInRoom(k: boolean)
{
this._placedInRoom = k;
}
public get placedItemType(): string
{
return this._placedItemType;
}
public set placedItemType(k: string)
{
this._placedItemType = k;
}
}

View File

@ -0,0 +1,22 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetPurseUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWPUE_CREDIT_BALANCE: string = 'RWPUE_CREDIT_BALANCE';
public static RWPUE_PIXEL_BALANCE: string = 'RWPUE_PIXEL_BALANCE';
public static RWPUE_SHELL_BALANCE: string = 'RWPUE_SHELL_BALANCE';
private _balance: number;
constructor(k: string, _arg_2: number)
{
super(k);
this._balance = _arg_2;
}
public get balance(): number
{
return this._balance;
}
}

View File

@ -0,0 +1,158 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetRentableBotInfostandUpdateEvent extends RoomWidgetUpdateEvent
{
public static RENTABLE_BOT: string = 'RWRBIUE_RENTABLE_BOT';
public static _Str_7492: string = 'RENTABLE_BOT';
private _name: string = '';
private _motto: string = '';
private _Str_4900: number = 0;
private _figure: string = '';
private _badges: string[];
private _caryId: number = 0;
private _Str_5131: number = 0;
private _ownerId: number;
private _ownerName: string;
private _Str_4026: boolean = false;
private _Str_4028: boolean = false;
private _roomControllerLevel: number = 0;
private _Str_3986: number[];
constructor()
{
super(RoomWidgetRentableBotInfostandUpdateEvent.RENTABLE_BOT);
this._badges = [];
}
public set name(k: string)
{
this._name = k;
}
public get name(): string
{
return this._name;
}
public set motto(k: string)
{
this._motto = k;
}
public get motto(): string
{
return this._motto;
}
public set id(k: number)
{
this._Str_4900 = k;
}
public get id(): number
{
return this._Str_4900;
}
public set figure(k: string)
{
this._figure = k;
}
public get figure(): string
{
return this._figure;
}
public set badges(k: string[])
{
this._badges = k;
}
public get badges(): string[]
{
return this._badges;
}
public get ownerId(): number
{
return this._ownerId;
}
public set ownerId(k: number)
{
this._ownerId = k;
}
public get ownerName(): string
{
return this._ownerName;
}
public set ownerName(k: string)
{
this._ownerName = k;
}
public set _Str_3246(k: boolean)
{
this._Str_4026 = k;
}
public get _Str_3246(): boolean
{
return this._Str_4026;
}
public set roomControllerLevel(k: number)
{
this._roomControllerLevel = k;
}
public get roomControllerLevel(): number
{
return this._roomControllerLevel;
}
public set _Str_3529(k: boolean)
{
this._Str_4028 = k;
}
public get _Str_3529(): boolean
{
return this._Str_4028;
}
public set carryId(k: number)
{
this._caryId = k;
}
public get carryId(): number
{
return this._caryId;
}
public set roomIndex(k: number)
{
this._Str_5131 = k;
}
public get roomIndex(): number
{
return this._Str_5131;
}
public get botSkills(): number[]
{
return this._Str_3986;
}
public set botSkills(k: number[])
{
this._Str_3986 = k;
}
}

View File

@ -0,0 +1,27 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetRentableBotSkillListUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWRBSLUE_SKILL_LIST: string = 'RWRBSLUE_SKILL_LIST';
private _Str_2753: number;
private _Str_6548: string[];
constructor(k: number, _arg_2: string[])
{
super(RoomWidgetRentableBotSkillListUpdateEvent.RWRBSLUE_SKILL_LIST);
this._Str_2753 = k;
this._Str_6548 = _arg_2;
}
public get _Str_10833(): string[]
{
return this._Str_6548;
}
public get _Str_5455(): number
{
return this._Str_2753;
}
}

View File

@ -0,0 +1,21 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetRoomEngineUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWREUE_GAME_MODE: string = 'RWREUE_GAME_MODE';
public static RWREUE_NORMAL_MODE: string = 'RWREUE_NORMAL_MODE';
private _roomId: number = 0;
constructor(k: string, _arg_2: number)
{
super(k);
this._roomId = _arg_2;
}
public get roomId(): number
{
return this._roomId;
}
}

View File

@ -0,0 +1,41 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetRoomObjectUpdateEvent extends RoomWidgetUpdateEvent
{
public static OBJECT_SELECTED: string = 'RWROUE_OBJECT_SELECTED';
public static OBJECT_DESELECTED: string = 'RWROUE_OBJECT_DESELECTED';
public static USER_REMOVED: string = 'RWROUE_USER_REMOVED';
public static FURNI_REMOVED: string = 'RWROUE_FURNI_REMOVED';
public static FURNI_ADDED: string = 'RWROUE_FURNI_ADDED';
public static USER_ADDED: string = 'RWROUE_USER_ADDED';
public static OBJECT_ROLL_OVER: string = 'RWROUE_OBJECT_ROLL_OVER';
public static OBJECT_ROLL_OUT: string = 'RWROUE_OBJECT_ROLL_OUT';
private _id: number;
private _category: number;
private _roomId: number;
constructor(type: string, id: number, category: number, roomId: number)
{
super(type);
this._id = id;
this._category = category;
this._roomId = roomId;
}
public get id(): number
{
return this._id;
}
public get category(): number
{
return this._category;
}
public get roomId(): number
{
return this._roomId;
}
}

View File

@ -0,0 +1,42 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetRoomQueueUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWRQUE_VISITOR_QUEUE_STATUS: string = 'RWRQUE_VISITOR_QUEUE_STATUS';
public static RWRQUE_SPECTATOR_QUEUE_STATUS: string = 'RWRQUE_SPECTATOR_QUEUE_STATUS';
private _position: number;
private _Str_19946: boolean;
private _isActive: boolean;
private _Str_9011: boolean;
constructor(k: string, _arg_2: number, _arg_3: boolean, _arg_4: boolean, _arg_5: boolean)
{
super(k);
this._position = _arg_2;
this._Str_19946 = _arg_3;
this._isActive = _arg_4;
this._Str_9011 = _arg_5;
}
public get position(): number
{
return this._position;
}
public get _Str_25661(): boolean
{
return this._Str_19946;
}
public get isActive(): boolean
{
return this._isActive;
}
public get _Str_23206(): boolean
{
return this._Str_9011;
}
}

View File

@ -0,0 +1,41 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { Point, Rectangle } from 'pixi.js';
export class RoomWidgetRoomViewUpdateEvent extends RoomWidgetUpdateEvent
{
public static SIZE_CHANGED: string = 'RWRVUE_ROOM_VIEW_SIZE_CHANGED';
public static SCALE_CHANGED: string = 'RWRVUE_ROOM_VIEW_SCALE_CHANGED';
public static POSITION_CHANGED: string = 'RWRVUE_ROOM_VIEW_POSITION_CHANGED';
private _roomViewRectangle: Rectangle;
private _positionDelta: Point;
private _scale: number;
constructor(type: string, view: Rectangle = null, position: Point = null, scale: number = 0)
{
super(type);
this._roomViewRectangle = view;
this._positionDelta = position;
this._scale = scale;
}
public get roomViewRectangle(): Rectangle
{
if(!this._roomViewRectangle) return null;
return this._roomViewRectangle.clone();
}
public get positionDelta(): Point
{
if(!this._positionDelta) return null;
return this._positionDelta.clone();
}
public get scale(): number
{
return this._scale;
}
}

View File

@ -0,0 +1,34 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetSettingsUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWSUE_SETTINGS: string = 'RWSUE_SETTINGS';
private _Str_9898: number;
private _Str_2909: number;
private _Str_2933: number;
constructor(k: string, _arg_2: number, _arg_3: number, _arg_4: number)
{
super(k);
this._Str_9898 = _arg_4;
this._Str_2909 = _arg_3;
this._Str_2933 = _arg_2;
}
public get _Str_16610(): number
{
return this._Str_9898;
}
public get _Str_3488(): number
{
return this._Str_2909;
}
public get _Str_3410(): number
{
return this._Str_2933;
}
}

View File

@ -0,0 +1,6 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetShowPlaceholderEvent extends RoomWidgetUpdateEvent
{
public static RWSPE_SHOW_PLACEHOLDER: string = 'RWSPE_SHOW_PLACEHOLDER';
}

View File

@ -0,0 +1,34 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetSpamWallPostItEditEvent extends RoomWidgetUpdateEvent
{
public static RWSWPUE_OPEN_EDITOR: string = 'RWSWPUE_OPEN_EDITOR';
private _Str_2319: number;
private _location: string;
private _Str_3796: string;
constructor(k: string, _arg_2: number, _arg_3: string, _arg_4: string)
{
super(k);
this._Str_2319 = _arg_2;
this._location = _arg_3;
this._Str_3796 = _arg_4;
}
public get location(): string
{
return this._location;
}
public get _Str_1577(): number
{
return this._Str_2319;
}
public get _Str_1723(): string
{
return this._Str_3796;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetStickieDataUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWSDUE_STICKIE_DATA: string = 'RWSDUE_STICKIE_DATA';
private _Str_2319: number = -1;
private _Str_3796: string;
private _text: string;
private _Str_3062: string;
private _controller: boolean;
constructor(k: string, _arg_2: number, _arg_3: string, _arg_4: string, _arg_5: string, _arg_6: boolean)
{
super(k);
this._Str_2319 = _arg_2;
this._Str_3796 = _arg_3;
this._text = _arg_4;
this._Str_3062 = _arg_5;
this._controller = _arg_6;
}
public get _Str_1577(): number
{
return this._Str_2319;
}
public get _Str_1723(): string
{
return this._Str_3796;
}
public get text(): string
{
return this._text;
}
public get _Str_10471(): string
{
return this._Str_3062;
}
public get controller(): boolean
{
return this._controller;
}
}

View File

@ -0,0 +1,29 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetToolbarClickedUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUE_REQUEST_ME_MENU_TOOLBAR_CLICKED: string = 'RWUE_REQUEST_ME_MENU_TOOLBAR_CLICKED';
public static ICON_TYPE_ME_MENU: string = 'ICON_TYPE_ME_MENU';
public static ICON_TYPE_ROOM_INFO: string = 'ICON_TYPE_ROOM_INFO';
private _Str_22092: string;
private _active: boolean = false;
constructor(k: string, _arg_2: boolean = false)
{
super(RoomWidgetToolbarClickedUpdateEvent.RWUE_REQUEST_ME_MENU_TOOLBAR_CLICKED);
this._Str_22092 = k;
this._active = _arg_2;
}
public get active(): boolean
{
return this._active;
}
public get _Str_25981(): string
{
return this._Str_22092;
}
}

View File

@ -0,0 +1,48 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetTrophyUpdateEvent extends RoomWidgetUpdateEvent
{
public static TROPHY_DATA: string = 'RWTDUE_TROPHY_DATA';
private _name: string;
private _date: string;
private _message: string;
private _color: number;
private _viewType: number;
constructor(type: string, name: string, date: string, message: string, color: number, viewType: number)
{
super(type);
this._name = name;
this._date = date;
this._message = message;
this._color = color;
this._viewType = viewType;
}
public get name(): string
{
return this._name;
}
public get date(): string
{
return this._date;
}
public get message(): string
{
return this._message;
}
public get color(): number
{
return this._color;
}
public get viewType(): number
{
return this._viewType;
}
}

View File

@ -0,0 +1,20 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetUpdateEffectsUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUEUE_UPDATE_EFFECTS: string = 'RWUEUE_UPDATE_EFFECTS';
private _effects: number[];
constructor(k: number[] = null)
{
super(RoomWidgetUpdateEffectsUpdateEvent.RWUEUE_UPDATE_EFFECTS);
this._effects = k;
}
public get effects(): number[]
{
return this._effects;
}
}

View File

@ -0,0 +1,361 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetUpdateInfostandUserEvent extends RoomWidgetUpdateEvent
{
public static OWN_USER: string = 'RWUIUE_OWN_USER';
public static BOT: string = 'RWUIUE_BOT';
public static PEER: string = 'RWUIUE_PEER';
public static _Str_18400: number = 0;
public static _Str_14161: number = 2;
public static _Str_13798: number = 3;
public static _Str_7492: string = 'BOT';
private _name: string = '';
private _motto: string = '';
private _activityPoints: number;
private _Str_4900: number = 0;
private _xp: number = 0;
private _Str_3021: number;
private _figure: string = '';
private _badges: string[];
private _groupId: number = 0;
private _groupName: string = '';
private _Str_11289: string = '';
private _Str_5228: number = 0;
private _Str_5131: number = 0;
private _Str_8522: boolean = false;
private _realName: string = '';
private _Str_3947: boolean = false;
private _Str_4026: boolean = false;
private _Str_4028: boolean = false;
private _roomControllerLevel: number = 0;
private _canBeAskedForAFriend: boolean = false;
private _Str_9070: boolean = false;
private _Str_8457: boolean = false;
private _Str_8831: boolean = false;
private _Str_3437: number = 0;
private _Str_6028: boolean = false;
private _Str_6139: boolean = false;
private _Str_8973: boolean = false;
private _Str_8910: number = 0;
private _Str_8858: number = 0;
private _isFriend: boolean = false;
private _Str_4890: boolean = false;
constructor(k: string)
{
super(k);
this._badges = [];
}
public set name(k: string)
{
this._name = k;
}
public get name(): string
{
return this._name;
}
public set motto(k: string)
{
this._motto = k;
}
public get motto(): string
{
return this._motto;
}
public set activityPoints(k: number)
{
this._activityPoints = k;
}
public get activityPoints(): number
{
return this._activityPoints;
}
public set webID(k: number)
{
this._Str_4900 = k;
}
public get webID(): number
{
return this._Str_4900;
}
public set xp(k: number)
{
this._xp = k;
}
public get xp(): number
{
return this._xp;
}
public set userType(k: number)
{
this._Str_3021 = k;
}
public get userType(): number
{
return this._Str_3021;
}
public set figure(k: string)
{
this._figure = k;
}
public get figure(): string
{
return this._figure;
}
public set badges(k: string[])
{
this._badges = k;
}
public get badges(): string[]
{
return this._badges;
}
public set groupId(k: number)
{
this._groupId = k;
}
public get groupId(): number
{
return this._groupId;
}
public set groupName(k: string)
{
this._groupName = k;
}
public get groupName(): string
{
return this._groupName;
}
public set groupBadgeId(k: string)
{
this._Str_11289 = k;
}
public get groupBadgeId(): string
{
return this._Str_11289;
}
public set canBeAskedForAFriend(k: boolean)
{
this._canBeAskedForAFriend = k;
}
public get canBeAskedForAFriend(): boolean
{
return this._canBeAskedForAFriend;
}
public set respectLeft(k: number)
{
this._Str_3437 = k;
}
public get respectLeft(): number
{
return this._Str_3437;
}
public set isIgnored(k: boolean)
{
this._Str_6028 = k;
}
public get isIgnored(): boolean
{
return this._Str_6028;
}
public set isRoomOwner(k: boolean)
{
this._Str_4026 = k;
}
public get isRoomOwner(): boolean
{
return this._Str_4026;
}
public set isGuildRoom(k: boolean)
{
this._Str_6139 = k;
}
public get isGuildRoom(): boolean
{
return this._Str_6139;
}
public set roomControllerLevel(k: number)
{
this._roomControllerLevel = k;
}
public get roomControllerLevel(): number
{
return this._roomControllerLevel;
}
public set isModerator(k: boolean)
{
this._Str_4028 = k;
}
public get isModerator(): boolean
{
return this._Str_4028;
}
public set canTrade(k: boolean)
{
this._Str_8973 = k;
}
public get canTrade(): boolean
{
return this._Str_8973;
}
public set _Str_6622(k: number)
{
this._Str_8910 = k;
}
public get _Str_6622(): number
{
return this._Str_8910;
}
public set _Str_5990(k: boolean)
{
this._Str_9070 = k;
}
public get _Str_5990(): boolean
{
return this._Str_9070;
}
public set _Str_6701(k: boolean)
{
this._Str_8457 = k;
}
public get _Str_6701(): boolean
{
return this._Str_8457;
}
public get _Str_6394(): boolean
{
return this._Str_8831;
}
public set _Str_6394(k: boolean)
{
this._Str_8831 = k;
}
public set flatControl(k: number)
{
this._Str_8858 = k;
}
public get flatControl(): number
{
return this._Str_8858;
}
public set carryId(k: number)
{
this._Str_5228 = k;
}
public get carryId(): number
{
return this._Str_5228;
}
public set roomIndex(k: number)
{
this._Str_5131 = k;
}
public get roomIndex(): number
{
return this._Str_5131;
}
public set isSpectator(k: boolean)
{
this._Str_8522 = k;
}
public get isSpectator(): boolean
{
return this._Str_8522;
}
public set realName(k: string)
{
this._realName = k;
}
public get realName(): string
{
return this._realName;
}
public set _Str_4330(k: boolean)
{
this._Str_3947 = k;
}
public get _Str_4330(): boolean
{
return this._Str_3947;
}
public get isFriend(): boolean
{
return this._isFriend;
}
public set isFriend(k: boolean)
{
this._isFriend = k;
}
public get isAmbassador(): boolean
{
return this._Str_4890;
}
public set isAmbassador(k: boolean)
{
this._Str_4890 = k;
}
}

View File

@ -0,0 +1,11 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetUserDataUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUDUE_USER_DATA_UPDATED: string = 'rwudue_user_data_updated';
constructor()
{
super(RoomWidgetUserDataUpdateEvent.RWUDUE_USER_DATA_UPDATED);
}
}

View File

@ -0,0 +1,35 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
import { Point, Rectangle } from 'pixi.js';
export class RoomWidgetUserLocationUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWULUE_USER_LOCATION_UPDATE: string = 'RWULUE_USER_LOCATION_UPDATE';
private _userId: number;
private _rectangle: Rectangle;
private _Str_20775: Point;
constructor(k: number, _arg_2: Rectangle, _arg_3: Point)
{
super(RoomWidgetUserLocationUpdateEvent.RWULUE_USER_LOCATION_UPDATE);
this._userId = k;
this._rectangle = _arg_2;
this._Str_20775 = _arg_3;
}
public get userId(): number
{
return this._userId;
}
public get rectangle(): Rectangle
{
return this._rectangle;
}
public get _Str_9337(): Point
{
return this._Str_20775;
}
}

View File

@ -0,0 +1,34 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetUserTagsUpdateEvent extends RoomWidgetUpdateEvent
{
public static USER_TAGS: string = 'RWUTUE_USER_TAGS';
private _userId: number;
private _tags: string[];
private _Str_8426: boolean;
constructor(k: number, _arg_2: string[], _arg_3: boolean)
{
super(RoomWidgetUserTagsUpdateEvent.USER_TAGS);
this._userId = k;
this._tags = _arg_2;
this._Str_8426 = _arg_3;
}
public get userId(): number
{
return this._userId;
}
public get tags(): string[]
{
return this._tags;
}
public get _Str_11453(): boolean
{
return this._Str_8426;
}
}

View File

@ -0,0 +1,11 @@
import { RoomWidgetUpdateEvent } from 'nitro-renderer';
export class RoomWidgetWaveUpdateEvent extends RoomWidgetUpdateEvent
{
public static RWUE_WAVE: string = 'RWUE_WAVE';
constructor()
{
super(RoomWidgetWaveUpdateEvent.RWUE_WAVE);
}
}

View File

@ -0,0 +1,10 @@
export class _Str_3801
{
public stuffId: number;
public _Str_2706: number;
public _Str_2716: string;
public userId: number;
public userName: string;
public rarityLevel: number;
public _Str_4788: boolean;
}

View File

@ -0,0 +1,60 @@
export class _Str_3858
{
private _id: number;
private _category: number;
private _name: string;
private _Str_3748: number;
private _Str_4105: number;
private _Str_21788: number;
private _replace: boolean;
constructor(k: number, _arg_2: number, _arg_3: string, _arg_4: number, _arg_5: number, _arg_6: number=-1, _arg_7: boolean = false)
{
this._id = k;
this._category = _arg_2;
this._name = _arg_3;
this._Str_3748 = _arg_4;
this._Str_4105 = _arg_5;
this._Str_21788 = _arg_6;
this._replace = _arg_7;
}
public dispose(): void
{
}
public get id(): number
{
return this._id;
}
public get category(): number
{
return this._category;
}
public get name(): string
{
return this._name;
}
public get _Str_3710(): number
{
return this._Str_3748;
}
public get _Str_5563(): number
{
return this._Str_4105;
}
public get _Str_24139(): number
{
return this._Str_21788;
}
public get replace(): boolean
{
return this._replace;
}
}

View File

@ -0,0 +1,55 @@
export * from './ConfirmPetBreedingPetData';
export * from './HideRoomWidgetEvent';
export * from './RoomDesktopMouseZoomEnableEvent';
export * from './roomDimmerPreset';
export * from './RoomObjectItem';
export * from './RoomObjectNameEvent';
export * from './RoomWidgetAvatarEditorUpdateEvent';
export * from './RoomWidgetAvatarInfoEvent';
export * from './RoomWidgetChatInputContentUpdateEvent';
export * from './RoomWidgetChatUpdateEvent';
export * from './RoomWidgetChooserContentEvent';
export * from './RoomWidgetClothingChangeUpdateEvent';
export * from './RoomWidgetConfirmPetBreedingEvent';
export * from './RoomWidgetConfirmPetBreedingResultEvent';
export * from './RoomWidgetCreditFurniUpdateEvent';
export * from './RoomWidgetDanceUpdateEvent';
export * from './RoomWidgetDimmerStateUpdateEvent';
export * from './RoomWidgetDimmerUpdateEvent';
export * from './RoomWidgetDoorbellEvent';
export * from './RoomWidgetEcotronBoxDataUpdateEvent';
export * from './RoomWidgetFloodControlEvent';
export * from './RoomWidgetFriendRequestUpdateEvent';
export * from './RoomWidgetFurniInfostandUpdateEvent';
export * from './RoomWidgetPetBreedingEvent';
export * from './RoomWidgetPetBreedingResultEvent';
export * from './RoomWidgetPetFigureUpdateEvent';
export * from './RoomWidgetPetInfostandUpdateEvent';
export * from './RoomWidgetPetLevelUpdateEvent';
export * from './RoomWidgetPetPackageUpdateEvent';
export * from './RoomWidgetPetStatusUpdateEvent';
export * from './RoomWidgetPlayListEditorEvent';
export * from './RoomWidgetPlayListEditorNowPlayingEvent';
export * from './RoomWidgetPollUpdateEvent';
export * from './RoomWidgetPresentDataUpdateEvent';
export * from './RoomWidgetPurseUpdateEvent';
export * from './RoomWidgetRentableBotInfostandUpdateEvent';
export * from './RoomWidgetRentableBotSkillListUpdateEvent';
export * from './RoomWidgetRoomEngineUpdateEvent';
export * from './RoomWidgetRoomObjectUpdateEvent';
export * from './RoomWidgetRoomQueueUpdateEvent';
export * from './RoomWidgetRoomViewUpdateEvent';
export * from './RoomWidgetSettingsUpdateEvent';
export * from './RoomWidgetShowPlaceholderEvent';
export * from './RoomWidgetSpamWallPostItEditEvent';
export * from './RoomWidgetStickieDataUpdateEvent';
export * from './RoomWidgetToolbarClickedUpdateEvent';
export * from './RoomWidgetTrophyUpdateEvent';
export * from './RoomWidgetUpdateEffectsUpdateEvent';
export * from './RoomWidgetUpdateInfostandUserEvent';
export * from './RoomWidgetUserDataUpdateEvent';
export * from './RoomWidgetUserLocationUpdateEvent';
export * from './RoomWidgetUserTagsUpdateEvent';
export * from './RoomWidgetWaveUpdateEvent';
export * from './_Str_3801';
export * from './_Str_3858';

View File

@ -0,0 +1,36 @@
// see _Str_6094
export class RoomDimmerPreset
{
private _id: number = 0;
private _type: number = 0;
private _color: number = 0;
private _intensity: number = 0;
constructor(k: number, _arg_2: number, _arg_3: number, _arg_4: number)
{
this._id = k;
this._type = _arg_2;
this._color = _arg_3;
this._intensity = _arg_4;
}
public get id(): number
{
return this._id;
}
public get type(): number
{
return this._type;
}
public get color(): number
{
return this._color;
}
public get _Str_4272(): number
{
return this._intensity;
}
}

View File

@ -0,0 +1,6 @@
import { IEventDispatcher } from 'nitro-renderer';
export interface FurnitureWidgetProps
{
events: IEventDispatcher;
}

View File

@ -0,0 +1,16 @@
import { RoomEngineObjectEvent, RoomEngineTriggerWidgetEvent } from 'nitro-renderer';
import { useRoomEngineEvent } from '../../../../../hooks/events/nitro/room/room-engine-event';
import { FurnitureHighScoreViewProps } from './FurnitureHighScoreView.types';
export function FurnitureHighScoreView(props: FurnitureHighScoreViewProps): JSX.Element
{
const onRoomEngineObjectEvent = (event: RoomEngineObjectEvent) =>
{
console.log(event);
};
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_HIGH_SCORE_DISPLAY, onRoomEngineObjectEvent);
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_HIDE_HIGH_SCORE_DISPLAY, onRoomEngineObjectEvent);
return null;
}

View File

@ -0,0 +1,6 @@
import { FurnitureWidgetProps } from '../FurnitureWidget.types';
export interface FurnitureHighScoreViewProps extends FurnitureWidgetProps
{
}

View File

@ -0,0 +1,15 @@
import { RoomEngineObjectEvent, RoomEngineTriggerWidgetEvent } from 'nitro-renderer';
import { useRoomEngineEvent } from '../../../../../hooks/events/nitro/room/room-engine-event';
import { FurnitureMannequinViewProps } from './FurnitureMannequinView.types';
export function FurnitureMannequinView(props: FurnitureMannequinViewProps): JSX.Element
{
const onRoomEngineObjectEvent = (event: RoomEngineObjectEvent) =>
{
console.log(event);
};
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_MANNEQUIN, onRoomEngineObjectEvent);
return null;
}

View File

@ -0,0 +1,6 @@
import { FurnitureWidgetProps } from '../FurnitureWidget.types';
export interface FurnitureMannequinViewProps extends FurnitureWidgetProps
{
}

View File

@ -0,0 +1,15 @@
import { RoomEngineObjectEvent, RoomEngineTriggerWidgetEvent } from 'nitro-renderer';
import { useRoomEngineEvent } from '../../../../../hooks/events/nitro/room/room-engine-event';
import { FurniturePresentViewProps } from './FurniturePresentView.types';
export function FurniturePresentView(props: FurniturePresentViewProps): JSX.Element
{
const onRoomEngineObjectEvent = (event: RoomEngineObjectEvent) =>
{
console.log(event);
};
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_PRESENT, onRoomEngineObjectEvent);
return null;
}

View File

@ -0,0 +1,6 @@
import { FurnitureWidgetProps } from '../FurnitureWidget.types';
export interface FurniturePresentViewProps extends FurnitureWidgetProps
{
}

View File

@ -0,0 +1,22 @@
import { RoomEngineObjectEvent, RoomEngineTriggerWidgetEvent } from 'nitro-renderer';
import { useState } from 'react';
import { useRoomEngineEvent } from '../../../../../hooks/events/nitro/room/room-engine-event';
import { FurnitureStickieViewProps } from './FurnitureStickieView.types';
export function FurnitureStickieView(props: FurnitureStickieViewProps): JSX.Element
{
const [ isVisible, setIsVisible ] = useState(false);
const onRoomEngineObjectEvent = (event: RoomEngineObjectEvent) =>
{
setIsVisible(true);
};
useRoomEngineEvent(RoomEngineTriggerWidgetEvent.REQUEST_STICKIE, onRoomEngineObjectEvent);
if(!isVisible) return null;
return (
<div>stickie is visible</div>
);
}

View File

@ -0,0 +1,6 @@
import { FurnitureWidgetProps } from '../FurnitureWidget.types';
export interface FurnitureStickieViewProps extends FurnitureWidgetProps
{
}

View File

@ -1,7 +1,8 @@
import { RoomInfoComposer } from 'nitro-renderer';
import { UserInfoEvent } from 'nitro-renderer/src/nitro/communication/messages/incoming/user/data/UserInfoEvent';
import { UserInfoDataParser } from 'nitro-renderer/src/nitro/communication/messages/parser/user/data/UserInfoDataParser';
import { useState } from 'react';
import { CreateMessageHook } from '../../hooks/messages/message-event';
import { KeyboardEvent, useState } from 'react';
import { CreateMessageHook, SendMessageHook } from '../../hooks/messages/message-event';
import { AvatarImageView } from '../avatar-image/AvatarImageView';
import { ToolbarViewProps } from './ToolbarView.types';
@ -22,6 +23,17 @@ export function ToolbarView(props: ToolbarViewProps): JSX.Element
setUserInfo(parser.userInfo);
};
function onKeyUp(event: KeyboardEvent<HTMLInputElement>)
{
if(event.key !== "Enter") return;
const roomId = (event.target as HTMLInputElement).value;
if(roomId.length === 0) return;
SendMessageHook(new RoomInfoComposer(parseInt(roomId), false, true));
}
CreateMessageHook(new UserInfoEvent(onUserInfoEvent));
return (
@ -52,6 +64,9 @@ export function ToolbarView(props: ToolbarViewProps): JSX.Element
{ (unseenFriendListCount > 0) && (
<div className="position-absolute bg-danger px-1 py-0 rounded shadow count">{ unseenFriendListCount }</div>) }
</li>
<li>
<input type="number" onKeyUp={ onKeyUp } />
</li>
<li className="list-group-item">
{ userInfo && <AvatarImageView figure={ userInfo.figure } direction={ 2 } headOnly={ true } /> }
{ (unseenAchievementsCount > 0) && (