From b69e5712020cab07f91e1798fcc8ce7923d16af2 Mon Sep 17 00:00:00 2001 From: Aran Roig Date: Sun, 26 Apr 2026 00:52:59 +0200 Subject: [PATCH] Enough for today --- .gitea/workflows/deploy.yml | 39 + frontend/18n.config.ts | 6 + .../app/components/managers/WindowManager.vue | 4 +- .../app/components/windows/ExampleWindow.vue | 2 +- .../app/components/windows/LoginWindow.vue | 15 +- .../app/components/windows/RegisterWindow.vue | 2 +- .../windows/partials/WindowHandle.vue | 5 +- frontend/app/services/Sound.js | 15 + frontend/app/services/WindowDefinitions.js | 24 + frontend/app/services/Windows.js | 79 +- frontend/i18n/locales/ca.json | 1 + frontend/i18n/locales/en.json | 16 + frontend/i18n/locales/es.json | 1 + frontend/nuxt.config.ts | 15 +- frontend/package-lock.json | 2560 +++++++++++++++++ frontend/package.json | 1 + frontend/public/sounds/click.wav | Bin 0 -> 18344 bytes frontend/public/sounds/close.wav | Bin 0 -> 89348 bytes frontend/public/sounds/dice.wav | Bin 0 -> 134120 bytes .../sounds/doors/futuristic/close-fast.ogg | Bin 0 -> 36681 bytes .../doors/futuristic/close-forcefield.ogg | Bin 0 -> 151332 bytes .../doors/futuristic/close-hydraulic.ogg | Bin 0 -> 59989 bytes .../public/sounds/doors/futuristic/lock.ogg | Bin 0 -> 41690 bytes .../sounds/doors/futuristic/open-fast.ogg | Bin 0 -> 40361 bytes .../doors/futuristic/open-forcefield.ogg | Bin 0 -> 195330 bytes .../doors/futuristic/open-hydraulic.ogg | Bin 0 -> 76839 bytes .../doors/futuristic/test-forcefield.ogg | Bin 0 -> 22856 bytes .../public/sounds/doors/futuristic/test.ogg | Bin 0 -> 19555 bytes .../public/sounds/doors/futuristic/unlock.ogg | Bin 0 -> 48735 bytes .../sounds/doors/industrial/close-creaky.ogg | Bin 0 -> 49516 bytes .../public/sounds/doors/industrial/close.ogg | Bin 0 -> 41072 bytes .../public/sounds/doors/industrial/lock.ogg | Bin 0 -> 30103 bytes .../sounds/doors/industrial/open-creaky.ogg | Bin 0 -> 81945 bytes .../public/sounds/doors/industrial/open.ogg | Bin 0 -> 65803 bytes .../public/sounds/doors/industrial/test.ogg | Bin 0 -> 32063 bytes .../public/sounds/doors/industrial/unlock.ogg | Bin 0 -> 22439 bytes frontend/public/sounds/doors/jail/close.ogg | Bin 0 -> 86013 bytes frontend/public/sounds/doors/jail/lock.ogg | Bin 0 -> 69357 bytes frontend/public/sounds/doors/jail/open.ogg | Bin 0 -> 87694 bytes frontend/public/sounds/doors/jail/test.ogg | Bin 0 -> 52711 bytes frontend/public/sounds/doors/jail/unlock.ogg | Bin 0 -> 41570 bytes .../public/sounds/doors/magic/door-close.ogg | Bin 0 -> 98778 bytes .../public/sounds/doors/magic/door-open.ogg | Bin 0 -> 155551 bytes frontend/public/sounds/doors/magic/lock.ogg | Bin 0 -> 81017 bytes frontend/public/sounds/doors/magic/test.ogg | Bin 0 -> 84367 bytes frontend/public/sounds/doors/magic/unlock.ogg | Bin 0 -> 82545 bytes .../public/sounds/doors/magic/wall-close.ogg | Bin 0 -> 192743 bytes .../public/sounds/doors/magic/wall-open.ogg | Bin 0 -> 185453 bytes frontend/public/sounds/doors/metal/close.ogg | Bin 0 -> 55395 bytes frontend/public/sounds/doors/metal/lock.ogg | Bin 0 -> 35811 bytes frontend/public/sounds/doors/metal/open.ogg | Bin 0 -> 60101 bytes frontend/public/sounds/doors/metal/test.ogg | Bin 0 -> 46777 bytes frontend/public/sounds/doors/metal/unlock.ogg | Bin 0 -> 42559 bytes .../public/sounds/doors/shutter/close.ogg | Bin 0 -> 116796 bytes frontend/public/sounds/doors/shutter/lock.ogg | Bin 0 -> 45938 bytes frontend/public/sounds/doors/shutter/open.ogg | Bin 0 -> 91970 bytes frontend/public/sounds/doors/shutter/test.ogg | Bin 0 -> 53967 bytes .../public/sounds/doors/shutter/unlock.ogg | Bin 0 -> 48090 bytes .../sounds/doors/sliding/close-wood.ogg | Bin 0 -> 52034 bytes .../public/sounds/doors/sliding/close.ogg | Bin 0 -> 69073 bytes frontend/public/sounds/doors/sliding/lock.ogg | Bin 0 -> 30103 bytes .../public/sounds/doors/sliding/open-wood.ogg | Bin 0 -> 36742 bytes frontend/public/sounds/doors/sliding/open.ogg | Bin 0 -> 74967 bytes frontend/public/sounds/doors/sliding/test.ogg | Bin 0 -> 28273 bytes .../public/sounds/doors/sliding/unlock.ogg | Bin 0 -> 22439 bytes .../public/sounds/doors/stone/close-rocky.ogg | Bin 0 -> 151921 bytes .../public/sounds/doors/stone/close-sandy.ogg | Bin 0 -> 137028 bytes frontend/public/sounds/doors/stone/close.ogg | Bin 0 -> 83601 bytes frontend/public/sounds/doors/stone/lock.ogg | Bin 0 -> 60249 bytes .../public/sounds/doors/stone/open-rocky.ogg | Bin 0 -> 170848 bytes .../public/sounds/doors/stone/open-sandy.ogg | Bin 0 -> 129577 bytes frontend/public/sounds/doors/stone/open.ogg | Bin 0 -> 90679 bytes frontend/public/sounds/doors/stone/test.ogg | Bin 0 -> 19813 bytes frontend/public/sounds/doors/stone/unlock.ogg | Bin 0 -> 59089 bytes .../public/sounds/doors/wood/close-creaky.ogg | Bin 0 -> 65548 bytes .../public/sounds/doors/wood/close-heavy.ogg | Bin 0 -> 34169 bytes frontend/public/sounds/doors/wood/close.ogg | Bin 0 -> 29883 bytes frontend/public/sounds/doors/wood/lock.ogg | Bin 0 -> 51256 bytes .../public/sounds/doors/wood/open-creaky.ogg | Bin 0 -> 112779 bytes .../public/sounds/doors/wood/open-heavy.ogg | Bin 0 -> 47598 bytes frontend/public/sounds/doors/wood/open.ogg | Bin 0 -> 54834 bytes frontend/public/sounds/doors/wood/test.ogg | Bin 0 -> 38889 bytes frontend/public/sounds/doors/wood/unlock.ogg | Bin 0 -> 44172 bytes frontend/public/sounds/drums.wav | Bin 0 -> 835304 bytes frontend/public/sounds/lock.wav | Bin 0 -> 144680 bytes frontend/public/sounds/notify.wav | Bin 0 -> 92204 bytes frontend/public/sounds/roll1.wav | Bin 0 -> 89364 bytes frontend/public/sounds/roll2.wav | Bin 0 -> 89356 bytes frontend/public/sounds/snap.wav | Bin 0 -> 59018 bytes 89 files changed, 2727 insertions(+), 58 deletions(-) create mode 100644 .gitea/workflows/deploy.yml create mode 100644 frontend/18n.config.ts create mode 100644 frontend/app/services/Sound.js create mode 100644 frontend/app/services/WindowDefinitions.js create mode 100644 frontend/i18n/locales/ca.json create mode 100644 frontend/i18n/locales/en.json create mode 100644 frontend/i18n/locales/es.json create mode 100644 frontend/public/sounds/click.wav create mode 100644 frontend/public/sounds/close.wav create mode 100644 frontend/public/sounds/dice.wav create mode 100644 frontend/public/sounds/doors/futuristic/close-fast.ogg create mode 100644 frontend/public/sounds/doors/futuristic/close-forcefield.ogg create mode 100644 frontend/public/sounds/doors/futuristic/close-hydraulic.ogg create mode 100644 frontend/public/sounds/doors/futuristic/lock.ogg create mode 100644 frontend/public/sounds/doors/futuristic/open-fast.ogg create mode 100644 frontend/public/sounds/doors/futuristic/open-forcefield.ogg create mode 100644 frontend/public/sounds/doors/futuristic/open-hydraulic.ogg create mode 100644 frontend/public/sounds/doors/futuristic/test-forcefield.ogg create mode 100644 frontend/public/sounds/doors/futuristic/test.ogg create mode 100644 frontend/public/sounds/doors/futuristic/unlock.ogg create mode 100644 frontend/public/sounds/doors/industrial/close-creaky.ogg create mode 100644 frontend/public/sounds/doors/industrial/close.ogg create mode 100644 frontend/public/sounds/doors/industrial/lock.ogg create mode 100644 frontend/public/sounds/doors/industrial/open-creaky.ogg create mode 100644 frontend/public/sounds/doors/industrial/open.ogg create mode 100644 frontend/public/sounds/doors/industrial/test.ogg create mode 100644 frontend/public/sounds/doors/industrial/unlock.ogg create mode 100644 frontend/public/sounds/doors/jail/close.ogg create mode 100644 frontend/public/sounds/doors/jail/lock.ogg create mode 100644 frontend/public/sounds/doors/jail/open.ogg create mode 100644 frontend/public/sounds/doors/jail/test.ogg create mode 100644 frontend/public/sounds/doors/jail/unlock.ogg create mode 100644 frontend/public/sounds/doors/magic/door-close.ogg create mode 100644 frontend/public/sounds/doors/magic/door-open.ogg create mode 100644 frontend/public/sounds/doors/magic/lock.ogg create mode 100644 frontend/public/sounds/doors/magic/test.ogg create mode 100644 frontend/public/sounds/doors/magic/unlock.ogg create mode 100644 frontend/public/sounds/doors/magic/wall-close.ogg create mode 100644 frontend/public/sounds/doors/magic/wall-open.ogg create mode 100644 frontend/public/sounds/doors/metal/close.ogg create mode 100644 frontend/public/sounds/doors/metal/lock.ogg create mode 100644 frontend/public/sounds/doors/metal/open.ogg create mode 100644 frontend/public/sounds/doors/metal/test.ogg create mode 100644 frontend/public/sounds/doors/metal/unlock.ogg create mode 100644 frontend/public/sounds/doors/shutter/close.ogg create mode 100644 frontend/public/sounds/doors/shutter/lock.ogg create mode 100644 frontend/public/sounds/doors/shutter/open.ogg create mode 100644 frontend/public/sounds/doors/shutter/test.ogg create mode 100644 frontend/public/sounds/doors/shutter/unlock.ogg create mode 100644 frontend/public/sounds/doors/sliding/close-wood.ogg create mode 100644 frontend/public/sounds/doors/sliding/close.ogg create mode 100644 frontend/public/sounds/doors/sliding/lock.ogg create mode 100644 frontend/public/sounds/doors/sliding/open-wood.ogg create mode 100644 frontend/public/sounds/doors/sliding/open.ogg create mode 100644 frontend/public/sounds/doors/sliding/test.ogg create mode 100644 frontend/public/sounds/doors/sliding/unlock.ogg create mode 100644 frontend/public/sounds/doors/stone/close-rocky.ogg create mode 100644 frontend/public/sounds/doors/stone/close-sandy.ogg create mode 100644 frontend/public/sounds/doors/stone/close.ogg create mode 100644 frontend/public/sounds/doors/stone/lock.ogg create mode 100644 frontend/public/sounds/doors/stone/open-rocky.ogg create mode 100644 frontend/public/sounds/doors/stone/open-sandy.ogg create mode 100644 frontend/public/sounds/doors/stone/open.ogg create mode 100644 frontend/public/sounds/doors/stone/test.ogg create mode 100644 frontend/public/sounds/doors/stone/unlock.ogg create mode 100644 frontend/public/sounds/doors/wood/close-creaky.ogg create mode 100644 frontend/public/sounds/doors/wood/close-heavy.ogg create mode 100644 frontend/public/sounds/doors/wood/close.ogg create mode 100644 frontend/public/sounds/doors/wood/lock.ogg create mode 100644 frontend/public/sounds/doors/wood/open-creaky.ogg create mode 100644 frontend/public/sounds/doors/wood/open-heavy.ogg create mode 100644 frontend/public/sounds/doors/wood/open.ogg create mode 100644 frontend/public/sounds/doors/wood/test.ogg create mode 100644 frontend/public/sounds/doors/wood/unlock.ogg create mode 100644 frontend/public/sounds/drums.wav create mode 100644 frontend/public/sounds/lock.wav create mode 100644 frontend/public/sounds/notify.wav create mode 100644 frontend/public/sounds/roll1.wav create mode 100644 frontend/public/sounds/roll2.wav create mode 100644 frontend/public/sounds/snap.wav diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..b6c9ce7 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,39 @@ +name: Build and Deploy Nuxt + +on: + push: + branches: [master] + +jobs: + build: + runs-on: docker + + steps: + + - name: Checkout + uses: actions/checkout@v4 + + - name: Build frontend + run: | + docker build -t git.aranroig.com/${{ secrets.REGISTRY_USER }}/dragonroll-frontend:latest ./frontend + docker push git.aranroig.com/${{ secrets.REGISTRY_USER }}/dragonroll-frontend:latest + + - name: Build backend + run: | + docker build -t git.aranroig.com/${{ secrets.REGISTRY_USER }}/dragonroll-backend:latest ./backend + docker push git.aranroig.com/${{ secrets.REGISTRY_USER }}/dragonroll-backend:latest + + # - name: Copy files + # run: | + # scp docker-compose.yml deploy@${{ secrets.DEPLOY_HOST}}:/var/www/app/ + # scp nginx.conf deploy@${{ secrets.DEPLOY_HOST }}:/var/www/app/nginx.conf + + #- name: Deploy + # run: | + # ssh deploy@${{ secrets.DEPLOY_HOST }} << 'EOF' + # echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login git.aranroig.com -u "${{ secrets.REGISTRY_USER }}" --password-stdin + # cd /var/www/app/ + # docker-compose pull + # docker-compose up -d + # EOF + diff --git a/frontend/18n.config.ts b/frontend/18n.config.ts new file mode 100644 index 0000000..fd72c91 --- /dev/null +++ b/frontend/18n.config.ts @@ -0,0 +1,6 @@ +// i18n.config.ts +export default defineI18nConfig(() => ({ + fallbackLocale: 'en', + missingWarn: true, + fallbackWarn: true +})) \ No newline at end of file diff --git a/frontend/app/components/managers/WindowManager.vue b/frontend/app/components/managers/WindowManager.vue index 9535d6e..f941a66 100644 --- a/frontend/app/components/managers/WindowManager.vue +++ b/frontend/app/components/managers/WindowManager.vue @@ -1,6 +1,6 @@