Add new chat effects and shop items
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* 文件功能:聊天室特效管理器
|
||||
*
|
||||
* 统一管理全屏 Canvas 特效的入口、防重入和资源清理。
|
||||
* 使用方式:EffectManager.play('fireworks' | 'rain' | 'lightning')
|
||||
* 使用方式:EffectManager.play('fireworks' | 'rain' | 'lightning' | 'snow' | 'sakura' | 'meteors' | 'gold-rain' | 'hearts' | 'confetti' | 'fireflies')
|
||||
*/
|
||||
|
||||
const EffectManager = (() => {
|
||||
@@ -64,7 +64,7 @@ const EffectManager = (() => {
|
||||
/**
|
||||
* 播放指定特效
|
||||
*
|
||||
* @param {string} type 特效类型:fireworks / rain / lightning / snow
|
||||
* @param {string} type 特效类型:fireworks / rain / lightning / snow / sakura / meteors / gold-rain / hearts / confetti / fireflies
|
||||
*/
|
||||
function play(type) {
|
||||
// 防重入:同时只允许一个特效
|
||||
@@ -109,6 +109,36 @@ const EffectManager = (() => {
|
||||
SnowEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "sakura":
|
||||
if (typeof SakuraEffect !== "undefined") {
|
||||
SakuraEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "meteors":
|
||||
if (typeof MeteorsEffect !== "undefined") {
|
||||
MeteorsEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "gold-rain":
|
||||
if (typeof GoldRainEffect !== "undefined") {
|
||||
GoldRainEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "hearts":
|
||||
if (typeof HeartsEffect !== "undefined") {
|
||||
HeartsEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "confetti":
|
||||
if (typeof ConfettiEffect !== "undefined") {
|
||||
ConfettiEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
case "fireflies":
|
||||
if (typeof FirefliesEffect !== "undefined") {
|
||||
FirefliesEffect.start(canvas, _cleanup);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
console.warn(`[EffectManager] 未知特效类型:${type}`);
|
||||
_cleanup();
|
||||
|
||||
Reference in New Issue
Block a user