33 lines
1.1 KiB
Go
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
|