pet_data/data/achievements.js

434 lines
8.0 KiB
JavaScript
Raw Permalink Normal View History

2025-11-24 10:34:02 +00:00
// 成就系統配置
// 每個成就包含id, name, description, condition, reward
export const ACHIEVEMENTS = [
// ========== 成長類成就 ==========
{
id: 'first_step',
name: '第一步',
description: '寵物年齡達到 1 小時',
category: 'growth',
condition: {
type: 'age',
value: 3600 // 1 小時(秒)
},
reward: {
buffs: {
strGain: 0.05, // 力量成長 +5%
intGain: 0.05 // 智力成長 +5%
}
},
icon: '👶'
},
{
id: 'one_day_old',
name: '一日之計',
description: '寵物年齡達到 1 天',
category: 'growth',
condition: {
type: 'age',
value: 86400 // 1 天(秒)
},
reward: {
buffs: {
strGain: 0.10,
intGain: 0.10,
dexGain: 0.10,
luck: 2 // 運勢 +2
}
},
icon: '📅'
},
{
id: 'evolved_baby',
name: '破殼而出',
description: '從蛋階段進化到幼體',
category: 'growth',
condition: {
type: 'stage',
value: 'baby'
},
reward: {
buffs: {
health: 5, // 最大健康 +5
strGain: 0.05
}
},
icon: '🥚'
},
{
id: 'evolved_child',
name: '茁壯成長',
description: '進化到幼年階段',
category: 'growth',
condition: {
type: 'stage',
value: 'child'
},
reward: {
buffs: {
health: 10,
strGain: 0.10,
intGain: 0.10
}
},
icon: '🌱'
},
{
id: 'evolved_adult',
name: '成年禮',
description: '進化到成年階段',
category: 'growth',
condition: {
type: 'stage',
value: 'adult'
},
reward: {
buffs: {
health: 20,
strGain: 0.15,
intGain: 0.15,
dexGain: 0.15,
luck: 5
}
},
icon: '🎂'
},
{
id: 'perfect_stats',
name: '完美屬性',
description: '力量、智力、敏捷都達到 50',
category: 'growth',
condition: {
type: 'stats',
stats: {
str: 50,
int: 50,
dex: 50
}
},
reward: {
buffs: {
str: 3,
int: 3,
dex: 3,
attack: 0.10, // 攻擊力 +10%
defense: 0.10 // 防禦力 +10%
}
},
icon: '⭐'
},
{
id: 'max_stats',
name: '屬性巔峰',
description: '力量、智力、敏捷都達到 100',
category: 'growth',
condition: {
type: 'stats',
stats: {
str: 100,
int: 100,
dex: 100
}
},
reward: {
buffs: {
str: 10,
int: 10,
dex: 10,
luck: 10,
attack: 0.20,
defense: 0.20,
speed: 0.20
}
},
icon: '💎'
},
// ========== 互動類成就 ==========
{
id: 'first_feed',
name: '初次餵食',
description: '第一次餵食寵物',
category: 'interaction',
condition: {
type: 'action_count',
action: 'feed',
value: 1
},
reward: {
buffs: {
strGain: 0.03
}
},
icon: '🍼'
},
{
id: 'caretaker',
name: '照顧者',
description: '累計餵食 50 次',
category: 'interaction',
condition: {
type: 'action_count',
action: 'feed',
value: 50
},
reward: {
buffs: {
strGain: 0.10,
healthRecovery: 0.05
}
},
icon: '🍽️'
},
{
id: 'playful_master',
name: '玩耍大師',
description: '累計玩耍 100 次',
category: 'interaction',
condition: {
type: 'action_count',
action: 'play',
value: 100
},
reward: {
buffs: {
dexGain: 0.15,
intGain: 0.10,
happinessRecovery: 0.10
}
},
icon: '🎮'
},
{
id: 'clean_freak',
name: '清潔達人',
description: '累計清理便便 30 次',
category: 'interaction',
condition: {
type: 'action_count',
action: 'clean',
value: 30
},
reward: {
buffs: {
health: 5,
sicknessReduction: 0.10 // 生病抗性 +10%
}
},
icon: '🧹'
},
{
id: 'healer',
name: '治療師',
description: '累計治療 20 次',
category: 'interaction',
condition: {
type: 'action_count',
action: 'heal',
value: 20
},
reward: {
buffs: {
healthRecovery: 0.15,
health: 10
}
},
icon: '💊'
},
// ========== 神明類成就 ==========
{
id: 'first_prayer',
name: '初次祈福',
description: '第一次向神明祈福',
category: 'temple',
condition: {
type: 'action_count',
action: 'pray',
value: 1
},
reward: {
buffs: {
luck: 1
}
},
icon: '🙏'
},
{
id: 'devout',
name: '虔誠信徒',
description: '累計祈福 50 次',
category: 'temple',
condition: {
type: 'action_count',
action: 'pray',
value: 50
},
reward: {
buffs: {
luck: 5,
happinessRecovery: 0.05
}
},
icon: '🕯️'
},
{
id: 'deity_friend',
name: '神明之友',
description: '任一神明好感度達到 50',
category: 'temple',
condition: {
type: 'deity_favor',
value: 50
},
reward: {
buffs: {
luck: 3,
healthRecovery: 0.05
}
},
icon: '👼'
},
{
id: 'deity_best_friend',
name: '神明摯友',
description: '任一神明好感度達到 100',
category: 'temple',
condition: {
type: 'deity_favor',
value: 100
},
reward: {
buffs: {
luck: 10,
healthRecovery: 0.10,
happinessRecovery: 0.05
}
},
icon: '🌟'
},
{
id: 'fortune_teller',
name: '求籤達人',
description: '累計抽籤 10 次',
category: 'temple',
condition: {
type: 'action_count',
action: 'drawFortune',
value: 10
},
reward: {
buffs: {
luck: 3,
dropRate: 0.05 // 掉落率 +5%
}
},
icon: '🎴'
},
// ========== 事件類成就 ==========
{
id: 'event_explorer',
name: '事件探索者',
description: '觸發 20 個事件',
category: 'event',
condition: {
type: 'event_count',
value: 20
},
reward: {
buffs: {
luck: 2,
dropRate: 0.03
}
},
icon: '🔍'
},
{
id: 'lucky_one',
name: '幸運兒',
description: '觸發 5 個好事件',
category: 'event',
condition: {
type: 'event_type_count',
eventType: 'good',
value: 5
},
reward: {
buffs: {
luck: 5,
happinessRecovery: 0.05
}
},
icon: '🍀'
},
// ========== 特殊類成就 ==========
{
id: 'survivor',
name: '倖存者',
description: '從瀕死狀態恢復健康',
category: 'special',
condition: {
type: 'recovered_from_dying',
value: true
},
reward: {
buffs: {
health: 15,
healthRecovery: 0.20,
sicknessReduction: 0.15
}
},
icon: '💪'
},
{
id: 'perfect_day',
name: '完美的一天',
description: '飢餓、快樂、健康同時達到 100',
category: 'special',
condition: {
type: 'perfect_state',
value: true
},
reward: {
buffs: {
strGain: 0.05,
intGain: 0.05,
dexGain: 0.05,
happinessRecovery: 0.05
}
},
icon: '✨'
},
{
id: 'night_owl',
name: '夜貓子',
description: '累計睡眠 50 次',
category: 'special',
condition: {
type: 'action_count',
action: 'sleep',
value: 50
},
reward: {
buffs: {
health: 10,
healthRecovery: 0.10
}
},
icon: '🌙'
}
]
// 成就分類
export const ACHIEVEMENT_CATEGORIES = {
growth: { name: '成長', icon: '📈' },
interaction: { name: '互動', icon: '🤝' },
temple: { name: '神明', icon: '🙏' },
event: { name: '事件', icon: '🎲' },
special: { name: '特殊', icon: '⭐' }
}