Commit Graph

212 Commits

Author SHA1 Message Date
Life c9e7461714 Dynamic badge slots from config, double-click remove, direct wear from toast
Read user.badges.max.slots from config instead of hardcoded 5. InfoStand
layout adapts: 5 slots shows group badge, 6 slots replaces group with
6th badge. Double-click on InfoStand badge removes it. Badge received
toast now directly equips the badge via toggleBadge and closes.
2026-04-04 21:25:45 +02:00
Life 020db83870 Add golden glow for new badges and badge received toast notification
New unseen badges pulse with a gold glow instead of a flat green
background. When a badge is received, a bubble notification appears
with the badge image, name, and a "Wear" button that opens inventory.
2026-04-04 21:25:16 +02:00
Life 73ee9c7603 Badge DnD rework: fix duplicate/disappearing badges, add visual feedback
Fix slot 0 drag bug ('0' is falsy), prevent badge duplication from stale
props fallback in InfoStand, add sparse slot support, fix race condition
with pending server updates. Add drag preview, glow animations, drop
settle effect, and remove-badge indicator overlay.
2026-04-04 21:25:03 +02:00
Lorenzune c4e1318fd5 fix: polish furniture widgets and area hide toggle 2026-04-03 13:00:05 +02:00
Lorenzune e4b1f14fa2 feat: update room control widgets and menus 2026-04-03 12:09:16 +02:00
Lorenzune 21193daebb Merge upstream/main into feature/checkpoint-20260403 2026-04-03 05:26:19 +02:00
Lorenzune 36c0221a54 chore: checkpoint current work 2026-04-03 05:22:26 +02:00
Lorenzune 83540ff329 feat: add advanced wired variable tools UI 2026-04-02 04:44:04 +02:00
duckietm 6609c0325f 🆙 Fix Youtube TV's 2026-03-31 11:41:21 +02:00
Life a5a7215e09 Change pendingActionRef to hold action and itemId
Refactor pendingActionRef to store action and itemId as an object instead of a string.
2026-03-30 17:55:11 +02:00
Life c4d948cd3a feat: FurniEditor WebSocket — full UI with toolbar icon, infostand button, Edit/Search views, Tailwind styling 2026-03-28 08:52:59 +01:00
duckietm bbe71e9753 🆙 Cleanup Furni-Edit & Fix the avatar-editor 2026-03-27 13:38:03 +01:00
duckietm 7c39dcb513 🆙 Small fixes NFT Clothing 2026-03-26 16:29:27 +01:00
Lorenzune 3b3e91f6d9 Add NFT avatar tab and wired extras UI 2026-03-26 05:24:53 +01:00
duckietm 303b75d378 🆕 🐶 have you favorite pet as your best pall next to you 2026-03-25 14:11:53 +01:00
duckietm df1437c488 🆙 Cleanup 2026-03-24 11:56:51 +01:00
DuckieTM 4aef7d5f94 Merge branch 'main' into chat-prefix 2026-03-24 10:54:42 +01:00
duckietm 33c31fe07d 🆕 Added New catalogue page 2026-03-23 15:02:20 +01:00
duckietm accb69d6c9 🆙 Reverting furnieditor 2026-03-23 12:00:31 +01:00
duckietm a0d0b5c4a4 Revert "Merge branch 'main' into furnisettingeditor-pr"
This reverts commit dfbfb1c2c1, reversing
changes made to 07702c44d0.
2026-03-23 11:49:05 +01:00
DuckieTM dfbfb1c2c1 Merge branch 'main' into furnisettingeditor-pr 2026-03-23 11:13:00 +01:00
DuckieTM 735be2aff6 Merge branch 'main' into catalog-redesign 2026-03-23 08:49:20 +01:00
DuckieTM b73c0841f2 Merge pull request #40 from Lorenzune/feature/wired-movement-source-fixes
feat: update wired editor extras and selection handling
2026-03-22 21:26:53 +01:00
Life da791cd0d0 0 2026-03-22 20:40:05 +01:00
Life 07702c44d0 feat(furni-editor): migrate to WebSocket communication and improve UI
Migrate the Furni Editor from REST API to WebSocket-based communication
using custom packet handlers (10040-10046). The editor now communicates
directly with the emulator for all CRUD operations on furniture items.

