Update
This commit is contained in:
46
test-achievements.js
Normal file
46
test-achievements.js
Normal file
@@ -0,0 +1,46 @@
|
||||
const AchievementSystem = require('./lib/achievementSystem');
|
||||
|
||||
async function testAchievements() {
|
||||
console.log('=== Testing Achievement System ===');
|
||||
|
||||
const achievementSystem = new AchievementSystem();
|
||||
const playerId = '08476bfc-5f48-486c-9f0b-90b81e5ccd8d';
|
||||
|
||||
try {
|
||||
// Test 1: Load achievements
|
||||
console.log('\n1. Loading achievements...');
|
||||
await achievementSystem.loadAchievements();
|
||||
console.log(`✅ Loaded ${achievementSystem.achievements.size} achievements`);
|
||||
|
||||
// Test 2: Load player achievements
|
||||
console.log('\n2. Loading player achievements...');
|
||||
await achievementSystem.loadPlayerAchievements(playerId);
|
||||
const playerAchievements = achievementSystem.playerAchievements.get(playerId);
|
||||
console.log(`✅ Player has ${playerAchievements ? playerAchievements.size : 0} achievements`);
|
||||
|
||||
// Test 3: Check first time achievement
|
||||
console.log('\n3. Checking first time achievement...');
|
||||
const firstTimeAchievement = Array.from(achievementSystem.achievements.values())
|
||||
.find(a => a.category === 'consistency' && a.condition_type === 'first_time');
|
||||
console.log('First time achievement:', firstTimeAchievement ? firstTimeAchievement.name : 'NOT FOUND');
|
||||
|
||||
// Test 4: Check September achievement
|
||||
console.log('\n4. Checking September achievement...');
|
||||
const septemberAchievement = Array.from(achievementSystem.achievements.values())
|
||||
.find(a => a.category === 'monthly' && a.condition_type === 'september');
|
||||
console.log('September achievement:', septemberAchievement ? septemberAchievement.name : 'NOT FOUND');
|
||||
|
||||
// Test 5: Check immediate achievements
|
||||
console.log('\n5. Running immediate achievement check...');
|
||||
const newAchievements = await achievementSystem.checkImmediateAchievements(playerId);
|
||||
console.log(`✅ Found ${newAchievements.length} new achievements`);
|
||||
newAchievements.forEach(achievement => {
|
||||
console.log(` 🏆 ${achievement.name} (+${achievement.points} points)`);
|
||||
});
|
||||
|
||||
} catch (error) {
|
||||
console.error('❌ Error:', error);
|
||||
}
|
||||
}
|
||||
|
||||
testAchievements();
|
||||
Reference in New Issue
Block a user