diff --git a/vite/public/assets/0721/onyx/q4-1.mp3 b/vite/public/assets/0721/onyx/q4-1.mp3 deleted file mode 100644 index abeb8e6..0000000 Binary files a/vite/public/assets/0721/onyx/q4-1.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/onyx/q4.mp3 b/vite/public/assets/0721/onyx/q4.mp3 deleted file mode 100644 index 9ee272f..0000000 Binary files a/vite/public/assets/0721/onyx/q4.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/onyx/q5.mp3 b/vite/public/assets/0721/onyx/q5.mp3 deleted file mode 100644 index 0935b57..0000000 Binary files a/vite/public/assets/0721/onyx/q5.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/shimmer/q4-1.mp3 b/vite/public/assets/0721/shimmer/q4-1.mp3 deleted file mode 100644 index 22a8f3b..0000000 Binary files a/vite/public/assets/0721/shimmer/q4-1.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/shimmer/q4-2.mp3 b/vite/public/assets/0721/shimmer/q4-2.mp3 deleted file mode 100644 index 6d4cfae..0000000 Binary files a/vite/public/assets/0721/shimmer/q4-2.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/shimmer/q4.mp3 b/vite/public/assets/0721/shimmer/q4.mp3 deleted file mode 100644 index 91e321a..0000000 Binary files a/vite/public/assets/0721/shimmer/q4.mp3 and /dev/null differ diff --git a/vite/public/assets/0721/shimmer/q5.mp3 b/vite/public/assets/0721/shimmer/q5.mp3 deleted file mode 100644 index 5d3a36f..0000000 Binary files a/vite/public/assets/0721/shimmer/q5.mp3 and /dev/null differ diff --git a/vite/public/assets/number/0.mp3 b/vite/public/assets/number/0.mp3 index 92d9567..cb455de 100644 Binary files a/vite/public/assets/number/0.mp3 and b/vite/public/assets/number/0.mp3 differ diff --git a/vite/public/assets/number/1.mp3 b/vite/public/assets/number/1.mp3 index b7541f1..bcd96c3 100644 Binary files a/vite/public/assets/number/1.mp3 and b/vite/public/assets/number/1.mp3 differ diff --git a/vite/public/assets/number/2.mp3 b/vite/public/assets/number/2.mp3 index 9b1e126..6806ec9 100644 Binary files a/vite/public/assets/number/2.mp3 and b/vite/public/assets/number/2.mp3 differ diff --git a/vite/public/assets/number/3.mp3 b/vite/public/assets/number/3.mp3 index c236a52..9e3589e 100644 Binary files a/vite/public/assets/number/3.mp3 and b/vite/public/assets/number/3.mp3 differ diff --git a/vite/public/assets/number/4.mp3 b/vite/public/assets/number/4.mp3 index b2b485d..4f9af30 100644 Binary files a/vite/public/assets/number/4.mp3 and b/vite/public/assets/number/4.mp3 differ diff --git a/vite/public/assets/number/5.mp3 b/vite/public/assets/number/5.mp3 index 68c846a..8fc704b 100644 Binary files a/vite/public/assets/number/5.mp3 and b/vite/public/assets/number/5.mp3 differ diff --git a/vite/public/assets/number/6.mp3 b/vite/public/assets/number/6.mp3 index 8cef879..5f1a287 100644 Binary files a/vite/public/assets/number/6.mp3 and b/vite/public/assets/number/6.mp3 differ diff --git a/vite/public/assets/number/7.mp3 b/vite/public/assets/number/7.mp3 index 0c92a44..01baf66 100644 Binary files a/vite/public/assets/number/7.mp3 and b/vite/public/assets/number/7.mp3 differ diff --git a/vite/public/assets/number/8.mp3 b/vite/public/assets/number/8.mp3 index 549dbc9..d31c82d 100644 Binary files a/vite/public/assets/number/8.mp3 and b/vite/public/assets/number/8.mp3 differ diff --git a/vite/public/assets/number/9.mp3 b/vite/public/assets/number/9.mp3 index b4ce93f..ddb8171 100644 Binary files a/vite/public/assets/number/9.mp3 and b/vite/public/assets/number/9.mp3 differ diff --git a/vite/public/assets/number/a.mp3 b/vite/public/assets/number/a.mp3 new file mode 100644 index 0000000..ce56010 Binary files /dev/null and b/vite/public/assets/number/a.mp3 differ diff --git a/vite/public/assets/number/error.mp3 b/vite/public/assets/number/error.mp3 new file mode 100644 index 0000000..d94b9ac Binary files /dev/null and b/vite/public/assets/number/error.mp3 differ diff --git a/vite/public/assets/number/q.mp3 b/vite/public/assets/number/q.mp3 new file mode 100644 index 0000000..b6d1bd5 Binary files /dev/null and b/vite/public/assets/number/q.mp3 differ diff --git a/vite/public/assets/q4-1.mp3 b/vite/public/assets/q4-1.mp3 index 990aece..abeb8e6 100644 Binary files a/vite/public/assets/q4-1.mp3 and b/vite/public/assets/q4-1.mp3 differ diff --git a/vite/public/assets/0721/onyx/q4-2.mp3 b/vite/public/assets/q4-2.mp3 similarity index 100% rename from vite/public/assets/0721/onyx/q4-2.mp3 rename to vite/public/assets/q4-2.mp3 diff --git a/vite/public/assets/q4.mp3 b/vite/public/assets/q4.mp3 index 0e4a8f0..9ee272f 100644 Binary files a/vite/public/assets/q4.mp3 and b/vite/public/assets/q4.mp3 differ diff --git a/vite/public/assets/0721/onyx/q5-2.mp3 b/vite/public/assets/q5-2.mp3 similarity index 100% rename from vite/public/assets/0721/onyx/q5-2.mp3 rename to vite/public/assets/q5-2.mp3 diff --git a/vite/public/assets/q5.mp3 b/vite/public/assets/q5.mp3 index 21c887e..0935b57 100644 Binary files a/vite/public/assets/q5.mp3 and b/vite/public/assets/q5.mp3 differ diff --git a/vite/public/cuelist_free.json b/vite/public/cuelist_free.json index 8361532..e2dc6d1 100644 --- a/vite/public/cuelist_free.json +++ b/vite/public/cuelist_free.json @@ -31,7 +31,7 @@ { "id": 4, "name": "Q4", - "type": "headphone", + "type": "phone", "description": "引導撥號", "auto": false, "audioFile": "assets/0721/onyx/q4.mp3", diff --git a/vite/src/comps/numpad.jsx b/vite/src/comps/numpad.jsx index d82aad7..ab10895 100644 --- a/vite/src/comps/numpad.jsx +++ b/vite/src/comps/numpad.jsx @@ -36,19 +36,32 @@ export default function NumPad({onSend}){ if(refInput.current && refInput.current.length>0){ const num=parseInt(refInput.current); - if(num>=1 && num<=24) onSend(num); - setInput(()=>''); - } + if(num>=1 && num<=24){ + onSend(num); + refAudio.current[KEY_ENTER]?.play(); + }else{ + refAudio.current['error']?.play(); + } + + + }else{ + refAudio.current['error']?.play(); + + } + setInput(()=>''); 1 + return; }else if(e.key===KEY_BACKSPACE || e.key==='Backspace' || e.key==='Delete'){ setInput((prev)=>''); + + refAudio.current[KEY_BACKSPACE]?.play(); return; } const numKey = TMP_MAP_KEY[parseInt(e.key)] || parseInt(e.key); if(isNaN(numKey) || numKey < 0 || numKey > 9) return; // Ignore non-numeric keys - refAudio.current[numKey]?.play(); + refAudio.current[numKey.toString()]?.play(); setInput((prev)=>`${prev||''}${numKey}`); @@ -56,12 +69,20 @@ export default function NumPad({onSend}){ useEffect(() => { - - refAudio.current = [...Array(10).keys()].map(index =>{ - const file=`assets/number/${index}.mp3`; + + const keys=[ + '1','2','3', + '4','5','6', + '7','8','9', + '0',KEY_ENTER,KEY_BACKSPACE,'error' + ]; + + refAudio.current = {}; + for(var k in keys){ + const file=`assets/number/${keys[k]}.mp3`; // console.log(`Loading audio file: ${file}`); - return new Audio(file); - }); + refAudio.current[keys[k]]=new Audio(file); + } },[]);