51 lines
1.8 KiB
JavaScript
51 lines
1.8 KiB
JavaScript
/**
|
||
* Test Script für das JavaScript Achievement System
|
||
*
|
||
* Testet die Achievement-Logik ohne auf 19:00 Uhr zu warten
|
||
*/
|
||
|
||
const AchievementSystem = require('../lib/achievementSystem');
|
||
require('dotenv').config();
|
||
|
||
async function testAchievementSystem() {
|
||
console.log('🧪 Starte Achievement-System Test...\n');
|
||
|
||
try {
|
||
const achievementSystem = new AchievementSystem();
|
||
|
||
// Lade Achievements
|
||
console.log('📋 Lade Achievements...');
|
||
await achievementSystem.loadAchievements();
|
||
|
||
// Führe tägliche Achievement-Prüfung durch
|
||
console.log('\n🎯 Führe tägliche Achievement-Prüfung durch...');
|
||
const result = await achievementSystem.runDailyAchievementCheck();
|
||
|
||
// Zeige Ergebnisse
|
||
console.log('\n📊 Test-Ergebnisse:');
|
||
console.log(` 🏆 ${result.totalNewAchievements} neue Achievements vergeben`);
|
||
console.log(` 👥 ${result.playerAchievements.length} Spieler haben neue Achievements erhalten`);
|
||
|
||
if (result.playerAchievements.length > 0) {
|
||
console.log('\n📋 Neue Achievements im Detail:');
|
||
result.playerAchievements.forEach(player => {
|
||
console.log(` 👤 ${player.player}:`);
|
||
player.achievements.forEach(achievement => {
|
||
console.log(` ${achievement.icon} ${achievement.name} (+${achievement.points} Punkte)`);
|
||
});
|
||
});
|
||
} else {
|
||
console.log('\nℹ️ Keine neuen Achievements vergeben');
|
||
}
|
||
|
||
console.log('\n✅ Test erfolgreich abgeschlossen!');
|
||
|
||
} catch (error) {
|
||
console.error('❌ Test fehlgeschlagen:', error);
|
||
process.exit(1);
|
||
}
|
||
}
|
||
|
||
// Führe Test aus
|
||
testAchievementSystem();
|