Key changes:
- Replace REST API calls with WebSocket composers/parsers for search,
  edit, create, and delete operations
- Read furnituredata.json path from renderer-config.json for asset
  management
- Improve search UI with larger fonts, better contrast, and click-to-copy
  ID functionality with toast notification
- Compact edit view layout with collapsible sections and visual dividers
- Remove unused Create tab (creation handled via edit workflow)
- Add isModerator guard for admin-only access
- Support search by ID, name, or sprite ID with type filtering
2026-03-22 17:57:27 +01:00
Life a5ea88010e feat: catalog style toggle (classic/new) with admin mode & favorites 2026-03-22 16:54:40 +01:00
Lorenzune 3e20f65f3a feat: update wired editor extras and selection handling 2026-03-22 16:48:51 +01:00
DuckieTM a1bbc20712 Merge pull request #36 from simoleo89/feature/catalog-ui-pr
feat(catalog): complete UI redesign with admin mode & favorites
2026-03-21 18:29:27 +01:00
simoleo89 74dce1d55d feat(catalog): complete UI redesign with admin mode & favorites
- Modern card-based layout with vertical icon rail, breadcrumb nav, inline search
- Admin mode: edit/create/delete pages and offers, drag & drop reorder via HK API
- Favorites system: heart on furni, star on pages, localStorage persistence
- Redesigned product card with price pills, dynamic quantity spinner
- Upgraded trophies (filter tabs, parchment textarea), pets (breed/color flow),
  custom prefix (dynamic color boxes)
- Font fix: Ubuntu Regular, proper @font-face declarations
- New Tailwind design tokens and CatalogTexts.json for localization
2026-03-21 16:49:35 +01:00
Lorenzune 6e76c617c1 Merge remote-tracking branch 'upstream/main'
# Conflicts:
#	public/UITexts.example
#	src/api/wired/WiredActionLayoutCode.ts
#	src/api/wired/WiredConditionLayoutCode.ts
#	src/api/wired/WiredTriggerLayoutCode.ts
#	src/components/wired/views/WiredBaseView.tsx
#	src/components/wired/views/WiredSourcesSelector.tsx
#	src/components/wired/views/actions/WiredActionLayoutView.tsx
#	src/components/wired/views/conditions/WiredConditionLayoutView.tsx
#	src/components/wired/views/conditions/WiredConditionTriggererMatchView.tsx
#	src/components/wired/views/triggers/WiredTriggerClickFurniView.tsx
#	src/components/wired/views/triggers/WiredTriggerClickTileView.tsx
#	src/components/wired/views/triggers/WiredTriggerClickUserView.tsx
#	src/components/wired/views/triggers/WiredTriggerLayoutView.tsx
#	src/components/wired/views/triggers/WiredTriggerToggleFurniView.tsx
2026-03-21 14:47:52 +01:00
Lorenzune 27cb71f0cc feat(wired-ui): expand advanced wired editors 2026-03-21 14:27:57 +01:00
DuckieTM 581f7957e8 Merge pull request #31 from duckietm/Dev
Dev
2026-03-21 08:43:37 +01:00
Medievalshell 7be552a523 Merge branch 'main' into improve-mod-tools-ui 2026-03-20 22:25:19 +01:00
simoleo89 11543bb64c feat: custom prefix system with effects, emoji picker and per-letter colors
- Catalog page for creating custom prefixes with text, per-letter colors, emoji icon and visual effects
- Emoji picker via @emoji-mart/react with createPortal + Shadow DOM blur fix
- Inventory prefix management (activate/deactivate/delete)
- Chat bubble rendering with multi-color prefix and effect support
- Prefix utilities (getPrefixEffectStyle, parsePrefixColors, PREFIX_EFFECT_KEYFRAMES)
- All UI text in English
2026-03-20 17:07:33 +01:00
duckietm 961457c508 🆙 Stage 1 reconnect 2026-03-20 16:06:51 +01:00
duckietm 4f2299e492 🆕 Disconnection handler, when you got disconnected you automatic go back to the room 2026-03-19 15:05:41 +01:00
DuckieTM 1eb3946500 Merge branch 'main' into pr/wired-freeze-furni-movement-ui-clean-20260318 2026-03-19 10:03:32 +01:00
Lorenzune 146f8e6b0d feat(wired-ui): add upcounter clock controls and checks 2026-03-19 00:01:59 +01:00
Lorenzune f4ddf406ad feat(wired-ui): add freeze and furni movement action views
- add UI support for FREEZE, UNFREEZE, FURNI_TO_USER, USER_TO_FURNI and FURNI_TO_FURNI

