Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1bd8aa0fea | |||
| 626f52c616 | |||
| 29914d73a0 | |||
| dd530266f9 | |||
| a37b2048fe | |||
| e3ac3e003c | |||
| 6fa142f133 |
Binary file not shown.
@@ -8,6 +8,7 @@ export const useApp = createGlobalState(() => {
|
|||||||
const mediasoup = useMediasoup()
|
const mediasoup = useMediasoup()
|
||||||
const signaling = useSignaling()
|
const signaling = useSignaling()
|
||||||
const toast = useToast()
|
const toast = useToast()
|
||||||
|
const sfx = useSfx()
|
||||||
|
|
||||||
const ready = ref(false)
|
const ready = ref(false)
|
||||||
const isTauri = computed(() => '__TAURI_INTERNALS__' in window)
|
const isTauri = computed(() => '__TAURI_INTERNALS__' in window)
|
||||||
@@ -52,6 +53,7 @@ export const useApp = createGlobalState(() => {
|
|||||||
|
|
||||||
await mediasoup.pauseProducer(mediasoup.micProducer.value)
|
await mediasoup.pauseProducer(mediasoup.micProducer.value)
|
||||||
|
|
||||||
|
sfx.playEvent('mic-off').then()
|
||||||
toast.add({ severity: 'info', summary: 'Microphone muted', closable: false, life: 1000 })
|
toast.add({ severity: 'info', summary: 'Microphone muted', closable: false, life: 1000 })
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -65,6 +67,7 @@ export const useApp = createGlobalState(() => {
|
|||||||
|
|
||||||
await mediasoup.resumeProducer(mediasoup.micProducer.value)
|
await mediasoup.resumeProducer(mediasoup.micProducer.value)
|
||||||
|
|
||||||
|
sfx.playEvent('mic-on').then()
|
||||||
toast.add({ severity: 'info', summary: 'Microphone activated', closable: false, life: 1000 })
|
toast.add({ severity: 'info', summary: 'Microphone activated', closable: false, life: 1000 })
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,18 +118,22 @@ export const useApp = createGlobalState(() => {
|
|||||||
async function toggleVideo() {
|
async function toggleVideo() {
|
||||||
if (!mediasoup.videoProducer.value) {
|
if (!mediasoup.videoProducer.value) {
|
||||||
await mediasoup.enableVideo()
|
await mediasoup.enableVideo()
|
||||||
|
await sfx.playEvent('stream-on')
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
await mediasoup.disableProducer(mediasoup.videoProducer.value)
|
await mediasoup.disableProducer(mediasoup.videoProducer.value)
|
||||||
|
await sfx.playEvent('stream-off')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function toggleShare() {
|
async function toggleShare() {
|
||||||
if (!mediasoup.shareProducer.value) {
|
if (!mediasoup.shareProducer.value) {
|
||||||
await mediasoup.enableShare()
|
await mediasoup.enableShare()
|
||||||
|
await sfx.playEvent('stream-on')
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
await mediasoup.disableProducer(mediasoup.shareProducer.value)
|
await mediasoup.disableProducer(mediasoup.shareProducer.value)
|
||||||
|
await sfx.playEvent('stream-off')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,9 +29,10 @@ const ICE_SERVERS: RTCIceServer[] = [
|
|||||||
|
|
||||||
export const useMediasoup = createSharedComposable(() => {
|
export const useMediasoup = createSharedComposable(() => {
|
||||||
const toast = useToast()
|
const toast = useToast()
|
||||||
|
const sfx = useSfx()
|
||||||
|
|
||||||
const signaling = useSignaling()
|
const signaling = useSignaling()
|
||||||
const { addClient, removeClient } = useClients()
|
const { addClient, removeClient, me } = useClients()
|
||||||
const preferences = usePreferences()
|
const preferences = usePreferences()
|
||||||
const { getShareStream } = useDevices()
|
const { getShareStream } = useDevices()
|
||||||
|
|
||||||
@@ -169,12 +170,16 @@ export const useMediasoup = createSharedComposable(() => {
|
|||||||
|
|
||||||
addClient(...joinedClients)
|
addClient(...joinedClients)
|
||||||
|
|
||||||
|
if (me.value)
|
||||||
|
sfx.playRandomConnectionSound(me.value.socketId).then()
|
||||||
|
|
||||||
toast.add({ severity: 'success', summary: 'Joined', closable: false, life: 1000 })
|
toast.add({ severity: 'success', summary: 'Joined', closable: false, life: 1000 })
|
||||||
|
|
||||||
await enableMic()
|
await enableMic()
|
||||||
})
|
})
|
||||||
|
|
||||||
socket.on('newPeer', (client) => {
|
socket.on('newPeer', (client) => {
|
||||||
|
sfx.playRandomConnectionSound(client.socketId).then()
|
||||||
addClient(client)
|
addClient(client)
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -200,6 +205,9 @@ export const useMediasoup = createSharedComposable(() => {
|
|||||||
appData: { ...appData, socketId },
|
appData: { ...appData, socketId },
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if (kind === 'video')
|
||||||
|
sfx.playEvent('stream-on').then()
|
||||||
|
|
||||||
if (producerPaused)
|
if (producerPaused)
|
||||||
consumer.pause()
|
consumer.pause()
|
||||||
|
|
||||||
@@ -219,6 +227,9 @@ export const useMediasoup = createSharedComposable(() => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
consumer.observer.on('close', () => {
|
consumer.observer.on('close', () => {
|
||||||
|
if (kind === 'video')
|
||||||
|
sfx.playEvent('stream-off').then()
|
||||||
|
|
||||||
delete consumers.value[consumer.id]
|
delete consumers.value[consumer.id]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
86
client/app/composables/use-sfx.ts
Normal file
86
client/app/composables/use-sfx.ts
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
import { createSharedComposable } from '@vueuse/core'
|
||||||
|
import { Howl } from 'howler'
|
||||||
|
|
||||||
|
const CONNECTION_SOUNDS = Object.keys(import.meta.glob('@/../public/sfx/connection/*.ogg')).map(path => path.replace('../public', ''))
|
||||||
|
|
||||||
|
console.log('CONNECTION_SOUNDS', CONNECTION_SOUNDS)
|
||||||
|
|
||||||
|
function hashStringToNumber(str: string, cap: number): number {
|
||||||
|
let hash = 0
|
||||||
|
for (let i = 0; i < str.length; i++) {
|
||||||
|
hash = (hash * 31 + str.charCodeAt(i)) | 0
|
||||||
|
}
|
||||||
|
return Math.abs(hash) % cap
|
||||||
|
}
|
||||||
|
|
||||||
|
const oneShots: Howl[] = []
|
||||||
|
|
||||||
|
type SfxEvent = 'mic-on' | 'mic-off' | 'stream-on' | 'stream-off' | 'connection'
|
||||||
|
|
||||||
|
const EVENT_VOLUME: Record<SfxEvent, number> = {
|
||||||
|
'mic-on': 0.2,
|
||||||
|
'mic-off': 0.2,
|
||||||
|
'stream-on': 0.03,
|
||||||
|
'stream-off': 0.03,
|
||||||
|
'connection': 0.1,
|
||||||
|
}
|
||||||
|
|
||||||
|
export const useSfx = createSharedComposable(() => {
|
||||||
|
async function play(src: string, volume = 0.2): Promise<void> {
|
||||||
|
return new Promise((resolve) => {
|
||||||
|
const howl = new Howl({
|
||||||
|
src,
|
||||||
|
autoplay: true,
|
||||||
|
loop: false,
|
||||||
|
volume,
|
||||||
|
})
|
||||||
|
|
||||||
|
howl.on('end', () => {
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async function playOneShot(src: string, volume = 0.2): Promise<void> {
|
||||||
|
for (const oneShot of oneShots) {
|
||||||
|
oneShot.stop()
|
||||||
|
}
|
||||||
|
|
||||||
|
oneShots.length = 0
|
||||||
|
|
||||||
|
return new Promise((resolve) => {
|
||||||
|
const howl = new Howl({
|
||||||
|
src,
|
||||||
|
autoplay: true,
|
||||||
|
loop: false,
|
||||||
|
volume,
|
||||||
|
})
|
||||||
|
|
||||||
|
oneShots.push(howl)
|
||||||
|
|
||||||
|
howl.on('end', () => {
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async function playEvent(event: SfxEvent) {
|
||||||
|
switch (event) {
|
||||||
|
default:
|
||||||
|
await playOneShot(`/sfx/${event}.ogg`, EVENT_VOLUME[event])
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function playRandomConnectionSound(seed: string) {
|
||||||
|
await playEvent('stream-on')
|
||||||
|
await play(CONNECTION_SOUNDS[hashStringToNumber(seed, CONNECTION_SOUNDS.length)]!, 0.1)
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
playOneShot,
|
||||||
|
play,
|
||||||
|
playRandomConnectionSound,
|
||||||
|
playEvent,
|
||||||
|
}
|
||||||
|
})
|
||||||
@@ -19,6 +19,7 @@
|
|||||||
"@tauri-apps/plugin-updater": "~2",
|
"@tauri-apps/plugin-updater": "~2",
|
||||||
"@vueuse/core": "^13.9.0",
|
"@vueuse/core": "^13.9.0",
|
||||||
"hotkeys-js": "^4.0.0",
|
"hotkeys-js": "^4.0.0",
|
||||||
|
"howler": "^2.2.4",
|
||||||
"lucide-vue-next": "^0.562.0",
|
"lucide-vue-next": "^0.562.0",
|
||||||
"mediasoup-client": "^3.18.6",
|
"mediasoup-client": "^3.18.6",
|
||||||
"nuxt": "^4.2.2",
|
"nuxt": "^4.2.2",
|
||||||
@@ -37,6 +38,7 @@
|
|||||||
"@antfu/eslint-config": "^5.4.1",
|
"@antfu/eslint-config": "^5.4.1",
|
||||||
"@primevue/nuxt-module": "^4.4.0",
|
"@primevue/nuxt-module": "^4.4.0",
|
||||||
"@tauri-apps/cli": "^2.8.4",
|
"@tauri-apps/cli": "^2.8.4",
|
||||||
|
"@types/howler": "^2",
|
||||||
"eslint": "^9.36.0",
|
"eslint": "^9.36.0",
|
||||||
"eslint-plugin-format": "^1.0.2",
|
"eslint-plugin-format": "^1.0.2",
|
||||||
"sass-embedded": "^1.93.2",
|
"sass-embedded": "^1.93.2",
|
||||||
|
|||||||
BIN
client/public/sfx/connection/0.ogg
Normal file
BIN
client/public/sfx/connection/0.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/1.ogg
Normal file
BIN
client/public/sfx/connection/1.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/10.ogg
Normal file
BIN
client/public/sfx/connection/10.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/100.ogg
Normal file
BIN
client/public/sfx/connection/100.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/101.ogg
Normal file
BIN
client/public/sfx/connection/101.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/102.ogg
Normal file
BIN
client/public/sfx/connection/102.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/103.ogg
Normal file
BIN
client/public/sfx/connection/103.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/104.ogg
Normal file
BIN
client/public/sfx/connection/104.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/105.ogg
Normal file
BIN
client/public/sfx/connection/105.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/106.ogg
Normal file
BIN
client/public/sfx/connection/106.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/107.ogg
Normal file
BIN
client/public/sfx/connection/107.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/108.ogg
Normal file
BIN
client/public/sfx/connection/108.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/109.ogg
Normal file
BIN
client/public/sfx/connection/109.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/11.ogg
Normal file
BIN
client/public/sfx/connection/11.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/110.ogg
Normal file
BIN
client/public/sfx/connection/110.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/111.ogg
Normal file
BIN
client/public/sfx/connection/111.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/112.ogg
Normal file
BIN
client/public/sfx/connection/112.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/113.ogg
Normal file
BIN
client/public/sfx/connection/113.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/114.ogg
Normal file
BIN
client/public/sfx/connection/114.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/115.ogg
Normal file
BIN
client/public/sfx/connection/115.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/116.ogg
Normal file
BIN
client/public/sfx/connection/116.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/117.ogg
Normal file
BIN
client/public/sfx/connection/117.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/118.ogg
Normal file
BIN
client/public/sfx/connection/118.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/119.ogg
Normal file
BIN
client/public/sfx/connection/119.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/12.ogg
Normal file
BIN
client/public/sfx/connection/12.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/120.ogg
Normal file
BIN
client/public/sfx/connection/120.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/121.ogg
Normal file
BIN
client/public/sfx/connection/121.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/122.ogg
Normal file
BIN
client/public/sfx/connection/122.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/123.ogg
Normal file
BIN
client/public/sfx/connection/123.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/124.ogg
Normal file
BIN
client/public/sfx/connection/124.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/125.ogg
Normal file
BIN
client/public/sfx/connection/125.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/126.ogg
Normal file
BIN
client/public/sfx/connection/126.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/127.ogg
Normal file
BIN
client/public/sfx/connection/127.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/128.ogg
Normal file
BIN
client/public/sfx/connection/128.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/129.ogg
Normal file
BIN
client/public/sfx/connection/129.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/13.ogg
Normal file
BIN
client/public/sfx/connection/13.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/130.ogg
Normal file
BIN
client/public/sfx/connection/130.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/131.ogg
Normal file
BIN
client/public/sfx/connection/131.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/132.ogg
Normal file
BIN
client/public/sfx/connection/132.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/133.ogg
Normal file
BIN
client/public/sfx/connection/133.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/134.ogg
Normal file
BIN
client/public/sfx/connection/134.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/135.ogg
Normal file
BIN
client/public/sfx/connection/135.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/136.ogg
Normal file
BIN
client/public/sfx/connection/136.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/137.ogg
Normal file
BIN
client/public/sfx/connection/137.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/138.ogg
Normal file
BIN
client/public/sfx/connection/138.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/139.ogg
Normal file
BIN
client/public/sfx/connection/139.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/14.ogg
Normal file
BIN
client/public/sfx/connection/14.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/140.ogg
Normal file
BIN
client/public/sfx/connection/140.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/141.ogg
Normal file
BIN
client/public/sfx/connection/141.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/142.ogg
Normal file
BIN
client/public/sfx/connection/142.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/143.ogg
Normal file
BIN
client/public/sfx/connection/143.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/144.ogg
Normal file
BIN
client/public/sfx/connection/144.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/145.ogg
Normal file
BIN
client/public/sfx/connection/145.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/146.ogg
Normal file
BIN
client/public/sfx/connection/146.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/147.ogg
Normal file
BIN
client/public/sfx/connection/147.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/148.ogg
Normal file
BIN
client/public/sfx/connection/148.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/149.ogg
Normal file
BIN
client/public/sfx/connection/149.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/15.ogg
Normal file
BIN
client/public/sfx/connection/15.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/16.ogg
Normal file
BIN
client/public/sfx/connection/16.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/17.ogg
Normal file
BIN
client/public/sfx/connection/17.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/18.ogg
Normal file
BIN
client/public/sfx/connection/18.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/19.ogg
Normal file
BIN
client/public/sfx/connection/19.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/2.ogg
Normal file
BIN
client/public/sfx/connection/2.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/20.ogg
Normal file
BIN
client/public/sfx/connection/20.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/21.ogg
Normal file
BIN
client/public/sfx/connection/21.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/22.ogg
Normal file
BIN
client/public/sfx/connection/22.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/23.ogg
Normal file
BIN
client/public/sfx/connection/23.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/24.ogg
Normal file
BIN
client/public/sfx/connection/24.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/25.ogg
Normal file
BIN
client/public/sfx/connection/25.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/26.ogg
Normal file
BIN
client/public/sfx/connection/26.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/27.ogg
Normal file
BIN
client/public/sfx/connection/27.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/28.ogg
Normal file
BIN
client/public/sfx/connection/28.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/29.ogg
Normal file
BIN
client/public/sfx/connection/29.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/3.ogg
Normal file
BIN
client/public/sfx/connection/3.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/30.ogg
Normal file
BIN
client/public/sfx/connection/30.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/31.ogg
Normal file
BIN
client/public/sfx/connection/31.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/32.ogg
Normal file
BIN
client/public/sfx/connection/32.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/33.ogg
Normal file
BIN
client/public/sfx/connection/33.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/34.ogg
Normal file
BIN
client/public/sfx/connection/34.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/35.ogg
Normal file
BIN
client/public/sfx/connection/35.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/36.ogg
Normal file
BIN
client/public/sfx/connection/36.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/37.ogg
Normal file
BIN
client/public/sfx/connection/37.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/38.ogg
Normal file
BIN
client/public/sfx/connection/38.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/39.ogg
Normal file
BIN
client/public/sfx/connection/39.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/4.ogg
Normal file
BIN
client/public/sfx/connection/4.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/40.ogg
Normal file
BIN
client/public/sfx/connection/40.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/41.ogg
Normal file
BIN
client/public/sfx/connection/41.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/42.ogg
Normal file
BIN
client/public/sfx/connection/42.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/43.ogg
Normal file
BIN
client/public/sfx/connection/43.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/44.ogg
Normal file
BIN
client/public/sfx/connection/44.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/45.ogg
Normal file
BIN
client/public/sfx/connection/45.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/46.ogg
Normal file
BIN
client/public/sfx/connection/46.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/47.ogg
Normal file
BIN
client/public/sfx/connection/47.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/48.ogg
Normal file
BIN
client/public/sfx/connection/48.ogg
Normal file
Binary file not shown.
BIN
client/public/sfx/connection/49.ogg
Normal file
BIN
client/public/sfx/connection/49.ogg
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user