From 78c25c21ee57ca8c1bc6f127fc51e27341f8e0cd Mon Sep 17 00:00:00 2001 From: Bill Date: Thu, 24 Jun 2021 12:47:40 -0400 Subject: [PATCH] Fix things skelly broke --- .../transitions/TransitionAnimationStyles.ts | 2 -- .../RoomWidgetUpdateInfostandPetEvent.ts | 2 +- .../handlers/RoomWidgetInfostandHandler.ts | 30 +++++++++---------- .../avatar-info/AvatarInfoWidgetView.tsx | 7 +++-- .../decorate/AvatarInfoWidgetDecorateView.tsx | 17 +++++++++-- .../AvatarInfoWidgetDecorateView.types.ts | 3 ++ .../AvatarInfoWidgetOwnAvatarView.tsx | 9 ++---- .../AvatarInfoWidgetOwnAvatarView.types.ts | 2 ++ 8 files changed, 43 insertions(+), 29 deletions(-) diff --git a/src/layout/transitions/TransitionAnimationStyles.ts b/src/layout/transitions/TransitionAnimationStyles.ts index c7e5a746..02fe336c 100644 --- a/src/layout/transitions/TransitionAnimationStyles.ts +++ b/src/layout/transitions/TransitionAnimationStyles.ts @@ -5,7 +5,6 @@ import { TransitionAnimationTypes } from './TransitionAnimation.types'; export function getTransitionAnimationStyle(type: string, transition: TransitionStatus, timeout: number = 300): Partial { - console.log(type, transition, timeout); switch(type) { case TransitionAnimationTypes.BOUNCE: @@ -94,7 +93,6 @@ export function getTransitionAnimationStyle(type: string, transition: Transition default: return {} case ENTERING: - console.log('ya????') return { animationName: `fadeIn`, animationDuration: `${ timeout }ms` diff --git a/src/views/room/events/RoomWidgetUpdateInfostandPetEvent.ts b/src/views/room/events/RoomWidgetUpdateInfostandPetEvent.ts index 1473631d..f4404e6d 100644 --- a/src/views/room/events/RoomWidgetUpdateInfostandPetEvent.ts +++ b/src/views/room/events/RoomWidgetUpdateInfostandPetEvent.ts @@ -32,7 +32,7 @@ export class RoomWidgetUpdateInfostandPetEvent extends RoomWidgetUpdateInfostand public saddle: boolean = false; public rider: boolean = false; public breedable: boolean = false; - public Str_4460: number[] = []; + public skillTresholds: number[] = []; public publiclyRideable: number = 0; public fullyGrown: boolean = false; public dead: boolean = false; diff --git a/src/views/room/handlers/RoomWidgetInfostandHandler.ts b/src/views/room/handlers/RoomWidgetInfostandHandler.ts index ac916114..eda7705d 100644 --- a/src/views/room/handlers/RoomWidgetInfostandHandler.ts +++ b/src/views/room/handlers/RoomWidgetInfostandHandler.ts @@ -1,4 +1,4 @@ -import { IFurnitureData, Nitro, NitroEvent, ObjectDataFactory, PetFigureData, PetType, RoomAdsUpdateComposer, RoomControllerLevel, RoomModerationParser, RoomObjectCategory, RoomObjectOperationType, RoomObjectType, RoomObjectVariable, RoomSessionPetInfoUpdateEvent, RoomSessionUserBadgesEvent, RoomTradingLevelEnum, RoomUnitDropHandItemComposer, RoomUnitGiveHandItemComposer, RoomUnitGiveHandItemPetComposer, RoomUserData, RoomWidgetEnumItemExtradataParameter, SecurityLevel, Vector3d } from 'nitro-renderer'; +import { IFurnitureData, Nitro, NitroEvent, ObjectDataFactory, PetFigureData, PetType, RoomAdsUpdateComposer, RoomControllerLevel, RoomModerationSettings, RoomObjectCategory, RoomObjectOperationType, RoomObjectType, RoomObjectVariable, RoomSessionPetInfoUpdateEvent, RoomSessionUserBadgesEvent, RoomTradingLevelEnum, RoomUnitDropHandItemComposer, RoomUnitGiveHandItemComposer, RoomUnitGiveHandItemPetComposer, RoomUserData, RoomWidgetEnumItemExtradataParameter, SecurityLevel, Vector3d } from 'nitro-renderer'; import { GetConnection, GetRoomEngine, GetSessionDataManager, IsOwnerOfFurniture } from '../../../api'; import { LocalizeText } from '../../../utils/LocalizeText'; import { RoomWidgetObjectNameEvent, RoomWidgetUpdateEvent, RoomWidgetUpdateInfostandFurniEvent, RoomWidgetUpdateInfostandPetEvent, RoomWidgetUpdateInfostandRentableBotEvent, RoomWidgetUpdateInfostandUserEvent } from '../events'; @@ -498,14 +498,14 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler { switch(tradeMode) { - case RoomTradingLevelEnum._Str_14475: { + case RoomTradingLevelEnum.ROOM_CONTROLLER_REQUIRED: { const roomController = ((event.roomControllerLevel !== RoomControllerLevel.NONE) && (event.roomControllerLevel !== RoomControllerLevel.GUILD_MEMBER)); const targetController = ((event.targetRoomControllerLevel !== RoomControllerLevel.NONE) && (event.targetRoomControllerLevel !== RoomControllerLevel.GUILD_MEMBER)); event.canTrade = (roomController || targetController); break; } - case RoomTradingLevelEnum._Str_9173: + case RoomTradingLevelEnum.NO_TRADING: event.canTrade = true; break; default: @@ -518,7 +518,7 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler if(isShuttingDown) event.canTradeReason = RoomWidgetUpdateInfostandUserEvent.TRADE_REASON_SHUTDOWN; - if(tradeMode !== RoomTradingLevelEnum._Str_9173) event.canTradeReason = RoomWidgetUpdateInfostandUserEvent.TRADE_REASON_NO_TRADING; + if(tradeMode !== RoomTradingLevelEnum.FREE_TRADING) event.canTradeReason = RoomWidgetUpdateInfostandUserEvent.TRADE_REASON_NO_TRADING; // const _local_12 = GetSessionDataManager().userId; // _local_13 = GetSessionDataManager()._Str_18437(_local_12); @@ -590,7 +590,7 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler private processPetInfoEvent(event: RoomSessionPetInfoUpdateEvent): void { - const petData = event._Str_24727; + const petData = event.petInfo; if(!petData) return; @@ -604,7 +604,7 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler if(figure.typeId === PetType.MONSTERPLANT) { - if(petData.level >= petData._Str_20651) posture = 'std'; + if(petData.level >= petData.adultLevel) posture = 'std'; else posture = ('grw' + petData.level); } @@ -639,7 +639,7 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler infostandEvent.fullyGrown = petData.fullyGrown; infostandEvent.dead = petData.dead; infostandEvent.rarityLevel = petData.rarityLevel; - infostandEvent.Str_4460 = petData._Str_3307; + infostandEvent.skillTresholds = petData.skillTresholds; infostandEvent.canRemovePet = false; infostandEvent.publiclyRideable = petData.publiclyRideable; infostandEvent.maximumTimeToLive = petData.maximumTimeToLive; @@ -668,11 +668,11 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler private canBeMuted(event: RoomWidgetUpdateInfostandUserEvent): boolean { - const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationParser) => + const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationSettings) => { switch(moderation.allowMute) { - case RoomModerationParser._Str_5047: + case RoomModerationSettings.MODERATION_LEVEL_USER_WITH_RIGHTS: return this.checkGuildSetting(event); default: return (event.roomControllerLevel >= RoomControllerLevel.ROOM_OWNER); @@ -684,13 +684,13 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler private canBeKicked(event: RoomWidgetUpdateInfostandUserEvent): boolean { - const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationParser) => + const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationSettings) => { switch(moderation.allowKick) { - case RoomModerationParser._Str_11537: + case RoomModerationSettings.MODERATION_LEVEL_ALL: return true; - case RoomModerationParser._Str_5047: + case RoomModerationSettings.MODERATION_LEVEL_USER_WITH_RIGHTS: return this.checkGuildSetting(event); default: return (event.roomControllerLevel >= RoomControllerLevel.ROOM_OWNER); @@ -702,11 +702,11 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler private canBeBanned(event: RoomWidgetUpdateInfostandUserEvent): boolean { - const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationParser) => + const checkSetting = (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationSettings) => { switch(moderation.allowBan) { - case RoomModerationParser._Str_5047: + case RoomModerationSettings.MODERATION_LEVEL_USER_WITH_RIGHTS: return this.checkGuildSetting(event); default: return (event.roomControllerLevel >= RoomControllerLevel.ROOM_OWNER); @@ -716,7 +716,7 @@ export class RoomWidgetInfostandHandler extends RoomWidgetHandler return this.isValidSetting(event, checkSetting); } - private isValidSetting(event: RoomWidgetUpdateInfostandUserEvent, checkSetting: (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationParser) => boolean): boolean + private isValidSetting(event: RoomWidgetUpdateInfostandUserEvent, checkSetting: (event: RoomWidgetUpdateInfostandUserEvent, moderation: RoomModerationSettings) => boolean): boolean { if(!this.roomSession._Str_7411) return false; diff --git a/src/views/room/widgets/avatar-info/AvatarInfoWidgetView.tsx b/src/views/room/widgets/avatar-info/AvatarInfoWidgetView.tsx index 99afe2ea..8671afbf 100644 --- a/src/views/room/widgets/avatar-info/AvatarInfoWidgetView.tsx +++ b/src/views/room/widgets/avatar-info/AvatarInfoWidgetView.tsx @@ -127,6 +127,7 @@ export const AvatarInfoWidgetView: FC = props => CreateEventDispatcherHook(RoomWidgetUpdateInfostandUserEvent.PEER, eventDispatcher, onRoomWidgetUpdateInfostandEvent); CreateEventDispatcherHook(RoomWidgetUpdateInfostandUserEvent.BOT, eventDispatcher, onRoomWidgetUpdateInfostandEvent); CreateEventDispatcherHook(RoomWidgetUpdateInfostandRentableBotEvent.RENTABLE_BOT, eventDispatcher, onRoomWidgetUpdateInfostandEvent); + CreateEventDispatcherHook(RoomWidgetUpdateInfostandPetEvent.PET_INFO, eventDispatcher, onRoomWidgetUpdateInfostandEvent); const onRoomWidgetUpdateDanceStatusEvent = useCallback((event: RoomWidgetUpdateDanceStatusEvent) => { @@ -165,7 +166,7 @@ export const AvatarInfoWidgetView: FC = props => const userName = GetSessionDataManager().userName; const roomIndex = GetRoomSession().ownRoomIndex; - return ; + return ; }, [ isDecorating ]); const clearInfoStandEvent = useCallback(() => @@ -197,7 +198,7 @@ export const AvatarInfoWidgetView: FC = props => { if(RoomEnterEffect.isRunning()) return null; - return ; + return ; } return ; @@ -222,7 +223,7 @@ export const AvatarInfoWidgetView: FC = props => } return null; - }, [ isGameMode, decorateView, name, infoStandEvent ]); + }, [ isGameMode, decorateView, name, isDancing, infoStandEvent, clearInfoStandEvent ]); return ( <> diff --git a/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.tsx b/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.tsx index 4b53cffb..8c97bf51 100644 --- a/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.tsx +++ b/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.tsx @@ -1,9 +1,22 @@ +import { RoomObjectCategory } from 'nitro-renderer'; import { FC } from 'react'; +import { LocalizeText } from '../../../../../../utils/LocalizeText'; +import { ContextMenuView } from '../../../context-menu/ContextMenuView'; +import { ContextMenuListItemView } from '../../../context-menu/views/list-item/ContextMenuListItemView'; +import { ContextMenuListView } from '../../../context-menu/views/list/ContextMenuListView'; import { AvatarInfoWidgetDecorateViewProps } from './AvatarInfoWidgetDecorateView.types'; export const AvatarInfoWidgetDecorateView: FC = props => { - const { userId = -1, userName = '', roomIndex = -1 } = props; + const { userId = -1, userName = '', roomIndex = -1, setIsDecorating = null } = props; - return null; + return ( + + + setIsDecorating(false) }> + { LocalizeText('widget.avatar.stop_decorating') } + + + + ) } diff --git a/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.types.ts b/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.types.ts index ba8d0a96..2440f17a 100644 --- a/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.types.ts +++ b/src/views/room/widgets/avatar-info/views/decorate/AvatarInfoWidgetDecorateView.types.ts @@ -1,6 +1,9 @@ +import { Dispatch, SetStateAction } from 'react'; + export interface AvatarInfoWidgetDecorateViewProps { userId: number; userName: string; roomIndex: number; + setIsDecorating: Dispatch>; } diff --git a/src/views/room/widgets/avatar-info/views/own-avatar/AvatarInfoWidgetOwnAvatarView.tsx b/src/views/room/widgets/avatar-info/views/own-avatar/AvatarInfoWidgetOwnAvatarView.tsx index d049e21e..b39417fd 100644 --- a/src/views/room/widgets/avatar-info/views/own-avatar/AvatarInfoWidgetOwnAvatarView.tsx +++ b/src/views/room/widgets/avatar-info/views/own-avatar/AvatarInfoWidgetOwnAvatarView.tsx @@ -19,7 +19,7 @@ const MODE_CHANGE_LOOKS = 5; export const AvatarInfoWidgetOwnAvatarView: FC = props => { - const { userData = null, isDancing = false, close = null } = props; + const { userData = null, isDancing = false, setIsDecorating = null, close = null } = props; const [ mode, setMode ] = useState((isDancing && HasHabboClub()) ? MODE_CLUB_DANCES : MODE_NORMAL); const { roomSession = null, widgetHandler = null } = useRoomContext(); @@ -41,10 +41,7 @@ export const AvatarInfoWidgetOwnAvatarView: FC>; close: () => void; }