From 3e20f65f3af4d4434171b86ab53d518c60c284db Mon Sep 17 00:00:00 2001 From: Lorenzune Date: Sun, 22 Mar 2026 16:48:51 +0100 Subject: [PATCH] feat: update wired editor extras and selection handling --- public/UITexts.example | 21 +- public/renderer-config.json | 695 ++++++++-- public/ui-config.json | 1118 +---------------- src/api/wired/WiredActionLayoutCode.ts | 4 + .../actions/WiredActionFurniToFurniView.tsx | 21 +- .../views/actions/WiredActionLayoutView.tsx | 12 + .../actions/WiredActionSendSignalView.tsx | 37 +- .../WiredConditionFurniIsOfTypeView.tsx | 21 +- .../extras/WiredExtraAnimationTimeView.tsx | 47 + .../extras/WiredExtraMoveCarryUsersView.tsx | 62 + .../extras/WiredExtraMoveNoAnimationView.tsx | 25 + .../extras/WiredExtraMovePhysicsView.tsx | 120 ++ .../WiredSelectorFurniByTypeView.tsx | 7 +- src/hooks/wired/useWired.ts | 5 +- vite.config.mjs | 12 +- 15 files changed, 956 insertions(+), 1251 deletions(-) create mode 100644 src/components/wired/views/extras/WiredExtraAnimationTimeView.tsx create mode 100644 src/components/wired/views/extras/WiredExtraMoveCarryUsersView.tsx create mode 100644 src/components/wired/views/extras/WiredExtraMoveNoAnimationView.tsx create mode 100644 src/components/wired/views/extras/WiredExtraMovePhysicsView.tsx diff --git a/public/UITexts.example b/public/UITexts.example index fe20439..539f71a 100644 --- a/public/UITexts.example +++ b/public/UITexts.example @@ -20,5 +20,24 @@ "widget.room.chat.clear_history": "leeg geschiedenis", "widget.room.youtube.shared": "YouTube word gedeeld", "widget.room.youtube.open_video": "Open de video", - "wiredfurni.params.area_selection.selected": "Geselecteerd gebied: Lengte=%x%, Breedte=%y%, breedte=%w%, hoogte=%h%" + "wiredfurni.params.area_selection.selected": "Geselecteerd gebied: Lengte=%x%, Breedte=%y%, breedte=%w%, hoogte=%h%", + "wiredfurni.params.carry_mode": "Gli utenti sono trasportati quando:", + "wiredfurni.params.carry_mode.0": "rimani fermo direttamente sul Furni in movimento", + "wiredfurni.params.carry_mode.1": "rimani fermo sulla stessa casella del Furni in movimento", + "wiredfurni.params.sources.users.title.carry": "Consentire il trasporto per:", + "wiredfurni.params.sources.users.900": "Tutti gli utenti nella Stanza", + "wiredfurni.params.anim_time.title": "Durata animazione movimento", + "wiredfurni.params.anim_time.description": "Regola la velocita dello slide per i Wired che spostano utenti e furni.", + "wiredfurni.params.anim_time.value": "%ms% ms", + "wiredfurni.params.mov_no_animation.title": "Animazione movimento", + "wiredfurni.params.mov_no_animation.description": "Questo extra disattiva lo slide per i Wired che spostano utenti e furni.", + "wiredfurni.params.select_options": "Seleziona opzioni:", + "wiredfurni.params.movephysics.keep_altitude": "Mantieni altitudine del Furni", + "wiredfurni.params.movephysics.move_through_furni": "Muovi attraverso Furni", + "wiredfurni.params.movephysics.move_through_users": "Muovi attraverso utenti", + "wiredfurni.params.movephysics.block_by_furni": "รจ bloccato da Furni", + "wiredfurni.params.sources.furni.title.physics.0": "Muovi attraverso Furni:", + "wiredfurni.params.sources.furni.title.physics.1": "Bloccato da Furni:", + "wiredfurni.params.sources.users.title.physics.0": "Muovi attraverso gli utenti:", + "wiredfurni.params.sources.furni.900": "Tutti i Furni nella Stanza" } diff --git a/public/renderer-config.json b/public/renderer-config.json index 114bf6d..b0beddf 100644 --- a/public/renderer-config.json +++ b/public/renderer-config.json @@ -1,110 +1,587 @@ { - "socket.url": "ws://localhost:2097", - "asset.url": "http://localhost:3000/nitro-assets", - "image.library.url": "http://localhost:3000/swf/c_images/", - "hof.furni.url": "http://localhost:3000/swf/dcr/hof_furni", - "images.url": "${asset.url}/images", - "gamedata.url": "${asset.url}/gamedata", - "sounds.url": "${asset.url}/sounds/%sample%.mp3", - "external.texts.url": [ "${gamedata.url}/ExternalTexts.json", "${gamedata.url}/UITexts.json" ], - "external.samples.url": "${hof.furni.url}/mp3/sound_machine_sample_%sample%.mp3", - "furnidata.url": "${gamedata.url}/FurnitureData.json", - "productdata.url": "${gamedata.url}/ProductData.json", - "avatar.actions.url": "${gamedata.url}/HabboAvatarActions.json", - "avatar.figuredata.url": "${gamedata.url}/FigureData.json", - "avatar.figuremap.url": "${gamedata.url}/FigureMap.json", - "avatar.effectmap.url": "${gamedata.url}/EffectMap.json", - "avatar.asset.url": "${asset.url}/bundled/figure/%libname%.nitro", - "avatar.asset.effect.url": "${asset.url}/bundled/effect/%libname%.nitro", - "furni.asset.url": "${asset.url}/bundled/furniture/%libname%.nitro", - "furni.asset.icon.url": "${hof.furni.url}/icons/%libname%%param%_icon.png", - "pet.asset.url": "${asset.url}/bundled/pet/%libname%.nitro", - "generic.asset.url": "${asset.url}/bundled/generic/%libname%.nitro", - "badge.asset.url": "${image.library.url}album1584/%badgename%.gif", - "furni.rotation.bounce.steps": 20, - "furni.rotation.bounce.height": 0.0625, - "enable.avatar.arrow": false, - "system.log.debug": false, - "system.log.warn": false, - "system.log.error": false, - "system.log.events": false, - "system.log.packets": false, - "system.fps.animation": 24, - "system.fps.max": 60, - "system.pong.manually": true, - "system.pong.interval.ms": 20000, - "room.color.skip.transition": true, - "room.landscapes.enabled": true, - "avatar.mandatory.libraries": [ - "bd:1", - "li:0" - ], - "avatar.mandatory.effect.libraries": [ - "dance.1", - "dance.2", - "dance.3", - "dance.4" - ], - "avatar.default.figuredata": {"palettes":[{"id":1,"colors":[{"id":99999,"index":1001,"club":0,"selectable":false,"hexCode":"DDDDDD"},{"id":99998,"index":1001,"club":0,"selectable":false,"hexCode":"FAFAFA"}]},{"id":3,"colors":[{"id":10001,"index":1001,"club":0,"selectable":false,"hexCode":"EEEEEE"},{"id":10002,"index":1002,"club":0,"selectable":false,"hexCode":"FA3831"},{"id":10003,"index":1003,"club":0,"selectable":false,"hexCode":"FD92A0"},{"id":10004,"index":1004,"club":0,"selectable":false,"hexCode":"2AC7D2"},{"id":10005,"index":1005,"club":0,"selectable":false,"hexCode":"35332C"},{"id":10006,"index":1006,"club":0,"selectable":false,"hexCode":"EFFF92"},{"id":10007,"index":1007,"club":0,"selectable":false,"hexCode":"C6FF98"},{"id":10008,"index":1008,"club":0,"selectable":false,"hexCode":"FF925A"},{"id":10009,"index":1009,"club":0,"selectable":false,"hexCode":"9D597E"},{"id":10010,"index":1010,"club":0,"selectable":false,"hexCode":"B6F3FF"},{"id":10011,"index":1011,"club":0,"selectable":false,"hexCode":"6DFF33"},{"id":10012,"index":1012,"club":0,"selectable":false,"hexCode":"3378C9"},{"id":10013,"index":1013,"club":0,"selectable":false,"hexCode":"FFB631"},{"id":10014,"index":1014,"club":0,"selectable":false,"hexCode":"DFA1E9"},{"id":10015,"index":1015,"club":0,"selectable":false,"hexCode":"F9FB32"},{"id":10016,"index":1016,"club":0,"selectable":false,"hexCode":"CAAF8F"},{"id":10017,"index":1017,"club":0,"selectable":false,"hexCode":"C5C6C5"},{"id":10018,"index":1018,"club":0,"selectable":false,"hexCode":"47623D"},{"id":10019,"index":1019,"club":0,"selectable":false,"hexCode":"8A8361"},{"id":10020,"index":1020,"club":0,"selectable":false,"hexCode":"FF8C33"},{"id":10021,"index":1021,"club":0,"selectable":false,"hexCode":"54C627"},{"id":10022,"index":1022,"club":0,"selectable":false,"hexCode":"1E6C99"},{"id":10023,"index":1023,"club":0,"selectable":false,"hexCode":"984F88"},{"id":10024,"index":1024,"club":0,"selectable":false,"hexCode":"77C8FF"},{"id":10025,"index":1025,"club":0,"selectable":false,"hexCode":"FFC08E"},{"id":10026,"index":1026,"club":0,"selectable":false,"hexCode":"3C4B87"},{"id":10027,"index":1027,"club":0,"selectable":false,"hexCode":"7C2C47"},{"id":10028,"index":1028,"club":0,"selectable":false,"hexCode":"D7FFE3"},{"id":10029,"index":1029,"club":0,"selectable":false,"hexCode":"8F3F1C"},{"id":10030,"index":1030,"club":0,"selectable":false,"hexCode":"FF6393"},{"id":10031,"index":1031,"club":0,"selectable":false,"hexCode":"1F9B79"},{"id":10032,"index":1032,"club":0,"selectable":false,"hexCode":"FDFF33"}]}],"setTypes":[{"type":"hd","paletteId":1,"mandatory_f_0":true,"mandatory_f_1":true,"mandatory_m_0":true,"mandatory_m_1":true,"sets":[{"id":99999,"gender":"U","club":0,"colorable":true,"selectable":false,"preselectable":false,"sellable":false,"parts":[{"id":1,"type":"bd","colorable":true,"index":0,"colorindex":1},{"id":1,"type":"hd","colorable":true,"index":0,"colorindex":1},{"id":1,"type":"lh","colorable":true,"index":0,"colorindex":1},{"id":1,"type":"rh","colorable":true,"index":0,"colorindex":1}]}]},{"type":"bds","paletteId":1,"mandatory_f_0":false,"mandatory_f_1":false,"mandatory_m_0":false,"mandatory_m_1":false,"sets":[{"id":10001,"gender":"U","club":0,"colorable":true,"selectable":false,"preselectable":false,"sellable":false,"parts":[{"id":10001,"type":"bds","colorable":true,"index":0,"colorindex":1},{"id":10001,"type":"lhs","colorable":true,"index":0,"colorindex":1},{"id":10001,"type":"rhs","colorable":true,"index":0,"colorindex":1}],"hiddenLayers":[{"partType":"bd"},{"partType":"rh"},{"partType":"lh"}]}]},{"type":"ss","paletteId":3,"mandatory_f_0":false,"mandatory_f_1":false,"mandatory_m_0":false,"mandatory_m_1":false,"sets":[{"id":10010,"gender":"F","club":0,"colorable":true,"selectable":false,"preselectable":false,"sellable":false,"parts":[{"id":10001,"type":"ss","colorable":true,"index":0,"colorindex":1}],"hiddenLayers":[{"partType":"ch"},{"partType":"lg"},{"partType":"ca"},{"partType":"wa"},{"partType":"sh"},{"partType":"ls"},{"partType":"rs"},{"partType":"lc"},{"partType":"rc"},{"partType":"cc"},{"partType":"cp"}]},{"id":10011,"gender":"M","club":0,"colorable":true,"selectable":false,"preselectable":false,"sellable":false,"parts":[{"id":10002,"type":"ss","colorable":true,"index":0,"colorindex":1}],"hiddenLayers":[{"partType":"ch"},{"partType":"lg"},{"partType":"ca"},{"partType":"wa"},{"partType":"sh"},{"partType":"ls"},{"partType":"rs"},{"partType":"lc"},{"partType":"rc"},{"partType":"cc"},{"partType":"cp"}]}]}]}, - "avatar.default.actions": { - "actions": [ - { - "id": "Default", - "state": "std", - "precedence": 1000, - "main": true, - "isDefault": true, - "geometryType": "vertical", - "activePartSet": "figure", - "assetPartDefinition": "std" - } - ] - }, - "pet.types": [ - "dog", - "cat", - "croco", - "terrier", - "bear", - "pig", - "lion", - "rhino", - "spider", - "turtle", - "chicken", - "frog", - "dragon", - "monster", - "monkey", - "horse", - "monsterplant", - "bunnyeaster", - "bunnyevil", - "bunnydepressed", - "bunnylove", - "pigeongood", - "pigeonevil", - "demonmonkey", - "bearbaby", - "terrierbaby", - "gnome", - "leprechaun", - "kittenbaby", - "puppybaby", - "pigletbaby", - "haloompa", - "fools", - "pterosaur", - "velociraptor", - "cow", - "dragondog" - ], - "preload.assets.urls": [ - "${asset.url}/bundled/generic/avatar_additions.nitro", - "${asset.url}/bundled/generic/group_badge.nitro", - "${asset.url}/bundled/generic/floor_editor.nitro", - "${images.url}/loading_icon.png", - "${images.url}/clear_icon.png", - "${images.url}/big_arrow.png" - ] -} + "socket.url": "ws://192.168.1.52:2096", + "asset.url": "https://client.paxxo.online/nitro/bundled", + "image.library.url": "https://client.paxxo.online/c_images/", + "hof.furni.url": "https://client.paxxo.online/c_images/dcr/hof_furni", + "images.url": "https://client.paxxo.online/nitro/images", + "gamedata.url": "https://client.paxxo.online/nitro/gamedata", + "sounds.url": "${asset.url}/sounds/%sample%.mp3", + "external.texts.url": [ + "${gamedata.url}/ExternalTexts.json", + "${gamedata.url}/UITexts.json" + ], + "external.samples.url": "${hof.furni.url}/mp3/sound_machine_sample_%sample%.mp3", + "furnidata.url": "${gamedata.url}/FurnitureData.json?v=1", + "productdata.url": "${gamedata.url}/ProductData.json?v=1", + "avatar.actions.url": "${gamedata.url}/HabboAvatarActions.json?v=1", + "avatar.figuredata.url": "${gamedata.url}/FigureData.json?v=1", + "avatar.figuremap.url": "${gamedata.url}/FigureMap.json?v=1", + "avatar.effectmap.url": "${gamedata.url}/EffectMap.json?v=1", + "avatar.asset.url": "${asset.url}/figure/%libname%.nitro", + "avatar.asset.effect.url": "${asset.url}/effect/%libname%.nitro", + "furni.asset.url": "${asset.url}/furniture/%libname%.nitro", + "furni.asset.icon.url": "${hof.furni.url}/icons/%libname%%param%_icon.png", + "pet.asset.url": "${asset.url}/pets/%libname%.nitro", + "generic.asset.url": "${asset.url}/generic/%libname%.nitro", + "badge.asset.url": "${image.library.url}album1584/%badgename%.gif", + "furni.rotation.bounce.steps": 20, + "furni.rotation.bounce.height": 0.0625, + "enable.avatar.arrow": false, + "system.log.debug": true, + "system.log.warn": true, + "system.log.error": true, + "system.log.events": false, + "system.log.packets": true, + "system.fps.animation": 24, + "system.fps.max": 60, + "system.pong.manually": true, + "system.pong.interval.ms": 20000, + "room.color.skip.transition": true, + "room.landscapes.enabled": true, + "room.zoom.enabled": true, + "avatar.mandatory.libraries": [ + "bd:1", + "li:0" + ], + "avatar.mandatory.effect.libraries": [ + "dance.1", + "dance.2", + "dance.3", + "dance.4" + ], + "avatar.default.figuredata": { + "palettes": [ + { + "id": 1, + "colors": [ + { + "id": 99999, + "index": 1001, + "club": 0, + "selectable": false, + "hexCode": "DDDDDD" + }, + { + "id": 99998, + "index": 1001, + "club": 0, + "selectable": false, + "hexCode": "FAFAFA" + } + ] + }, + { + "id": 3, + "colors": [ + { + "id": 10001, + "index": 1001, + "club": 0, + "selectable": false, + "hexCode": "EEEEEE" + }, + { + "id": 10002, + "index": 1002, + "club": 0, + "selectable": false, + "hexCode": "FA3831" + }, + { + "id": 10003, + "index": 1003, + "club": 0, + "selectable": false, + "hexCode": "FD92A0" + }, + { + "id": 10004, + "index": 1004, + "club": 0, + "selectable": false, + "hexCode": "2AC7D2" + }, + { + "id": 10005, + "index": 1005, + "club": 0, + "selectable": false, + "hexCode": "35332C" + }, + { + "id": 10006, + "index": 1006, + "club": 0, + "selectable": false, + "hexCode": "EFFF92" + }, + { + "id": 10007, + "index": 1007, + "club": 0, + "selectable": false, + "hexCode": "C6FF98" + }, + { + "id": 10008, + "index": 1008, + "club": 0, + "selectable": false, + "hexCode": "FF925A" + }, + { + "id": 10009, + "index": 1009, + "club": 0, + "selectable": false, + "hexCode": "9D597E" + }, + { + "id": 10010, + "index": 1010, + "club": 0, + "selectable": false, + "hexCode": "B6F3FF" + }, + { + "id": 10011, + "index": 1011, + "club": 0, + "selectable": false, + "hexCode": "6DFF33" + }, + { + "id": 10012, + "index": 1012, + "club": 0, + "selectable": false, + "hexCode": "3378C9" + }, + { + "id": 10013, + "index": 1013, + "club": 0, + "selectable": false, + "hexCode": "FFB631" + }, + { + "id": 10014, + "index": 1014, + "club": 0, + "selectable": false, + "hexCode": "DFA1E9" + }, + { + "id": 10015, + "index": 1015, + "club": 0, + "selectable": false, + "hexCode": "F9FB32" + }, + { + "id": 10016, + "index": 1016, + "club": 0, + "selectable": false, + "hexCode": "CAAF8F" + }, + { + "id": 10017, + "index": 1017, + "club": 0, + "selectable": false, + "hexCode": "C5C6C5" + }, + { + "id": 10018, + "index": 1018, + "club": 0, + "selectable": false, + "hexCode": "47623D" + }, + { + "id": 10019, + "index": 1019, + "club": 0, + "selectable": false, + "hexCode": "8A8361" + }, + { + "id": 10020, + "index": 1020, + "club": 0, + "selectable": false, + "hexCode": "FF8C33" + }, + { + "id": 10021, + "index": 1021, + "club": 0, + "selectable": false, + "hexCode": "54C627" + }, + { + "id": 10022, + "index": 1022, + "club": 0, + "selectable": false, + "hexCode": "1E6C99" + }, + { + "id": 10023, + "index": 1023, + "club": 0, + "selectable": false, + "hexCode": "984F88" + }, + { + "id": 10024, + "index": 1024, + "club": 0, + "selectable": false, + "hexCode": "77C8FF" + }, + { + "id": 10025, + "index": 1025, + "club": 0, + "selectable": false, + "hexCode": "FFC08E" + }, + { + "id": 10026, + "index": 1026, + "club": 0, + "selectable": false, + "hexCode": "3C4B87" + }, + { + "id": 10027, + "index": 1027, + "club": 0, + "selectable": false, + "hexCode": "7C2C47" + }, + { + "id": 10028, + "index": 1028, + "club": 0, + "selectable": false, + "hexCode": "D7FFE3" + }, + { + "id": 10029, + "index": 1029, + "club": 0, + "selectable": false, + "hexCode": "8F3F1C" + }, + { + "id": 10030, + "index": 1030, + "club": 0, + "selectable": false, + "hexCode": "FF6393" + }, + { + "id": 10031, + "index": 1031, + "club": 0, + "selectable": false, + "hexCode": "1F9B79" + }, + { + "id": 10032, + "index": 1032, + "club": 0, + "selectable": false, + "hexCode": "FDFF33" + } + ] + } + ], + "setTypes": [ + { + "type": "hd", + "paletteId": 1, + "mandatory_f_0": true, + "mandatory_f_1": true, + "mandatory_m_0": true, + "mandatory_m_1": true, + "sets": [ + { + "id": 99999, + "gender": "U", + "club": 0, + "colorable": true, + "selectable": false, + "preselectable": false, + "sellable": false, + "parts": [ + { + "id": 1, + "type": "bd", + "colorable": true, + "index": 0, + "colorindex": 1 + }, + { + "id": 1, + "type": "hd", + "colorable": true, + "index": 0, + "colorindex": 1 + }, + { + "id": 1, + "type": "lh", + "colorable": true, + "index": 0, + "colorindex": 1 + }, + { + "id": 1, + "type": "rh", + "colorable": true, + "index": 0, + "colorindex": 1 + } + ] + } + ] + }, + { + "type": "bds", + "paletteId": 1, + "mandatory_f_0": false, + "mandatory_f_1": false, + "mandatory_m_0": false, + "mandatory_m_1": false, + "sets": [ + { + "id": 10001, + "gender": "U", + "club": 0, + "colorable": true, + "selectable": false, + "preselectable": false, + "sellable": false, + "parts": [ + { + "id": 10001, + "type": "bds", + "colorable": true, + "index": 0, + "colorindex": 1 + }, + { + "id": 10001, + "type": "lhs", + "colorable": true, + "index": 0, + "colorindex": 1 + }, + { + "id": 10001, + "type": "rhs", + "colorable": true, + "index": 0, + "colorindex": 1 + } + ], + "hiddenLayers": [ + { + "partType": "bd" + }, + { + "partType": "rh" + }, + { + "partType": "lh" + } + ] + } + ] + }, + { + "type": "ss", + "paletteId": 3, + "mandatory_f_0": false, + "mandatory_f_1": false, + "mandatory_m_0": false, + "mandatory_m_1": false, + "sets": [ + { + "id": 10010, + "gender": "F", + "club": 0, + "colorable": true, + "selectable": false, + "preselectable": false, + "sellable": false, + "parts": [ + { + "id": 10001, + "type": "ss", + "colorable": true, + "index": 0, + "colorindex": 1 + } + ], + "hiddenLayers": [ + { + "partType": "ch" + }, + { + "partType": "lg" + }, + { + "partType": "ca" + }, + { + "partType": "wa" + }, + { + "partType": "sh" + }, + { + "partType": "ls" + }, + { + "partType": "rs" + }, + { + "partType": "lc" + }, + { + "partType": "rc" + }, + { + "partType": "cc" + }, + { + "partType": "cp" + } + ] + }, + { + "id": 10011, + "gender": "M", + "club": 0, + "colorable": true, + "selectable": false, + "preselectable": false, + "sellable": false, + "parts": [ + { + "id": 10002, + "type": "ss", + "colorable": true, + "index": 0, + "colorindex": 1 + } + ], + "hiddenLayers": [ + { + "partType": "ch" + }, + { + "partType": "lg" + }, + { + "partType": "ca" + }, + { + "partType": "wa" + }, + { + "partType": "sh" + }, + { + "partType": "ls" + }, + { + "partType": "rs" + }, + { + "partType": "lc" + }, + { + "partType": "rc" + }, + { + "partType": "cc" + }, + { + "partType": "cp" + } + ] + } + ] + } + ] + }, + "avatar.default.actions": { + "actions": [ + { + "id": "Default", + "state": "std", + "precedence": 1000, + "main": true, + "isDefault": true, + "geometryType": "vertical", + "activePartSet": "figure", + "assetPartDefinition": "std" + } + ] + }, + "pet.types": [ + "dog", + "cat", + "croco", + "terrier", + "bear", + "pig", + "lion", + "rhino", + "spider", + "turtle", + "chicken", + "frog", + "dragon", + "monster", + "monkey", + "horse", + "monsterplant", + "bunnyeaster", + "bunnyevil", + "bunnydepressed", + "bunnylove", + "pigeongood", + "pigeonevil", + "demonmonkey", + "bearbaby", + "terrierbaby", + "gnome", + "gnome", + "kittenbaby", + "puppybaby", + "pigletbaby", + "haloompa", + "fools", + "pterosaur", + "velociraptor", + "cow", + "LeetPen", + "bbwibb", + "elephants" + ], + "preload.assets.urls": [ + "${asset.url}/generic/avatar_additions.nitro", + "${asset.url}/generic/group_badge.nitro", + "${asset.url}/generic/floor_editor.nitro", + "${images.url}/loading_icon.png", + "${images.url}/clear_icon.png", + "${images.url}/big_arrow.png" + ] +} \ No newline at end of file diff --git a/public/ui-config.json b/public/ui-config.json index 04b4a20..ac761b3 100644 --- a/public/ui-config.json +++ b/public/ui-config.json @@ -1,21 +1,16 @@ { - "external.plugins": [ - "plugins/room-builder.js" - ], "image.library.notifications.url": "${image.library.url}notifications/%image%.png", "achievements.images.url": "${image.library.url}Quests/%image%.png", - "camera.url": "/swf/usercontent/camera/", - "thumbnails.url": "/swf/usercontent/thumbnails/%thumbnail%.png", + "camera.url": "http://192.168.0.8/camera/photo", + "thumbnails.url": "http://192.168.0.8/camera/photo/thumb/%thumbnail%.png", "url.prefix": "", - "habbopages.url": "/swf/habbopages/", + "habbopages.url": "/gamedata/habbopages/", "group.homepage.url": "${url.prefix}/groups/%groupid%/id", "guide.help.alpha.groupid": 0, "chat.viewer.height.percentage": 0.4, - "pathfinder.underpass.height": 1.5, "widget.dimmer.colorwheel": false, "avatar.wardrobe.max.slots": 10, - "user.badges.max.slots": 6, - "user.badges.group.slot.enabled": false, + "user.badges.max.slots": 5, "user.tags.enabled": false, "camera.publish.disabled": false, "hc.disabled": false, @@ -173,1107 +168,6 @@ "name": "9" } ], - "backgrounds.data": [{ - "backgroundId": 0, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 1, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 2, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 3, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 4, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 5, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 6, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 7, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 8, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 9, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 10, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 11, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 12, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 13, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 14, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 15, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 16, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 17, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 18, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 19, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 20, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 21, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 22, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 23, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 24, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 25, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 26, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 27, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 28, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 29, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 30, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 31, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 32, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 33, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 34, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 35, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 36, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 37, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 38, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 39, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 40, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 41, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 42, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 43, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 44, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 45, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 46, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 47, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 48, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 49, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 50, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 51, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 52, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 53, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 54, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 55, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 56, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 57, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 58, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 59, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 60, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 61, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 62, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 63, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 64, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 65, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 66, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 67, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 68, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 69, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 70, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 71, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 72, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 73, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 74, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 75, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 76, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 77, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 78, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 79, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 80, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 81, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 82, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 83, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 84, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 85, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 86, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 87, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 88, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 89, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 90, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 91, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 92, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 93, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 94, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 95, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 96, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 97, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 98, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 99, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 100, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 101, - "minRank": 2, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "backgroundId": 102, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 103, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 104, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 105, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 106, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 107, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 108, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 109, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 110, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 111, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 112, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 113, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 114, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 115, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 116, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 117, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 118, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 119, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 120, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 121, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 122, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 123, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 124, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 125, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 126, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 127, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 128, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 129, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 130, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 131, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 132, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 133, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 134, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 135, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 136, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 137, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 138, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 139, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 140, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 141, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 142, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 143, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 144, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 145, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 146, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 147, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 148, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 149, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 150, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 151, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 152, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 153, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 154, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 155, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 156, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 157, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 158, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 159, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 160, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 161, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 162, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 163, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 164, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 165, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 166, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 167, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 168, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 169, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 170, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 171, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 172, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 173, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 174, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 175, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 176, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 177, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 178, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 179, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 180, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 181, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 182, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 183, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 184, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 185, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 186, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "backgroundId": 187, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - } - ], - "stands.data": [{ - "standId": 0, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 1, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 2, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 3, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 4, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 5, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 6, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 7, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 8, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 9, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 10, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 11, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 12, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 13, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 14, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 15, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "standId": 16, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "standId": 17, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "standId": 18, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "standId": 19, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "standId": 20, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "standId": 21, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - } - ], - "overlays.data": [{ - "overlayId": 0, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "overlayId": 1, - "minRank": 0, - "isHcOnly": false, - "isAmbassadorOnly": false - }, { - "overlayId": 2, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 3, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 4, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 5, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 6, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 7, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - }, { - "overlayId": 8, - "minRank": 0, - "isHcOnly": true, - "isAmbassadorOnly": false - } - ], "hotelview": { "room.pool": "791", "room.picnic": "2193", @@ -1307,7 +201,7 @@ }, "images": { "background": "${asset.url}/images/reception/stretch_blue.png", - "background.colour": "#8ee0f0", + "background.colour": "#8ee0ff", "sun": "${asset.url}/images/reception/sun.png", "drape": "${asset.url}/images/reception/drape.png", "left": "", @@ -2429,4 +1323,4 @@ "image": "${image.library.url}/album1584/X1517.gif" } } -} +} \ No newline at end of file diff --git a/src/api/wired/WiredActionLayoutCode.ts b/src/api/wired/WiredActionLayoutCode.ts index 94c8f94..7508b70 100644 --- a/src/api/wired/WiredActionLayoutCode.ts +++ b/src/api/wired/WiredActionLayoutCode.ts @@ -56,4 +56,8 @@ export class WiredActionLayoutCode public static USERS_HANDITEM_SELECTOR: number = 55; public static FILTER_FURNI_EXTRA: number = 56; public static FILTER_USER_EXTRA: number = 57; + public static MOVE_CARRY_USERS_EXTRA: number = 58; + public static MOVE_NO_ANIMATION_EXTRA: number = 59; + public static ANIMATION_TIME_EXTRA: number = 60; + public static MOVE_PHYSICS_EXTRA: number = 61; } diff --git a/src/components/wired/views/actions/WiredActionFurniToFurniView.tsx b/src/components/wired/views/actions/WiredActionFurniToFurniView.tsx index 5f7cefc..dff73b0 100644 --- a/src/components/wired/views/actions/WiredActionFurniToFurniView.tsx +++ b/src/components/wired/views/actions/WiredActionFurniToFurniView.tsx @@ -81,9 +81,14 @@ export const WiredActionFurniToFurniView: FC<{}> = () => if(mode === 'move' && !canEditMove) return; if(mode === 'target' && !canEditTarget) return; + const nextMoveIds = (selectionMode === 'move') ? [ ...furniIds ] : [ ...moveFurniIds ]; + const nextTargetIds = (selectionMode === 'target') ? [ ...furniIds ] : [ ...targetFurniIds ]; + + setMoveFurniIds(nextMoveIds); + setTargetFurniIds(nextTargetIds); setSelectionMode(mode); - setFurniIds([ ...(mode === 'move' ? moveFurniIds : targetFurniIds) ]); - }, [ moveSource, targetSource, moveFurniIds, targetFurniIds, setFurniIds ]); + setFurniIds([ ...(mode === 'move' ? nextMoveIds : nextTargetIds) ]); + }, [ selectionMode, furniIds, moveSource, targetSource, moveFurniIds, targetFurniIds, setFurniIds ]); useEffect(() => { @@ -153,10 +158,16 @@ export const WiredActionFurniToFurniView: FC<{}> = () => const save = useCallback(() => { + const nextMoveIds = (selectionMode === 'move') ? [ ...furniIds ] : [ ...moveFurniIds ]; + const nextTargetIds = (selectionMode === 'target') ? [ ...furniIds ] : [ ...targetFurniIds ]; + + setMoveFurniIds(nextMoveIds); + setTargetFurniIds(nextTargetIds); + if(selectionMode === 'target') { setSelectionMode('move'); - setFurniIds([ ...moveFurniIds ]); + setFurniIds([ ...nextMoveIds ]); } setIntParams([ @@ -164,8 +175,8 @@ export const WiredActionFurniToFurniView: FC<{}> = () => targetSource ]); - setStringParam(serializeIds(targetFurniIds)); - }, [ selectionMode, moveFurniIds, moveSource, targetSource, targetFurniIds, setFurniIds, setIntParams, setStringParam ]); + setStringParam(serializeIds(nextTargetIds)); + }, [ selectionMode, furniIds, moveFurniIds, moveSource, targetSource, targetFurniIds, setFurniIds, setIntParams, setStringParam ]); const selectionLimit = trigger?.maximumItemSelectionCount ?? 0; diff --git a/src/components/wired/views/actions/WiredActionLayoutView.tsx b/src/components/wired/views/actions/WiredActionLayoutView.tsx index baa0278..d217f61 100644 --- a/src/components/wired/views/actions/WiredActionLayoutView.tsx +++ b/src/components/wired/views/actions/WiredActionLayoutView.tsx @@ -52,6 +52,10 @@ import { WiredActionToggleFurniStateView } from './WiredActionToggleFurniStateVi import { WiredActionUnfreezeView } from './WiredActionUnfreezeView'; import { WiredExtraFilterFurniView } from '../extras/WiredExtraFilterFurniView'; import { WiredExtraFilterUserView } from '../extras/WiredExtraFilterUserView'; +import { WiredExtraAnimationTimeView } from '../extras/WiredExtraAnimationTimeView'; +import { WiredExtraMoveCarryUsersView } from '../extras/WiredExtraMoveCarryUsersView'; +import { WiredExtraMoveNoAnimationView } from '../extras/WiredExtraMoveNoAnimationView'; +import { WiredExtraMovePhysicsView } from '../extras/WiredExtraMovePhysicsView'; export const WiredActionLayoutView = (code: number) => { @@ -165,6 +169,14 @@ export const WiredActionLayoutView = (code: number) => return ; case WiredActionLayoutCode.FILTER_USER_EXTRA: return ; + case WiredActionLayoutCode.MOVE_CARRY_USERS_EXTRA: + return ; + case WiredActionLayoutCode.MOVE_NO_ANIMATION_EXTRA: + return ; + case WiredActionLayoutCode.ANIMATION_TIME_EXTRA: + return ; + case WiredActionLayoutCode.MOVE_PHYSICS_EXTRA: + return ; case WiredActionLayoutCode.SEND_SIGNAL: return ; } diff --git a/src/components/wired/views/actions/WiredActionSendSignalView.tsx b/src/components/wired/views/actions/WiredActionSendSignalView.tsx index af6a253..77509e5 100644 --- a/src/components/wired/views/actions/WiredActionSendSignalView.tsx +++ b/src/components/wired/views/actions/WiredActionSendSignalView.tsx @@ -115,17 +115,28 @@ export const WiredActionSendSignalView: FC<{}> = () => if(mode === selectionMode) return; if(mode === 'furni' && furniSource !== SOURCE_SELECTED) return; + const nextAntennaIds = (selectionMode === 'antenna') ? [ ...furniIds ] : [ ...antennaIds ]; + const nextForwardFurniIds = (selectionMode === 'furni') ? [ ...furniIds ] : [ ...forwardFurniIds ]; + + setAntennaIds(nextAntennaIds); + setForwardFurniIds(nextForwardFurniIds); setSelectionMode(mode); - if(setFurniIds) setFurniIds([ ...((mode === 'antenna') ? antennaIds : forwardFurniIds) ]); - }, [ selectionMode, furniSource, antennaIds, forwardFurniIds, setFurniIds ]); + if(setFurniIds) setFurniIds([ ...((mode === 'antenna') ? nextAntennaIds : nextForwardFurniIds) ]); + }, [ selectionMode, furniSource, furniIds, antennaIds, forwardFurniIds, setFurniIds ]); const onChangeFurniSource = (next: number) => { - if(forwardFurniIds.length) setForwardFurniIds([]); + const nextAntennaIds = (selectionMode === 'antenna') ? [ ...furniIds ] : [ ...antennaIds ]; + + setAntennaIds(nextAntennaIds); + if(forwardFurniIds.length || selectionMode === 'furni') + { + setForwardFurniIds([]); + } if(selectionMode === 'furni') { - if(setFurniIds) setFurniIds([ ...antennaIds ]); + if(setFurniIds) setFurniIds([ ...nextAntennaIds ]); setSelectionMode('antenna'); } @@ -134,7 +145,19 @@ export const WiredActionSendSignalView: FC<{}> = () => const save = useCallback(() => { - const antennaSource = (antennaIds && antennaIds.length) ? antennaIds[0] : 0; + const nextAntennaIds = (selectionMode === 'antenna') ? [ ...furniIds ] : [ ...antennaIds ]; + const nextForwardFurniIds = (selectionMode === 'furni') ? [ ...furniIds ] : [ ...forwardFurniIds ]; + + setAntennaIds(nextAntennaIds); + setForwardFurniIds(nextForwardFurniIds); + + if(selectionMode === 'furni') + { + setSelectionMode('antenna'); + if(setFurniIds) setFurniIds([ ...nextAntennaIds ]); + } + + const antennaSource = (nextAntennaIds && nextAntennaIds.length) ? nextAntennaIds[0] : 0; setIntParams([ antennaSource, @@ -145,8 +168,8 @@ export const WiredActionSendSignalView: FC<{}> = () => 0, ]); - setStringParam(serializeForwardIds(forwardFurniIds)); - }, [ antennaIds, furniSource, userSource, signalPerFurni, signalPerUser, forwardFurniIds, setIntParams, setStringParam ]); + setStringParam(serializeForwardIds(nextForwardFurniIds)); + }, [ selectionMode, furniIds, antennaIds, furniSource, userSource, signalPerFurni, signalPerUser, forwardFurniIds, setFurniIds, setIntParams, setStringParam ]); useEffect(() => { diff --git a/src/components/wired/views/conditions/WiredConditionFurniIsOfTypeView.tsx b/src/components/wired/views/conditions/WiredConditionFurniIsOfTypeView.tsx index 1b5f413..383c66f 100644 --- a/src/components/wired/views/conditions/WiredConditionFurniIsOfTypeView.tsx +++ b/src/components/wired/views/conditions/WiredConditionFurniIsOfTypeView.tsx @@ -85,9 +85,14 @@ export const WiredConditionFurniIsOfTypeView: FC { @@ -161,10 +166,16 @@ export const WiredConditionFurniIsOfTypeView: FC { + const nextPrimaryIds = (selectionMode === 'primary') ? [ ...furniIds ] : [ ...primaryFurniIds ]; + const nextSecondaryIds = (selectionMode === 'secondary') ? [ ...furniIds ] : [ ...secondaryFurniIds ]; + + setPrimaryFurniIds(nextPrimaryIds); + setSecondaryFurniIds(nextSecondaryIds); + if(selectionMode === 'secondary') { setSelectionMode('primary'); - setFurniIds([ ...primaryFurniIds ]); + setFurniIds([ ...nextPrimaryIds ]); } setIntParams([ @@ -172,8 +183,8 @@ export const WiredConditionFurniIsOfTypeView: FC +{ + if(isNaN(value)) return DEFAULT_DURATION; + + return Math.max(MIN_DURATION, Math.min(MAX_DURATION, Math.round(value / STEP_DURATION) * STEP_DURATION)); +}; + +export const WiredExtraAnimationTimeView: FC<{}> = () => +{ + const { trigger = null, setIntParams = null, setStringParam = null } = useWired(); + const [ duration, setDuration ] = useState(DEFAULT_DURATION); + + useEffect(() => + { + if(!trigger) return; + + setDuration(normalizeDuration((trigger.intData.length > 0) ? trigger.intData[0] : DEFAULT_DURATION)); + }, [ trigger ]); + + const save = () => + { + setIntParams([ normalizeDuration(duration) ]); + setStringParam(''); + }; + + return ( + +
+ { LocalizeText('wiredfurni.params.anim_time.title') } + { LocalizeText('wiredfurni.params.anim_time.description') } + { LocalizeText('wiredfurni.params.anim_time.value', [ 'ms' ], [ duration.toString() ]) } + setDuration(normalizeDuration(Array.isArray(value) ? value[0] : Number(value))) } /> +
+
+ ); +}; diff --git a/src/components/wired/views/extras/WiredExtraMoveCarryUsersView.tsx b/src/components/wired/views/extras/WiredExtraMoveCarryUsersView.tsx new file mode 100644 index 0000000..2565902 --- /dev/null +++ b/src/components/wired/views/extras/WiredExtraMoveCarryUsersView.tsx @@ -0,0 +1,62 @@ +import { FC, useEffect, useState } from 'react'; +import { LocalizeText, WiredFurniType } from '../../../../api'; +import { Text } from '../../../../common'; +import { useWired } from '../../../../hooks'; +import { WiredSourceOption, WiredSourcesSelector } from '../WiredSourcesSelector'; +import { WiredExtraBaseView } from './WiredExtraBaseView'; + +const CARRY_MODE_DIRECT = 0; +const CARRY_MODE_SAME_TILE = 1; +const SOURCE_ALL_ROOM_USERS = 900; + +const USER_SOURCES: WiredSourceOption[] = [ + { value: SOURCE_ALL_ROOM_USERS, label: 'wiredfurni.params.sources.users.900' }, + { value: 0, label: 'wiredfurni.params.sources.users.0' }, + { value: 200, label: 'wiredfurni.params.sources.users.200' }, + { value: 201, label: 'wiredfurni.params.sources.users.201' } +]; + +const normalizeCarryMode = (value: number) => ((value === CARRY_MODE_SAME_TILE) ? CARRY_MODE_SAME_TILE : CARRY_MODE_DIRECT); +const normalizeUserSource = (value: number) => (USER_SOURCES.some(option => option.value === value) ? value : 0); + +export const WiredExtraMoveCarryUsersView: FC<{}> = () => +{ + const { trigger = null, setIntParams = null, setStringParam = null } = useWired(); + const [ carryMode, setCarryMode ] = useState(CARRY_MODE_DIRECT); + const [ userSource, setUserSource ] = useState(0); + + useEffect(() => + { + if(!trigger) return; + + setCarryMode(normalizeCarryMode((trigger.intData.length > 0) ? trigger.intData[0] : CARRY_MODE_DIRECT)); + setUserSource(normalizeUserSource((trigger.intData.length > 1) ? trigger.intData[1] : 0)); + }, [ trigger ]); + + const save = () => + { + setIntParams([ normalizeCarryMode(carryMode), normalizeUserSource(userSource) ]); + setStringParam(''); + }; + + return ( + setUserSource(normalizeUserSource(value)) } /> }> +
+ { LocalizeText('wiredfurni.params.carry_mode') } + + +
+
+ ); +}; diff --git a/src/components/wired/views/extras/WiredExtraMoveNoAnimationView.tsx b/src/components/wired/views/extras/WiredExtraMoveNoAnimationView.tsx new file mode 100644 index 0000000..0e13527 --- /dev/null +++ b/src/components/wired/views/extras/WiredExtraMoveNoAnimationView.tsx @@ -0,0 +1,25 @@ +import { FC } from 'react'; +import { LocalizeText, WiredFurniType } from '../../../../api'; +import { Text } from '../../../../common'; +import { useWired } from '../../../../hooks'; +import { WiredExtraBaseView } from './WiredExtraBaseView'; + +export const WiredExtraMoveNoAnimationView: FC<{}> = () => +{ + const { setIntParams = null, setStringParam = null } = useWired(); + + const save = () => + { + setIntParams([]); + setStringParam(''); + }; + + return ( + +
+ { LocalizeText('wiredfurni.params.mov_no_animation.title') } + { LocalizeText('wiredfurni.params.mov_no_animation.description') } +
+
+ ); +}; diff --git a/src/components/wired/views/extras/WiredExtraMovePhysicsView.tsx b/src/components/wired/views/extras/WiredExtraMovePhysicsView.tsx new file mode 100644 index 0000000..62085e2 --- /dev/null +++ b/src/components/wired/views/extras/WiredExtraMovePhysicsView.tsx @@ -0,0 +1,120 @@ +import { FC, useEffect, useMemo, useState } from 'react'; +import { LocalizeText, WiredFurniType } from '../../../../api'; +import { Text } from '../../../../common'; +import { useWired } from '../../../../hooks'; +import { WiredSourceOption, WiredSourcesSelector } from '../WiredSourcesSelector'; +import { WiredExtraBaseView } from './WiredExtraBaseView'; + +const SOURCE_ALL_ROOM = 900; +const DEFAULT_SOURCE = 0; + +const FURNI_SOURCES: WiredSourceOption[] = [ + { value: SOURCE_ALL_ROOM, label: 'wiredfurni.params.sources.furni.900' }, + { value: 0, label: 'wiredfurni.params.sources.furni.0' }, + { value: 200, label: 'wiredfurni.params.sources.furni.200' }, + { value: 201, label: 'wiredfurni.params.sources.furni.201' } +]; + +const USER_SOURCES: WiredSourceOption[] = [ + { value: SOURCE_ALL_ROOM, label: 'wiredfurni.params.sources.users.900' }, + { value: 0, label: 'wiredfurni.params.sources.users.0' }, + { value: 200, label: 'wiredfurni.params.sources.users.200' }, + { value: 201, label: 'wiredfurni.params.sources.users.201' } +]; + +const normalizeSource = (value: number, options: WiredSourceOption[]) => (options.some(option => option.value === value) ? value : DEFAULT_SOURCE); +const getFlag = (value: number) => (value === 1); + +export const WiredExtraMovePhysicsView: FC<{}> = () => +{ + const { trigger = null, setIntParams = null, setStringParam = null } = useWired(); + const [ keepAltitude, setKeepAltitude ] = useState(false); + const [ moveThroughFurni, setMoveThroughFurni ] = useState(false); + const [ moveThroughUsers, setMoveThroughUsers ] = useState(false); + const [ blockByFurni, setBlockByFurni ] = useState(false); + const [ moveThroughFurniSource, setMoveThroughFurniSource ] = useState(DEFAULT_SOURCE); + const [ blockByFurniSource, setBlockByFurniSource ] = useState(DEFAULT_SOURCE); + const [ moveThroughUsersSource, setMoveThroughUsersSource ] = useState(DEFAULT_SOURCE); + + useEffect(() => + { + if(!trigger) return; + + setKeepAltitude(getFlag(trigger.intData[0] ?? 0)); + setMoveThroughFurni(getFlag(trigger.intData[1] ?? 0)); + setMoveThroughUsers(getFlag(trigger.intData[2] ?? 0)); + setBlockByFurni(getFlag(trigger.intData[3] ?? 0)); + setMoveThroughFurniSource(normalizeSource((trigger.intData[4] ?? DEFAULT_SOURCE), FURNI_SOURCES)); + setBlockByFurniSource(normalizeSource((trigger.intData[5] ?? DEFAULT_SOURCE), FURNI_SOURCES)); + setMoveThroughUsersSource(normalizeSource((trigger.intData[6] ?? DEFAULT_SOURCE), USER_SOURCES)); + }, [ trigger ]); + + const save = () => + { + setIntParams([ + keepAltitude ? 1 : 0, + moveThroughFurni ? 1 : 0, + moveThroughUsers ? 1 : 0, + blockByFurni ? 1 : 0, + normalizeSource(moveThroughFurniSource, FURNI_SOURCES), + normalizeSource(blockByFurniSource, FURNI_SOURCES), + normalizeSource(moveThroughUsersSource, USER_SOURCES) + ]); + setStringParam(''); + }; + + const footer = useMemo(() => + { + if(!moveThroughFurni && !blockByFurni && !moveThroughUsers) return null; + + return ( +
+ { moveThroughFurni && + setMoveThroughFurniSource(normalizeSource(value, FURNI_SOURCES)) } /> } + { blockByFurni && + setBlockByFurniSource(normalizeSource(value, FURNI_SOURCES)) } /> } + { moveThroughUsers && + setMoveThroughUsersSource(normalizeSource(value, USER_SOURCES)) } /> } +
+ ); + }, [ blockByFurni, blockByFurniSource, moveThroughFurni, moveThroughFurniSource, moveThroughUsers, moveThroughUsersSource ]); + + return ( + +
+ { LocalizeText('wiredfurni.params.select_options') } + + + + +
+
+ ); +}; diff --git a/src/components/wired/views/selectors/WiredSelectorFurniByTypeView.tsx b/src/components/wired/views/selectors/WiredSelectorFurniByTypeView.tsx index d39b4df..7ee4bff 100644 --- a/src/components/wired/views/selectors/WiredSelectorFurniByTypeView.tsx +++ b/src/components/wired/views/selectors/WiredSelectorFurniByTypeView.tsx @@ -12,7 +12,7 @@ export const WiredSelectorFurniByTypeView: FC<{}> = () => const [ filterExisting, setFilterExisting ] = useState(false); const [ invert, setInvert ] = useState(false); - const { trigger = null, setIntParams, setSelectByType } = useWired(); + const { trigger = null, setIntParams } = useWired(); useEffect(() => { @@ -24,11 +24,6 @@ export const WiredSelectorFurniByTypeView: FC<{}> = () => if(p.length >= 4) setInvert(p[3] === 1); }, [ trigger ]); - useEffect(() => - { - setSelectByType(true); - }, [ setSelectByType ]); - const save = useCallback(() => { setIntParams([ diff --git a/src/hooks/wired/useWired.ts b/src/hooks/wired/useWired.ts index 0fc52c8..e6e3b53 100644 --- a/src/hooks/wired/useWired.ts +++ b/src/hooks/wired/useWired.ts @@ -13,7 +13,7 @@ const useWiredState = () => const [ furniIds, setFurniIds ] = useState([]); const [ actionDelay, setActionDelay ] = useState(0); const [ allowsFurni, setAllowsFurni ] = useState(WiredFurniType.STUFF_SELECTION_OPTION_NONE); - const [ selectByType, setSelectByType ] = useState(false); + const selectByType = false; const [ neighborhoodTiles, setNeighborhoodTiles ] = useState<{ x: number; y: number }[] | null>(null); const [ neighborhoodInvert, setNeighborhoodInvert ] = useState(false); const [ allowedInteractionTypes, setAllowedInteractionTypes ] = useState(null); @@ -303,7 +303,6 @@ const useWiredState = () => return []; }); setAllowsFurni(WiredFurniType.STUFF_SELECTION_OPTION_NONE); - setSelectByType(false); setNeighborhoodTiles(null); setNeighborhoodInvert(false); setAllowedInteractionTypes(null); @@ -311,7 +310,7 @@ const useWiredState = () => }; }, [ trigger ]); - return { trigger, setTrigger, intParams, setIntParams, stringParam, setStringParam, furniIds, setFurniIds, actionDelay, setActionDelay, setAllowsFurni, saveWired, selectObjectForWired, setSelectByType, setNeighborhoodTiles, setNeighborhoodInvert, setAllowedInteractionTypes, setAllowedInteractionErrorKey }; + return { trigger, setTrigger, intParams, setIntParams, stringParam, setStringParam, furniIds, setFurniIds, actionDelay, setActionDelay, setAllowsFurni, saveWired, selectObjectForWired, setNeighborhoodTiles, setNeighborhoodInvert, setAllowedInteractionTypes, setAllowedInteractionErrorKey }; }; export const useWired = () => useBetween(useWiredState); diff --git a/vite.config.mjs b/vite.config.mjs index 772bb5f..8e54d8e 100644 --- a/vite.config.mjs +++ b/vite.config.mjs @@ -1,9 +1,15 @@ import react from '@vitejs/plugin-react'; +import { existsSync } from 'fs'; import { resolve } from 'path'; import { defineConfig } from 'vite'; import tsconfigPaths from 'vite-tsconfig-paths'; -const renderer3 = resolve(__dirname, '..', 'renderer3'); +const rendererCandidates = [ + resolve(__dirname, '..', 'Nitro_Render_V3'), + resolve(__dirname, '..', 'renderer3') +]; + +const renderer3 = rendererCandidates.find(path => existsSync(path)) ?? rendererCandidates[0]; export default defineConfig({ plugins: [ react(), tsconfigPaths() ], @@ -39,7 +45,7 @@ export default defineConfig({ '@nitrots/sound': resolve(renderer3, 'packages/sound/src/index.ts'), '@nitrots/utils/src': resolve(renderer3, 'packages/utils/src'), '@nitrots/utils': resolve(renderer3, 'packages/utils/src/index.ts'), - // Resolve pixi.js and pixi-filters from renderer3's node_modules + // Resolve renderer peer dependencies from the renderer workspace 'pixi.js': resolve(renderer3, 'node_modules/pixi.js'), 'pixi-filters': resolve(renderer3, 'node_modules/pixi-filters'), 'howler': resolve(renderer3, 'node_modules/howler'), @@ -55,7 +61,7 @@ export default defineConfig({ { if(id.includes('node_modules')) { - if(id.includes('@nitrots/nitro-renderer') || id.includes('renderer3')) return 'nitro-renderer'; + if(id.includes('@nitrots/nitro-renderer') || id.includes('renderer3') || id.includes('Nitro_Render_V3')) return 'nitro-renderer'; return 'vendor'; }