33 lines
1.1 KiB
Go

// Package achievements provides a complete achievement system for EQ2Emulator servers.
//
// The package includes:
// - Achievement definitions with requirements and rewards
// - Master achievement list for server-wide management
// - Player-specific achievement tracking and progress
// - Database operations for persistence
//
// Basic usage:
//
// // Create master list and load from database
// masterList := achievements.NewMasterList()
// db, _ := database.Open("world.db")
// achievements.LoadAllAchievements(db, masterList)
//
// // Create player manager
// playerMgr := achievements.NewPlayerManager()
// achievements.LoadPlayerAchievements(db, playerID, playerMgr.Achievements)
// achievements.LoadPlayerAchievementUpdates(db, playerID, playerMgr.Updates)
//
// // Update player progress
// playerMgr.Updates.UpdateProgress(achievementID, newProgress)
//
// // Check completion
// if playerMgr.Updates.IsCompleted(achievementID) {
// // Handle completed achievement
// }
//
// // Save progress
// update := playerMgr.Updates.GetUpdate(achievementID)
// achievements.SavePlayerAchievementUpdate(db, playerID, update)
package achievements