diff --git a/public/configuration/ui-config.example b/public/configuration/ui-config.example index 9db01e2..8523223 100644 --- a/public/configuration/ui-config.example +++ b/public/configuration/ui-config.example @@ -15,6 +15,9 @@ "camera.publish.disabled": false, "hc.disabled": false, "badge.descriptions.enabled": true, + "furni.descriptions.enabled": true, + "furni.location.enabled": true, + "furni.location.require.access": true, "motto.max.length": 38, "bot.name.max.length": 15, "pet.package.name.max.length": 15, diff --git a/src/components/room/widgets/avatar-info/infostand/InfoStandWidgetFurniView.tsx b/src/components/room/widgets/avatar-info/infostand/InfoStandWidgetFurniView.tsx index 76f9900..aa9edff 100644 --- a/src/components/room/widgets/avatar-info/infostand/InfoStandWidgetFurniView.tsx +++ b/src/components/room/widgets/avatar-info/infostand/InfoStandWidgetFurniView.tsx @@ -2,7 +2,7 @@ import { CrackableDataType, CreateLinkEvent, FurnitureFloorUpdateEvent, GetRoomE import { FC, useCallback, useEffect, useMemo, useState } from 'react'; import { FaCrosshairs, FaTimes } from 'react-icons/fa'; import { GrFormNextLink, GrRotateLeft, GrRotateRight } from 'react-icons/gr'; -import { AvatarInfoFurni, GetGroupInformation, LocalizeText, SendMessageComposer } from '../../../../../api'; +import { AvatarInfoFurni, GetGroupInformation, LocalizeText, SendMessageComposer, GetConfigurationValue } from '../../../../../api'; import { Button, Column, Flex, LayoutBadgeImageView, LayoutCurrencyIcon, LayoutLimitedEditionCompactPlateView, LayoutRarityLevelView, LayoutRoomObjectImageView, Text, UserProfileIconView } from '../../../../../common'; import { useHasPermission, useMessageEvent, useNitroEvent, useRareValues, useRoom, useWiredTools } from '../../../../../hooks'; import { NitroInput } from '../../../../../layout'; @@ -76,7 +76,9 @@ export const InfoStandWidgetFurniView: FC = props const isModerator = useHasPermission('acc_anyroomowner'); const { getValue: getRareValue } = useRareValues(); const rareValue = useMemo(() => (avatarInfo ? getRareValue(avatarInfo.spriteId) : null), [ avatarInfo, getRareValue ]); - + const descriptionsEnabled = GetConfigurationValue('furni.descriptions.enabled', true); + const itemLocationEnabled = GetConfigurationValue('furni.location.enabled', true); + const itemLocationRequireAccess = GetConfigurationValue('furni.location.require.access', true); const [ pickupMode, setPickupMode ] = useState(0); const [ canMove, setCanMove ] = useState(false); const [ canRotate, setCanRotate ] = useState(false); @@ -214,7 +216,6 @@ export const InfoStandWidgetFurniView: FC = props { canMove = true; canRotate = !avatarInfo.isWallItem; - if(avatarInfo.roomControllerLevel >= RoomControllerLevel.MODERATOR) godMode = true; } @@ -552,6 +553,11 @@ export const InfoStandWidgetFurniView: FC = props
} + { (avatarInfo.description && descriptionsEnabled) && + + { avatarInfo.description } +
+
}
{ showOwnerProfileIcon && } @@ -602,7 +608,7 @@ export const InfoStandWidgetFurniView: FC = props { groupName } } - { (itemLocation.x > -1) && + { ((itemLocation.x > -1) && itemLocationEnabled && (!itemLocationRequireAccess || canMove)) && <>