diff --git a/src/views/wired/common/GetWiredConditionLayout.tsx b/src/views/wired/common/GetWiredConditionLayout.tsx index bdbe1403..ac6dc69a 100644 --- a/src/views/wired/common/GetWiredConditionLayout.tsx +++ b/src/views/wired/common/GetWiredConditionLayout.tsx @@ -11,6 +11,7 @@ import { WiredConditionFurniIsOfTypeView } from '../views/conditions/furni-is-of import { WiredConditionFurniMatchesSnapshotView } from '../views/conditions/furni-matches-snapshot/WiredConditionFurniMatchesSnapshotView'; import { WiredConditionTimeElapsedLessView } from '../views/conditions/time-elapsed-less/WiredConditionTimeElapsedLessView'; import { WiredConditionTimeElapsedMoreView } from '../views/conditions/time-elapsed-more/WiredConditionTimeElapsedMoreView'; +import { WiredConditionUserCountInRoomView } from '../views/conditions/user-count-in-room/WiredConditionUserCountInRoomView'; import { WiredConditionlayout } from './WiredConditionLayoutCode'; export function GetWiredConditionLayout(code: number): JSX.Element @@ -51,5 +52,8 @@ export function GetWiredConditionLayout(code: number): JSX.Element return ; case WiredConditionlayout.TIME_ELAPSED_MORE: return ; + case WiredConditionlayout.USER_COUNT_IN: + case WiredConditionlayout.NOT_USER_COUNT_IN: + return ; } } diff --git a/src/views/wired/views/base/WiredBaseView.tsx b/src/views/wired/views/base/WiredBaseView.tsx index 279078df..3bbc1c85 100644 --- a/src/views/wired/views/base/WiredBaseView.tsx +++ b/src/views/wired/views/base/WiredBaseView.tsx @@ -72,7 +72,7 @@ export const WiredBaseView: FC = props =>
{ LocalizeText('wiredfurni.pickfurnis.caption', [ 'count', 'limit' ], [ '0', '0' ]) }
{ LocalizeText('wiredfurni.pickfurnis.desc') }
} -
+
diff --git a/src/views/wired/views/conditions/user-count-in-room/WiredConditionUserCountInRoomView.tsx b/src/views/wired/views/conditions/user-count-in-room/WiredConditionUserCountInRoomView.tsx new file mode 100644 index 00000000..5e00ff4f --- /dev/null +++ b/src/views/wired/views/conditions/user-count-in-room/WiredConditionUserCountInRoomView.tsx @@ -0,0 +1,51 @@ +import Slider from 'rc-slider/lib/Slider'; +import { FC, useCallback, useEffect, useState } from 'react'; +import { LocalizeText } from '../../../../../utils/LocalizeText'; +import { useWiredContext } from '../../../context/WiredContext'; +import { WiredFurniType } from '../../../WiredView.types'; +import { WiredConditionBaseView } from '../base/WiredConditionBaseView'; + +export const WiredConditionUserCountInRoomView: FC<{}> = props => +{ + const [ min, setMin ] = useState(1); + const [ max, setMax ] = useState(1); + const { trigger = null, setIntParams = null } = useWiredContext(); + + useEffect(() => + { + if(trigger.intData.length >= 2) + { + setMin(trigger.intData[0]); + setMax(trigger.intData[1]); + } + }, [ trigger ]); + + const save = useCallback(() => + { + setIntParams([min, max]); + }, [ min, max, setIntParams ]); + + return ( + +
{ LocalizeText('wiredfurni.params.usercountmin', ['value'], [min.toString()]) }
+ setMin(event) } + /> +
+
{ LocalizeText('wiredfurni.params.usercountmax', ['value'], [max.toString()]) }
+ setMax(event) } + /> +
+ ); +}