- add secondary furni source 101 and dual furni-source labels for furni-to-furni targeting

- extend source selectors for custom source sets and titles

- add green primary and blue secondary wired highlights

- clear wired highlights globally on close, reopen and save to avoid stuck selections
2026-03-18 17:38:49 +01:00
Lorenzune 2bbc31b1c7 Merge branch 'duckietm:main' into main 2026-03-18 17:18:48 +01:00
Lorenzune 12e50ff1cd fix(wired-ui): clarify reward fields and mute alerts 2026-03-18 17:03:26 +01:00
Lorenzune 97aae71708 fix(wired-ui): clarify reward fields and mute alerts 2026-03-18 17:01:10 +01:00
duckietm 50a0e3911a 🆙 Fix screen offset being stale after resize 2026-03-18 13:53:14 +01:00
Lorenzune 5f2e9af7fb feat(wired-ui): add freeze and furni movement action views
- add UI support for FREEZE, UNFREEZE, FURNI_TO_USER, USER_TO_FURNI and FURNI_TO_FURNI

- add secondary furni source 101 and dual furni-source labels for furni-to-furni targeting

- extend source selectors for custom source sets and titles

- add green primary and blue secondary wired highlights

- clear wired highlights globally on close, reopen and save to avoid stuck selections
2026-03-17 03:28:00 +01:00
simoleo89 119d12a5ea Add quick commands autocomplete dropdown in chat input
Server-authoritative command list via packet 4050, merged with
client-only commands. Supports keyboard navigation, filtering,
and module-level caching to handle login-time packet timing.

Co-Authored-By: medievalshell <medievalshell@users.noreply.github.com>
2026-03-16 22:41:35 +01:00
simoleo89 10ce76c0bb Fix inventory badge slots not reading from config
Use maxBadgeCount from hook (ui-config) instead of hardcoded 5

Co-Authored-By: medievalshell <medievalshell@users.noreply.github.com>
2026-03-16 21:07:08 +01:00
simoleo89 2d9d889da5 feat(badges): add drag & drop system for InfoStand and inventory
- Drag & drop badges between active slots in InfoStand (own user only)
- Mini badge picker on empty slot click with search
- Swap/reorder badges between occupied slots
- Hover animation (scale, glow) on badge slots
- Race condition fix: localChangeRef prevents server response from overwriting local changes
- Fixed-size array logic to prevent badge disappearing on room enter
- Use avatarInfo badges as fallback when hook data not yet loaded
2026-03-16 18:13:52 +01:00
simoleo89 4e0cb75aef Merge remote-tracking branch 'upstream/main'
* upstream/main:
  feat(wired): update source-aware furni and signal UI
  wired ui: add source selector support
2026-03-16 17:33:36 +01:00
Lorenzune f437db2fae feat(wired): update source-aware furni and signal UI 2026-03-16 15:24:26 +01:00
Lorenzune 31d3dfea44 feat(wired): update source-aware furni and signal UI 2026-03-16 15:12:42 +01:00