diff --git a/d2app/app.go b/d2app/app.go index e20c3c36..8b13c0d1 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -78,8 +78,8 @@ type App struct { tAllocSamples *ring.Ring guiManager *d2gui.GuiManager config *d2config.Configuration - logger *d2util.Logger - errorMessage error + *d2util.Logger + errorMessage error *Options } @@ -111,20 +111,22 @@ const ( // Create creates a new instance of the application func Create(gitBranch, gitCommit string) *App { assetManager, assetError := d2asset.NewAssetManager() - logger := d2util.NewLogger() - logger.SetPrefix(appLoggerPrefix) - logger.SetLevel(d2util.LogLevelNone) - return &App{ + app := &App{ gitBranch: gitBranch, gitCommit: gitCommit, asset: assetManager, Options: &Options{ Server: &d2networking.ServerOptions{}, }, - logger: logger, errorMessage: assetError, } + + app.Logger = d2util.NewLogger() + app.Logger.SetPrefix(appLoggerPrefix) + app.Logger.SetLevel(d2util.LogLevelNone) + + return app } func updateNOOP() error { @@ -153,7 +155,7 @@ func (a *App) startDedicatedServer() error { for { for data := range srvChanLog { - a.logger.Info(data) + a.Info(data) } } } @@ -266,7 +268,7 @@ func (a *App) LoadConfig() (*d2config.Configuration, error) { fullPath := filepath.Join(config.Dir(), config.Base()) config.SetPath(fullPath) - a.logger.Infof("creating default configuration file at %s...", fullPath) + a.Infof("creating default configuration file at %s...", fullPath) saveErr := config.Save() @@ -279,7 +281,7 @@ func (a *App) LoadConfig() (*d2config.Configuration, error) { config.SetPath(filepath.Join(configAsset.Source().Path(), configAsset.Path())) - a.logger.Infof("loaded configuration file from %s", config.Path()) + a.Infof("loaded configuration file from %s", config.Path()) return config, nil } @@ -405,7 +407,7 @@ func (a *App) initialize() error { action := &terminalActions[idx] if err := a.terminal.BindAction(action.name, action.description, action.action); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } } @@ -497,7 +499,7 @@ func (a *App) initDataDictionaries() error { d2resource.LowQualityItems, } - a.logger.Info("Initializing asset manager") + a.Info("Initializing asset manager") for _, path := range dictPaths { err := a.asset.LoadRecords(path) @@ -524,11 +526,11 @@ func (a *App) initAnimationData(path string) error { return err } - a.logger.Debug(fmt.Sprintf(fmtLoadAnimData, path)) + a.Debugf(fmtLoadAnimData, path) animData := d2data.LoadAnimationData(animDataBytes) - a.logger.Infof("Loaded %d animation data records", len(animData)) + a.Infof("Loaded %d animation data records", len(animData)) a.asset.Records.Animation.Data = animData @@ -683,21 +685,21 @@ func (a *App) allocRate(totalAlloc uint64, fps float64) float64 { func (a *App) dumpHeap() { if _, err := os.Stat("./pprof/"); os.IsNotExist(err) { if err := os.Mkdir("./pprof/", 0750); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } } fileOut, err := os.Create("./pprof/heap.pprof") if err != nil { - a.logger.Error(err.Error()) + a.Error(err.Error()) } if err := pprof.WriteHeapProfile(fileOut); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } if err := fileOut.Close(); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } } @@ -708,7 +710,7 @@ func (a *App) evalJS(code string) { return } - a.logger.Info("%s" + val) + a.Info("%s" + val) } func (a *App) toggleFullScreen() { @@ -731,7 +733,7 @@ func (a *App) doCaptureFrame(target d2interface.Surface) error { defer func() { if err := fp.Close(); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } }() @@ -740,7 +742,7 @@ func (a *App) doCaptureFrame(target d2interface.Surface) error { return err } - a.logger.Info(fmt.Sprintf("saved frame to %s", a.capturePath)) + a.Info(fmt.Sprintf("saved frame to %s", a.capturePath)) return nil } @@ -758,7 +760,7 @@ func (a *App) convertFramesToGif() error { defer func() { if err := fp.Close(); err != nil { - a.logger.Fatal(err.Error()) + a.Fatal(err.Error()) } }() @@ -800,7 +802,7 @@ func (a *App) convertFramesToGif() error { return err } - a.logger.Info(fmt.Sprintf("saved animation to %s", a.capturePath)) + a.Info(fmt.Sprintf("saved animation to %s", a.capturePath)) return nil } @@ -858,31 +860,31 @@ func enableProfiler(profileOption string, a *App) interface{ Stop() } { switch strings.ToLower(strings.Trim(profileOption, " ")) { case "cpu": - a.logger.Debug("CPU profiling is enabled.") + a.Logger.Debug("CPU profiling is enabled.") options = append(options, profile.CPUProfile) case "mem": - a.logger.Debug("Memory profiling is enabled.") + a.Logger.Debug("Memory profiling is enabled.") options = append(options, profile.MemProfile) case "block": - a.logger.Debug("Block profiling is enabled.") + a.Logger.Debug("Block profiling is enabled.") options = append(options, profile.BlockProfile) case "goroutine": - a.logger.Debug("Goroutine profiling is enabled.") + a.Logger.Debug("Goroutine profiling is enabled.") options = append(options, profile.GoroutineProfile) case "trace": - a.logger.Debug("Trace profiling is enabled.") + a.Logger.Debug("Trace profiling is enabled.") options = append(options, profile.TraceProfile) case "thread": - a.logger.Debug("Thread creation profiling is enabled.") + a.Logger.Debug("Thread creation profiling is enabled.") options = append(options, profile.ThreadcreationProfile) case "mutex": - a.logger.Debug("Mutex profiling is enabled.") + a.Logger.Debug("Mutex profiling is enabled.") options = append(options, profile.MutexProfile) } @@ -911,7 +913,7 @@ func (a *App) ToMainMenu(errorMessageOptional ...string) { mainMenu, err := d2gamescreen.CreateMainMenu(a, a.asset, a.renderer, a.inputManager, a.audio, a.ui, buildInfo, a.config.LogLevel, errorMessageOptional...) if err != nil { - a.logger.Error(err.Error()) + a.Error(err.Error()) return } @@ -922,7 +924,7 @@ func (a *App) ToMainMenu(errorMessageOptional ...string) { func (a *App) ToSelectHero(connType d2clientconnectiontype.ClientConnectionType, host string) { selectHero, err := d2gamescreen.CreateSelectHeroClass(a, a.asset, a.renderer, a.audio, a.ui, connType, a.config.LogLevel, host) if err != nil { - a.logger.Error(err.Error()) + a.Error(err.Error()) return } @@ -933,7 +935,7 @@ func (a *App) ToSelectHero(connType d2clientconnectiontype.ClientConnectionType, func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.ClientConnectionType, host string) { gameClient, err := d2client.Create(connType, a.asset, a.config.LogLevel, a.scriptEngine) if err != nil { - a.logger.Error(err.Error()) + a.Error(err.Error()) } if err = gameClient.Open(host, filePath); err != nil { @@ -963,7 +965,7 @@ func (a *App) ToMapEngineTest(region, level int) { met, err := d2gamescreen.CreateMapEngineTest(region, level, a.asset, a.terminal, a.renderer, a.inputManager, a.audio, a.config.LogLevel, a.screen) if err != nil { - a.logger.Error(err.Error()) + a.Error(err.Error()) return } diff --git a/d2game/d2gamescreen/character_select.go b/d2game/d2gamescreen/character_select.go index cc067b0c..b731cc51 100644 --- a/d2game/d2gamescreen/character_select.go +++ b/d2game/d2gamescreen/character_select.go @@ -55,9 +55,9 @@ func CreateCharacterSelect( HeroStateFactory: playerStateFactory, } - characterSelect.logger = d2util.NewLogger() - characterSelect.logger.SetLevel(l) - characterSelect.logger.SetPrefix(logPrefix) + characterSelect.Logger = d2util.NewLogger() + characterSelect.Logger.SetLevel(l) + characterSelect.Logger.SetPrefix(logPrefix) return characterSelect, nil } @@ -98,7 +98,8 @@ type CharacterSelect struct { audioProvider d2interface.AudioProvider renderer d2interface.Renderer navigator d2interface.Navigator - logger *d2util.Logger + + *d2util.Logger } const ( @@ -161,7 +162,7 @@ func (v *CharacterSelect) OnLoad(loading d2screen.LoadingState) { err := v.inputManager.BindHandler(v) if err != nil { - v.logger.Error("failed to add Character Select screen as event handler") + v.Error("failed to add Character Select screen as event handler") } loading.Progress(tenPercent) @@ -213,7 +214,7 @@ func (v *CharacterSelect) loadBackground() { v.background, err = v.uiManager.NewSprite(d2resource.CharacterSelectionBackground, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.background.SetPosition(bgX, bgY) @@ -240,7 +241,7 @@ func (v *CharacterSelect) loadSelectionBox() { v.selectionBox, err = v.uiManager.NewSprite(d2resource.CharacterSelectionSelectBox, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } selBoxX, selBoxY := 37, 86 @@ -252,7 +253,7 @@ func (v *CharacterSelect) loadOkCancelBox() { v.okCancelBox, err = v.uiManager.NewSprite(d2resource.PopUpOkCancel, d2resource.PaletteFechar) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } okCancelX, okCancelY := 270, 175 @@ -502,7 +503,7 @@ func (v *CharacterSelect) onDeleteCharButtonClicked() { func (v *CharacterSelect) onDeleteCharacterConfirmClicked() { err := os.Remove(v.gameStates[v.selectedCharacter].FilePath) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.charScrollbar.SetCurrentOffset(0) diff --git a/d2game/d2gamescreen/cinematics.go b/d2game/d2gamescreen/cinematics.go index f4c9717f..2a7a07b7 100644 --- a/d2game/d2gamescreen/cinematics.go +++ b/d2game/d2gamescreen/cinematics.go @@ -39,9 +39,9 @@ func CreateCinematics( audioProvider: aup, } - cinematics.logger = d2util.NewLogger() - cinematics.logger.SetPrefix(logPrefix) - cinematics.logger.SetLevel(l) + cinematics.Logger = d2util.NewLogger() + cinematics.Logger.SetPrefix(logPrefix) + cinematics.Logger.SetLevel(l) return cinematics } @@ -66,7 +66,8 @@ type Cinematics struct { uiManager *d2ui.UIManager videoDecoder *d2video.BinkDecoder audioProvider d2interface.AudioProvider - logger *d2util.Logger + + *d2util.Logger } // OnLoad is called to load the resources for the credits screen @@ -78,7 +79,7 @@ func (v *Cinematics) OnLoad(_ d2screen.LoadingState) { v.background, err = v.uiManager.NewSprite(d2resource.GameSelectScreen, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.background.SetPosition(backgroundX, backgroundY) @@ -86,7 +87,7 @@ func (v *Cinematics) OnLoad(_ d2screen.LoadingState) { v.cinematicsBackground, err = v.uiManager.NewSprite(d2resource.CinematicsBackground, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.cinematicsBackground.SetPosition(cinematicsX, cinematicsY) @@ -178,7 +179,7 @@ func (v *Cinematics) onEndCreditExpBtnClicked() { func (v *Cinematics) playVideo(path string) { videoBytes, err := v.asset.LoadFile(path) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) return } diff --git a/d2game/d2gamescreen/credits.go b/d2game/d2gamescreen/credits.go index 9da44376..d144e728 100644 --- a/d2game/d2gamescreen/credits.go +++ b/d2game/d2gamescreen/credits.go @@ -44,9 +44,9 @@ func CreateCredits(navigator d2interface.Navigator, uiManager: ui, } - credits.logger = d2util.NewLogger() - credits.logger.SetLevel(l) - credits.logger.SetPrefix(logPrefix) + credits.Logger = d2util.NewLogger() + credits.Logger.SetLevel(l) + credits.Logger.SetPrefix(logPrefix) return credits } @@ -65,20 +65,21 @@ type Credits struct { renderer d2interface.Renderer navigator d2interface.Navigator uiManager *d2ui.UIManager - logger *d2util.Logger + + *d2util.Logger } // LoadContributors loads the contributors data from file func (v *Credits) LoadContributors() []string { file, err := os.Open(path.Join("./", "CONTRIBUTORS")) if err != nil || file == nil { - v.logger.Warning("CONTRIBUTORS file is missing") + v.Warning("CONTRIBUTORS file is missing") return []string{"MISSING CONTRIBUTOR FILES!"} } defer func() { if err = file.Close(); err != nil { - v.logger.Error("an error occurred while closing file: %s, err: %q\n" + file.Name() + err.Error()) + v.Errorf("an error occurred while closing file: %s, err: %e", file.Name(), err) } }() @@ -98,7 +99,7 @@ func (v *Credits) OnLoad(loading d2screen.LoadingState) { v.creditsBackground, err = v.uiManager.NewSprite(d2resource.CreditsBackground, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.creditsBackground.SetPosition(creditsX, creditsY) @@ -119,7 +120,7 @@ func (v *Credits) OnLoad(loading d2screen.LoadingState) { creditData, err := d2util.Utf16BytesToString(fileData[2:]) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.creditsText = strings.Split(creditData, "\r\n") diff --git a/d2game/d2gamescreen/game.go b/d2game/d2gamescreen/game.go index 41abe231..77e084c3 100644 --- a/d2game/d2gamescreen/game.go +++ b/d2game/d2gamescreen/game.go @@ -84,16 +84,16 @@ func CreateGame( keyMap: keyMap, logLevel: l, } - game.logger = d2util.NewLogger() - game.logger.SetLevel(l) - game.logger.SetPrefix(logPrefix) + game.Logger = d2util.NewLogger() + game.Logger.SetLevel(l) + game.Logger.SetPrefix(logPrefix) game.soundEnv = d2audio.NewSoundEnvironment(game.soundEngine) game.escapeMenu.OnLoad() if err := inputManager.BindHandler(game.escapeMenu); err != nil { - game.logger.Error("failed to add gameplay screen as event handler") + game.Error("failed to add gameplay screen as event handler") } return game @@ -120,8 +120,9 @@ type Game struct { inputManager d2interface.InputManager audioProvider d2interface.AudioProvider terminal d2interface.Terminal - logger *d2util.Logger - logLevel d2util.LogLevel + + *d2util.Logger + logLevel d2util.LogLevel } // OnLoad loads the resources for the Gameplay screen @@ -137,7 +138,7 @@ func (v *Game) OnLoad(_ d2screen.LoadingState) { }, ) if err != nil { - v.logger.Error("failed to bind the '%s' action, err: %v\nspawnitem" + err.Error()) + v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnitem", err) } err = v.terminal.BindAction( @@ -149,7 +150,7 @@ func (v *Game) OnLoad(_ d2screen.LoadingState) { }, ) if err != nil { - v.logger.Error("failed to bind the '%s' action, err: %v\nspawnitemat" + err.Error()) + v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnitemat", err) } err = v.terminal.BindAction( @@ -174,7 +175,7 @@ func (v *Game) OnLoad(_ d2screen.LoadingState) { }, ) if err != nil { - v.logger.Error("failed to bind the '%s' action, err: %v\nspawnmon" + err.Error()) + v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnmon", err) } } @@ -311,7 +312,7 @@ func (v *Game) bindGameControls() error { v.gameControls.Load() if err := v.inputManager.BindHandler(v.gameControls); err != nil { - v.logger.Error(bindControlsErrStr + player.ID()) + v.Error(bindControlsErrStr + player.ID()) } break @@ -329,7 +330,7 @@ func (v *Game) OnPlayerMove(targetX, targetY float64) { err := v.gameClient.SendPacketToServer(createMovePlayerPacket) if err != nil { - v.logger.Error(fmt.Sprintf(moveErrStr, v.gameClient.PlayerID, targetX, targetY)) + v.Errorf(moveErrStr, v.gameClient.PlayerID, targetX, targetY) } } @@ -349,7 +350,7 @@ func (v *Game) OnPlayerSave() error { func (v *Game) OnPlayerCast(skillID int, targetX, targetY float64) { err := v.gameClient.SendPacketToServer(d2netpacket.CreateCastPacket(v.gameClient.PlayerID, skillID, targetX, targetY)) if err != nil { - v.logger.Error(fmt.Sprintf(castErrStr, v.gameClient.PlayerID, skillID, targetX, targetY)) + v.Errorf(castErrStr, v.gameClient.PlayerID, skillID, targetX, targetY) } } @@ -370,6 +371,6 @@ func (v *Game) debugSpawnItemAtLocation(x, y int, codes ...string) { err := v.gameClient.SendPacketToServer(packet) if err != nil { - v.logger.Error(fmt.Sprintf(spawnItemErrStr, x, y, codes)) + v.Errorf(spawnItemErrStr, x, y, codes) } } diff --git a/d2game/d2gamescreen/gui_testing.go b/d2game/d2gamescreen/gui_testing.go index 3375993f..3a90f898 100644 --- a/d2game/d2gamescreen/gui_testing.go +++ b/d2game/d2gamescreen/gui_testing.go @@ -1,8 +1,6 @@ package d2gamescreen import ( - "fmt" - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" @@ -21,9 +19,9 @@ func CreateGuiTestMain(renderer d2interface.Renderer, assetManager: assetManager, } - guiTestMain.logger = d2util.NewLogger() - guiTestMain.logger.SetLevel(l) - guiTestMain.logger.SetPrefix(logPrefix) + guiTestMain.Logger = d2util.NewLogger() + guiTestMain.Logger.SetLevel(l) + guiTestMain.Logger.SetPrefix(logPrefix) return guiTestMain } @@ -33,7 +31,8 @@ type GuiTestMain struct { renderer d2interface.Renderer guiManager *d2gui.GuiManager assetManager *d2asset.AssetManager - logger *d2util.Logger + + *d2util.Logger } // OnLoad loads the resources and creates the gui components @@ -46,29 +45,29 @@ func (g *GuiTestMain) OnLoad(loading d2screen.LoadingState) { layoutLeft.SetHorizontalAlign(d2gui.HorizontalAlignCenter) if _, err := layoutLeft.AddLabel("FontStyle16Units", d2gui.FontStyle16Units); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyle16Units") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyle16Units") } layoutLeft.AddSpacerStatic(0, 100) if _, err := layoutLeft.AddLabel("FontStyle30Units", d2gui.FontStyle30Units); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyle30Units") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyle30Units") } if _, err := layoutLeft.AddLabel("FontStyle42Units", d2gui.FontStyle42Units); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyle42Units") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyle42Units") } if _, err := layoutLeft.AddLabel("FontStyleFormal10Static", d2gui.FontStyleFormal10Static); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal10Static") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal10Static") } if _, err := layoutLeft.AddLabel("FontStyleFormal11Units", d2gui.FontStyleFormal11Units); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal11Units") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal11Units") } if _, err := layoutLeft.AddLabel("FontStyleFormal12Static", d2gui.FontStyleFormal12Static); err != nil { - fmt.Printf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal12Static") + g.Errorf("could not add label: %s to the GuiTestMain screen\n", "FontStyleFormal12Static") } loading.Progress(sixtyPercent) @@ -79,23 +78,23 @@ func (g *GuiTestMain) OnLoad(loading d2screen.LoadingState) { layoutRight.SetHorizontalAlign(d2gui.HorizontalAlignRight) if _, err := layoutRight.AddButton("Medium", d2gui.ButtonStyleMedium); err != nil { - fmt.Printf("could not add button: %s to the GuiTestMain screen\n", "Medium") + g.Errorf("could not add button: %s to the GuiTestMain screen\n", "Medium") } if _, err := layoutRight.AddButton("Narrow", d2gui.ButtonStyleNarrow); err != nil { - fmt.Printf("could not add button: %s to the GuiTestMain screen\n", "Narrow") + g.Errorf("could not add button: %s to the GuiTestMain screen\n", "Narrow") } if _, err := layoutRight.AddButton("OkCancel", d2gui.ButtonStyleOkCancel); err != nil { - fmt.Printf("could not add button: %s to the GuiTestMain screen\n", "OkCancel") + g.Errorf("could not add button: %s to the GuiTestMain screen\n", "OkCancel") } if _, err := layoutRight.AddButton("Short", d2gui.ButtonStyleShort); err != nil { - fmt.Printf("could not add button: %s to the GuiTestMain screen\n", "Short") + g.Errorf("could not add button: %s to the GuiTestMain screen\n", "Short") } if _, err := layoutRight.AddButton("Wide", d2gui.ButtonStyleWide); err != nil { - fmt.Printf("could not add button: %s to the GuiTestMain screen\n", "Wide") + g.Errorf("could not add button: %s to the GuiTestMain screen\n", "Wide") } loading.Progress(ninetyPercent) diff --git a/d2game/d2gamescreen/main_menu.go b/d2game/d2gamescreen/main_menu.go index 7ef96fe5..f17377e8 100644 --- a/d2game/d2gamescreen/main_menu.go +++ b/d2game/d2gamescreen/main_menu.go @@ -113,9 +113,9 @@ func CreateMainMenu( heroState: heroStateFactory, } - mainMenu.logger = d2util.NewLogger() - mainMenu.logger.SetPrefix(logPrefix) - mainMenu.logger.SetLevel(l) + mainMenu.Logger = d2util.NewLogger() + mainMenu.Logger.SetPrefix(logPrefix) + mainMenu.Logger.SetLevel(l) if len(errorMessageOptional) != 0 { mainMenu.errorLabel = ui.NewLabel(d2resource.FontFormal12, d2resource.PaletteUnits) @@ -173,7 +173,7 @@ type MainMenu struct { buildInfo BuildInfo - logger *d2util.Logger + *d2util.Logger } // OnLoad is called to load the resources for the main menu @@ -198,7 +198,7 @@ func (v *MainMenu) OnLoad(loading d2screen.LoadingState) { } if err := v.inputManager.BindHandler(v); err != nil { - v.logger.Error("failed to add main menu as event handler") + v.Error("failed to add main menu as event handler") } } @@ -207,28 +207,28 @@ func (v *MainMenu) loadBackgroundSprites() { v.background, err = v.uiManager.NewSprite(d2resource.GameSelectScreen, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.background.SetPosition(backgroundX, backgroundY) v.trademarkBackground, err = v.uiManager.NewSprite(d2resource.TrademarkScreen, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.trademarkBackground.SetPosition(backgroundX, backgroundY) v.tcpIPBackground, err = v.uiManager.NewSprite(d2resource.TCPIPBackground, d2resource.PaletteSky) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.tcpIPBackground.SetPosition(backgroundX, backgroundY) v.serverIPBackground, err = v.uiManager.NewSprite(d2resource.PopUpOkCancel, d2resource.PaletteFechar) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.serverIPBackground.SetPosition(serverIPbackgroundX, serverIPbackgroundY) @@ -296,7 +296,7 @@ func (v *MainMenu) createLogos(loading d2screen.LoadingState) { v.diabloLogoLeft, err = v.uiManager.NewSprite(d2resource.Diablo2LogoFireLeft, d2resource.PaletteUnits) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.diabloLogoLeft.SetEffect(d2enum.DrawEffectModulate) @@ -306,7 +306,7 @@ func (v *MainMenu) createLogos(loading d2screen.LoadingState) { v.diabloLogoRight, err = v.uiManager.NewSprite(d2resource.Diablo2LogoFireRight, d2resource.PaletteUnits) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.diabloLogoRight.SetEffect(d2enum.DrawEffectModulate) @@ -315,14 +315,14 @@ func (v *MainMenu) createLogos(loading d2screen.LoadingState) { v.diabloLogoLeftBack, err = v.uiManager.NewSprite(d2resource.Diablo2LogoBlackLeft, d2resource.PaletteUnits) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.diabloLogoLeftBack.SetPosition(diabloLogoX, diabloLogoY) v.diabloLogoRightBack, err = v.uiManager.NewSprite(d2resource.Diablo2LogoBlackRight, d2resource.PaletteUnits) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } v.diabloLogoRightBack.SetPosition(diabloLogoX, diabloLogoY) @@ -426,7 +426,7 @@ func (v *MainMenu) onGithubButtonClicked() { } if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) } } @@ -643,7 +643,7 @@ func (v *MainMenu) getLocalIP() string { } } - v.logger.Warning("no IPv4 Address could be found") + v.Warning("no IPv4 Address could be found") return "no IPv4 Address could be found" } diff --git a/d2game/d2gamescreen/map_engine_testing.go b/d2game/d2gamescreen/map_engine_testing.go index 17167d28..53412a2c 100644 --- a/d2game/d2gamescreen/map_engine_testing.go +++ b/d2game/d2gamescreen/map_engine_testing.go @@ -121,9 +121,9 @@ func CreateMapEngineTest(currentRegion, mapEngineTest.playerState = heroStateFactory.CreateTestGameState() - mapEngineTest.logger = d2util.NewLogger() - mapEngineTest.logger.SetLevel(l) - mapEngineTest.logger.SetPrefix(logPrefix) + mapEngineTest.Logger = d2util.NewLogger() + mapEngineTest.Logger.SetLevel(l) + mapEngineTest.Logger.SetPrefix(logPrefix) return mapEngineTest, nil } @@ -153,12 +153,12 @@ type MapEngineTest struct { regionSpec regionSpec filesCount int - logger *d2util.Logger + *d2util.Logger logLevel d2util.LogLevel } func (met *MapEngineTest) loadRegionByIndex(n, levelPreset, fileIndex int) { - met.logger.Info(fmt.Sprintf("Loaded region: Type(%d) LevelPreset(%d) FileIndex(%d)", n, levelPreset, fileIndex)) + met.Infof("Loaded region: Type(%d) LevelPreset(%d) FileIndex(%d)", n, levelPreset, fileIndex) met.mapRenderer.InvalidateImageCache() for _, spec := range getRegions() { @@ -213,7 +213,7 @@ func (met *MapEngineTest) loadRegionByIndex(n, levelPreset, fileIndex int) { // OnLoad loads the resources for the Map Engine Test screen func (met *MapEngineTest) OnLoad(loading d2screen.LoadingState) { if err := met.inputManager.BindHandler(met); err != nil { - met.logger.Error("could not add MapEngineTest as event handler") + met.Error("could not add MapEngineTest as event handler") } loading.Progress(twentyPercent) diff --git a/d2game/d2gamescreen/select_hero_class.go b/d2game/d2gamescreen/select_hero_class.go index 0f749da5..733ccb4e 100644 --- a/d2game/d2gamescreen/select_hero_class.go +++ b/d2game/d2gamescreen/select_hero_class.go @@ -1,7 +1,6 @@ package d2gamescreen import ( - "fmt" "image" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2hero" @@ -306,9 +305,9 @@ func CreateSelectHeroClass( InventoryItemFactory: inventoryItemFactory, } - selectHeroClass.logger = d2util.NewLogger() - selectHeroClass.logger.SetLevel(l) - selectHeroClass.logger.SetPrefix(logPrefix) + selectHeroClass.Logger = d2util.NewLogger() + selectHeroClass.Logger.SetLevel(l) + selectHeroClass.Logger.SetPrefix(logPrefix) return selectHeroClass, nil } @@ -342,7 +341,8 @@ type SelectHeroClass struct { audioProvider d2interface.AudioProvider renderer d2interface.Renderer navigator d2interface.Navigator - logger *d2util.Logger + + *d2util.Logger } // OnLoad loads the resources for the Select Hero Class screen @@ -500,13 +500,13 @@ func (v *SelectHeroClass) onOkButtonClicked() { playerState, err := v.CreateHeroState(heroName, v.selectedHero, statsState) if err != nil { - v.logger.Error("failed to create hero state!, err: %v\n" + err.Error()) + v.Errorf("failed to create hero state!, err: %v", err.Error()) return } err = v.Save(playerState) if err != nil { - v.logger.Error("failed to save game state!, err: %v\n" + err.Error()) + v.Errorf("failed to save game state!, err: %v", err.Error()) return } @@ -646,13 +646,13 @@ func (v *SelectHeroClass) handleCursorButtonPress(hero d2enum.Hero, renderInfo * func (v *SelectHeroClass) setCurrentFrame(mouseHover bool, renderInfo *HeroRenderInfo) { if mouseHover && renderInfo.Stance != d2enum.HeroStanceIdleSelected { if err := renderInfo.IdleSelectedSprite.SetCurrentFrame(renderInfo.IdleSprite.GetCurrentFrame()); err != nil { - v.logger.Error(fmt.Sprintf("could not set current frame to: %d\n", renderInfo.IdleSprite.GetCurrentFrame())) + v.Errorf("could not set current frame to: %d\n", renderInfo.IdleSprite.GetCurrentFrame()) } renderInfo.Stance = d2enum.HeroStanceIdleSelected } else if !mouseHover && renderInfo.Stance != d2enum.HeroStanceIdle { if err := renderInfo.IdleSprite.SetCurrentFrame(renderInfo.IdleSelectedSprite.GetCurrentFrame()); err != nil { - v.logger.Error(fmt.Sprintf("could not set current frame to: %d\n", renderInfo.IdleSelectedSprite.GetCurrentFrame())) + v.Errorf("could not set current frame to: %d\n", renderInfo.IdleSelectedSprite.GetCurrentFrame()) } renderInfo.Stance = d2enum.HeroStanceIdle @@ -748,7 +748,7 @@ func drawSprite(sprite *d2ui.Sprite, target d2interface.Surface) { func advanceSprite(v *SelectHeroClass, sprite *d2ui.Sprite, elapsed float64) { if sprite != nil { if err := sprite.Advance(elapsed); err != nil { - v.logger.Error("could not advance the sprite:" + err.Error()) + v.Error("could not advance the sprite:" + err.Error()) } } } @@ -763,7 +763,7 @@ func (v *SelectHeroClass) loadSprite(animationPath string, position image.Point, sprite, err := v.uiManager.NewSprite(animationPath, d2resource.PaletteFechar) if err != nil { - v.logger.Error("could not load sprite for the animation: %s\n" + animationPath + "with error: " + err.Error()) + v.Error("could not load sprite for the animation: %s\n" + animationPath + "with error: " + err.Error()) return nil } @@ -786,7 +786,7 @@ func (v *SelectHeroClass) loadSprite(animationPath string, position image.Point, func (v *SelectHeroClass) loadSoundEffect(sfx string) d2interface.SoundEffect { result, err := v.audioProvider.LoadSound(sfx, false, false) if err != nil { - v.logger.Error(err.Error()) + v.Error(err.Error()) return nil } diff --git a/d2game/d2player/escape_menu.go b/d2game/d2player/escape_menu.go index 2b9f46bb..6711886a 100644 --- a/d2game/d2player/escape_menu.go +++ b/d2game/d2player/escape_menu.go @@ -1,7 +1,6 @@ package d2player import ( - "fmt" "time" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" @@ -91,9 +90,9 @@ func NewEscapeMenu(navigator d2interface.Navigator, m.layouts[videoOptionsLayoutID] = m.newVideoOptionsLayout() m.layouts[automapOptionsLayoutID] = m.newAutomapOptionsLayout() - m.logger = d2util.NewLogger() - m.logger.SetLevel(l) - m.logger.SetPrefix(logPrefix) + m.Logger = d2util.NewLogger() + m.Logger.SetLevel(l) + m.Logger.SetPrefix(logPrefix) return m } @@ -119,7 +118,7 @@ type EscapeMenu struct { onCloseCb func() - logger *d2util.Logger + *d2util.Logger } type layout struct { @@ -164,7 +163,7 @@ func (l *enumLabel) Trigger() { currentValue := l.values[l.current] if err := l.textChangingLabel.SetText(currentValue); err != nil { - l.EscapeMenu.logger.Error(fmt.Sprintf("could not change the label text to: %s\n", currentValue)) + l.EscapeMenu.Errorf("could not change the label text to: %s", currentValue) } l.updateValue(l.optionID, currentValue) @@ -251,7 +250,7 @@ func (m *EscapeMenu) wrapLayout(fn func(*layout)) *layout { leftPent, err := left.AddAnimatedSprite(d2resource.PentSpin, d2resource.PaletteUnits, d2gui.DirectionBackward) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return nil } @@ -271,7 +270,7 @@ func (m *EscapeMenu) wrapLayout(fn func(*layout)) *layout { rightPent, err := right.AddAnimatedSprite(d2resource.PentSpin, d2resource.PaletteUnits, d2gui.DirectionForward) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return nil } @@ -290,7 +289,7 @@ func (m *EscapeMenu) wrapLayout(fn func(*layout)) *layout { func (m *EscapeMenu) addTitle(l *layout, text string) { _, err := l.AddLabel(text, d2gui.FontStyle42Units) if err != nil { - m.logger.Error("could not add label: %s to the escape menu\n" + text) + m.Errorf("could not add label: %s to the escape menu", text) } l.AddSpacerStatic(spacerWidth, labelGutter) @@ -299,7 +298,7 @@ func (m *EscapeMenu) addTitle(l *layout, text string) { func (m *EscapeMenu) addBigSelectionLabel(l *layout, text string, targetLayout layoutID) { guiLabel, err := l.AddLabel(text, d2gui.FontStyle42Units) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) } label := &showLayoutLabel{Label: guiLabel, target: targetLayout, showLayout: m.showLayout} @@ -322,7 +321,7 @@ func (m *EscapeMenu) addPreviousMenuLabel(l *layout) { guiLabel, err := l.AddLabel("PREVIOUS MENU", d2gui.FontStyle30Units) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) } label := &showLayoutLabel{Label: guiLabel, target: optionsLayoutID, showLayout: m.showLayout} @@ -346,7 +345,7 @@ func (m *EscapeMenu) addEnumLabel(l *layout, optID optionID, text string, values _, err := layout.AddLabel(text, d2gui.FontStyle30Units) if err != nil { - m.logger.Error("could not add label: %s to the escape menu\n" + text) + m.Errorf("could not add label: %s to the escape menu", text) } elID := len(l.actionableElements) @@ -359,7 +358,7 @@ func (m *EscapeMenu) addEnumLabel(l *layout, optID optionID, text string, values guiLabel, err := layout.AddLabel(values[0], d2gui.FontStyle30Units) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) } label := &enumLabel{ @@ -386,14 +385,14 @@ func (m *EscapeMenu) OnLoad() { err = m.keyBindingMenu.Load() if err != nil { - m.logger.Error("unable to load the configure controls window: %v" + err.Error()) + m.Errorf("unable to load the configure controls window: %v", err.Error()) } m.layouts[configureControlsLayoutID] = m.newConfigureControlsLayout(m.keyBindingMenu) m.selectSound, err = m.audioProvider.LoadSound(d2resource.SFXCursorSelect, false, false) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) } } @@ -411,7 +410,7 @@ func (m *EscapeMenu) OnEscKey() { m.setLayout(optionsLayoutID) if err := m.keyBindingMenu.Close(); err != nil { - m.logger.Error("unable to close the configure controls menu: %v" + err.Error()) + m.Errorf("unable to close the configure controls menu: %v", err.Error()) } return @@ -459,7 +458,7 @@ func (m *EscapeMenu) showLayout(id layoutID) { if id == configureControlsLayoutID { m.keyBindingMenu.Open() } else if err := m.keyBindingMenu.Close(); err != nil { - m.logger.Error("unable to close the configure controls menu: %v" + err.Error()) + m.Errorf("unable to close the configure controls menu: %v", err.Error()) } } @@ -475,7 +474,7 @@ func (m *EscapeMenu) onHoverElement(id int) { } func (m *EscapeMenu) onUpdateValue(optID optionID, value string) { - m.logger.Info(fmt.Sprintf("updating value %d with %s\n", optID, value)) + m.Infof("updating value %d with %s", optID, value) } func (m *EscapeMenu) setLayout(id layoutID) { @@ -582,7 +581,7 @@ func (m *EscapeMenu) OnMouseButtonDown(event d2interface.MouseEvent) bool { if m.currentLayout == configureControlsLayoutID { if err := m.keyBindingMenu.onMouseButtonDown(event); err != nil { - m.logger.Error("unable to handle mouse down on configure controls menu: %v" + err.Error()) + m.Errorf("unable to handle mouse down on configure controls menu: %v", err.Error()) } } @@ -619,7 +618,7 @@ func (m *EscapeMenu) OnMouseMove(event d2interface.MouseMoveEvent) bool { func (m *EscapeMenu) OnKeyDown(event d2interface.KeyEvent) bool { if m.keyBindingMenu.IsOpen() { if err := m.keyBindingMenu.OnKeyDown(event); err != nil { - m.logger.Error("unable to handle key down on configure controls menu: %v" + err.Error()) + m.Errorf("unable to handle key down on configure controls menu: %v", err.Error()) } return false diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 1bf70c81..b0d215ed 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -278,9 +278,9 @@ func NewGameControls( return nil, err } - gc.logger = d2util.NewLogger() - gc.logger.SetLevel(l) - gc.logger.SetPrefix(logPrefix) + gc.Logger = d2util.NewLogger() + gc.Logger.SetLevel(l) + gc.Logger.SetPrefix(logPrefix) return gc, nil } @@ -312,7 +312,7 @@ type GameControls struct { FreeCam bool isSinglePlayer bool - logger *d2util.Logger + *d2util.Logger } type actionableType int @@ -814,7 +814,7 @@ func (g *GameControls) onHoverActionable(item actionableType) { onHover, found := hoverMap[item] if !found { - g.logger.Error(fmt.Sprintf("Unrecognized actionableType(%d) being hovered\n", item)) + g.Errorf("Unrecognized actionableType(%d) being hovered", item) return } @@ -829,23 +829,23 @@ func (g *GameControls) onClickActionable(item actionableType) { }, newStats: func() { - g.logger.Info("New Stats Selector Action Pressed") + g.Info("New Stats Selector Action Pressed") }, xp: func() { - g.logger.Info("XP Action Pressed") + g.Info("XP Action Pressed") }, walkRun: func() { - g.logger.Info("Walk/Run Action Pressed") + g.Info("Walk/Run Action Pressed") }, stamina: func() { - g.logger.Info("Stamina Action Pressed") + g.Info("Stamina Action Pressed") }, newSkills: func() { - g.logger.Info("New Skills Selector Action Pressed") + g.Info("New Skills Selector Action Pressed") }, rightSkill: func() { @@ -854,19 +854,19 @@ func (g *GameControls) onClickActionable(item actionableType) { hpGlobe: func() { g.ToggleHpStats() - g.logger.Info("HP Globe Pressed") + g.Info("HP Globe Pressed") }, manaGlobe: func() { g.ToggleManaStats() - g.logger.Info("Mana Globe Pressed") + g.Info("Mana Globe Pressed") }, } action, found := actionMap[item] if !found { // Warning, because some action types are still todo, and could return this error - g.logger.Warning(fmt.Sprintf("Unrecognized actionableType(%d) being clicked\n", item)) + g.Warningf("Unrecognized actionableType(%d) being clicked", item) return } @@ -976,7 +976,7 @@ func (g *GameControls) bindLearnSkillsCommand(term d2interface.Terminal) error { } g.hud.skillSelectMenu.RegenerateImageCache() - g.logger.Info(fmt.Sprintf("Learned %d skills", learnedSkillsCount)) + g.Infof("Learned %d skills", learnedSkillsCount) if err != nil { term.OutputErrorf("cannot learn skill for class, error: %s", err) @@ -1013,7 +1013,7 @@ func (g *GameControls) bindLearnSkillByIDCommand(term d2interface.Terminal) erro } g.hud.skillSelectMenu.RegenerateImageCache() - g.logger.Info("Learned skill: " + skill.Skill) + g.Info("Learned skill: " + skill.Skill) } return term.BindAction( diff --git a/d2game/d2player/globeWidget.go b/d2game/d2player/globeWidget.go index 50229599..f2bccb84 100644 --- a/d2game/d2player/globeWidget.go +++ b/d2game/d2player/globeWidget.go @@ -56,7 +56,7 @@ type globeFrame struct { func (gf *globeFrame) setFrameIndex() { if err := gf.sprite.SetCurrentFrame(gf.idx); err != nil { - gf.gw.logger.Error(err.Error()) + gf.gw.Error(err.Error()) } } @@ -132,9 +132,9 @@ func newGlobeWidget(ui *d2ui.UIManager, } }) - gw.logger = d2util.NewLogger() - gw.logger.SetLevel(l) - gw.logger.SetPrefix(logPrefix) + gw.Logger = d2util.NewLogger() + gw.Logger.SetLevel(l) + gw.Logger.SetPrefix(logPrefix) return gw } @@ -146,7 +146,7 @@ type globeWidget struct { valueMax *int globe *globeFrame overlap *globeFrame - logger *d2util.Logger + *d2util.Logger pressed bool isTooltipLocked bool @@ -161,14 +161,14 @@ func (g *globeWidget) load() { g.globe.sprite, err = g.GetManager().NewSprite(d2resource.HealthManaIndicator, d2resource.PaletteSky) if err != nil { - g.logger.Error(err.Error()) + g.Error(err.Error()) } g.globe.setFrameIndex() g.overlap.sprite, err = g.GetManager().NewSprite(d2resource.GameGlobeOverlap, d2resource.PaletteSky) if err != nil { - g.logger.Error(err.Error()) + g.Error(err.Error()) } g.overlap.setFrameIndex() diff --git a/d2game/d2player/help_overlay.go b/d2game/d2player/help_overlay.go index cc417187..1e8a3848 100644 --- a/d2game/d2player/help_overlay.go +++ b/d2game/d2player/help_overlay.go @@ -168,9 +168,9 @@ func NewHelpOverlay( keyMap: keyMap, } - h.logger = d2util.NewLogger() - h.logger.SetLevel(l) - h.logger.SetPrefix(logPrefix) + h.Logger = d2util.NewLogger() + h.Logger.SetLevel(l) + h.Logger.SetPrefix(logPrefix) return h } @@ -189,12 +189,12 @@ type HelpOverlay struct { panelGroup *d2ui.WidgetGroup backgroundWidget *d2ui.CustomWidget - logger *d2util.Logger + *d2util.Logger } // Toggle the visibility state of the overlay func (h *HelpOverlay) Toggle() { - h.logger.Info("Help overlay toggled") + h.Info("Help overlay toggled") if h.isOpen { h.Close() @@ -264,12 +264,12 @@ func (h *HelpOverlay) setupOverlayFrame() { for _, frameIndex := range frames { f, err := h.uiManager.NewSprite(d2resource.HelpBorder, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } err = f.SetCurrentFrame(frameIndex) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } frameWidth, frameHeight := f.GetCurrentFrameSize() @@ -560,12 +560,12 @@ func (h *HelpOverlay) createBullet(c callout) { newDot, err := h.uiManager.NewSprite(d2resource.HelpYellowBullet, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } err = newDot.SetCurrentFrame(0) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } newDot.SetPosition(c.DotX, c.DotY+bulletOffsetY) @@ -602,12 +602,12 @@ func (h *HelpOverlay) createCallout(c callout) { newDot, err := h.uiManager.NewSprite(d2resource.HelpWhiteBullet, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } err = newDot.SetCurrentFrame(0) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } newDot.SetPosition(c.DotX, c.DotY) diff --git a/d2game/d2player/hero_stats_panel.go b/d2game/d2player/hero_stats_panel.go index 11240d8a..922d345d 100644 --- a/d2game/d2player/hero_stats_panel.go +++ b/d2game/d2player/hero_stats_panel.go @@ -103,9 +103,9 @@ func NewHeroStatsPanel(asset *d2asset.AssetManager, labels: &StatsPanelLabels{}, } - hsp.logger = d2util.NewLogger() - hsp.logger.SetLevel(l) - hsp.logger.SetPrefix(logPrefix) + hsp.Logger = d2util.NewLogger() + hsp.Logger.SetLevel(l) + hsp.Logger.SetPrefix(logPrefix) return hsp } @@ -126,7 +126,7 @@ type HeroStatsPanel struct { originY int isOpen bool - logger *d2util.Logger + *d2util.Logger } // Load the data for the hero status panel @@ -140,7 +140,7 @@ func (s *HeroStatsPanel) Load() { s.panel, err = s.uiManager.NewSprite(d2resource.InventoryCharacterPanel, d2resource.PaletteSky) if err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) } w, h := frame.GetSize() @@ -216,7 +216,7 @@ func (s *HeroStatsPanel) renderStaticPanelFrames(target d2interface.Surface) { for _, frameIndex := range frames { if err := s.panel.SetCurrentFrame(frameIndex); err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) } w, h := s.panel.GetCurrentFrameSize() diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index 3b380fc8..be455a3f 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -104,7 +104,7 @@ type HUD struct { widgetRightSkill *d2ui.CustomWidget panelBackground *d2ui.CustomWidget panelGroup *d2ui.WidgetGroup - logger *d2util.Logger + *d2util.Logger } // NewHUD creates a HUD object @@ -151,9 +151,9 @@ func NewHUD( manaGlobe: manaGlobe, } - hud.logger = d2util.NewLogger() - hud.logger.SetPrefix(logPrefix) - hud.logger.SetLevel(l) + hud.Logger = d2util.NewLogger() + hud.Logger.SetPrefix(logPrefix) + hud.Logger.SetLevel(l) return hud } @@ -184,7 +184,7 @@ func (h *HUD) loadCustomWidgets() { // static background _, height, err := h.mainPanel.GetFrameSize(0) // health globe is the frame with max height if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -229,7 +229,7 @@ func (h *HUD) loadSkillResources() { // https://github.com/OpenDiablo2/OpenDiablo2/issues/799 genericSkillsSprite, err := h.uiManager.NewSprite(d2resource.GenericSkills, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } attackIconID := 2 @@ -252,17 +252,17 @@ func (h *HUD) loadSprites() { h.globeSprite, err = h.uiManager.NewSprite(d2resource.GameGlobeOverlap, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } h.hpManaStatusSprite, err = h.uiManager.NewSprite(d2resource.HealthManaIndicator, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } h.mainPanel, err = h.uiManager.NewSprite(d2resource.GamePanels, d2resource.PaletteSky) if err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } } @@ -357,7 +357,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { // Main panel background if err := h.renderPanel(offsetX, offsetY, target); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -366,7 +366,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { offsetX += w + skillIconWidth if err := h.renderNewStatsButton(offsetX, offsetY, target); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -375,7 +375,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { offsetX += w if err := h.renderStamina(offsetX, offsetY, target); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -384,7 +384,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { offsetX += w if err := h.renderPotions(offsetX, offsetY, target); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -393,7 +393,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { offsetX += w if err := h.renderNewSkillsButton(offsetX, offsetY, target); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -402,7 +402,7 @@ func (h *HUD) renderPanelStatic(target d2interface.Surface) { offsetX += w + skillIconWidth if err := h.mainPanel.SetCurrentFrame(frameRightGlobeHolder); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -429,7 +429,7 @@ func (h *HUD) renderLeftSkill(x, y int, target d2interface.Surface) { } if err := h.leftSkillResource.SkillIcon.SetCurrentFrame(h.hero.LeftSkill.IconCel); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -447,7 +447,7 @@ func (h *HUD) renderRightSkill(x, _ int, target d2interface.Surface) { } if err := h.rightSkillResource.SkillIcon.SetCurrentFrame(h.hero.RightSkill.IconCel); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) return } @@ -622,7 +622,7 @@ func (h *HUD) getSkillResourceByClass(class string) string { entry, found := resourceMap[class] if !found { - h.logger.Error("Unknown class token: '%s'" + class) + h.Errorf("Unknown class token: '%s'", class) } return entry @@ -635,11 +635,11 @@ func (h *HUD) Advance(elapsed float64) { h.setExperienceTooltipText() if err := h.healthGlobe.Advance(elapsed); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } if err := h.manaGlobe.Advance(elapsed); err != nil { - h.logger.Error(err.Error()) + h.Error(err.Error()) } } diff --git a/d2game/d2player/inventory.go b/d2game/d2player/inventory.go index bc083f5a..980c9afd 100644 --- a/d2game/d2player/inventory.go +++ b/d2game/d2player/inventory.go @@ -44,9 +44,9 @@ func NewInventory(asset *d2asset.AssetManager, originY: 0, // expansion data has these all offset by +60 ... } - inventory.logger = d2util.NewLogger() - inventory.logger.SetLevel(l) - inventory.logger.SetPrefix(logPrefix) + inventory.Logger = d2util.NewLogger() + inventory.Logger.SetLevel(l) + inventory.Logger.SetPrefix(logPrefix) return inventory } @@ -71,7 +71,7 @@ type Inventory struct { isOpen bool onCloseCb func() - logger *d2util.Logger + *d2util.Logger } // IsOpen returns true if the inventory is open @@ -162,7 +162,7 @@ func (g *Inventory) Load() { _, err := g.grid.Add(inventoryItems...) if err != nil { - g.logger.Error("could not add items to the inventory, err: %v\n" + err.Error()) + g.Errorf("could not add items to the inventory, err: %v", err.Error()) } } @@ -174,7 +174,7 @@ func (g *Inventory) Render(target d2interface.Surface) { err := g.renderFrame(target) if err != nil { - g.logger.Error(err.Error()) + g.Error(err.Error()) } g.grid.Render(target) diff --git a/d2game/d2player/inventory_grid.go b/d2game/d2player/inventory_grid.go index 7080ac35..981d9761 100644 --- a/d2game/d2player/inventory_grid.go +++ b/d2game/d2player/inventory_grid.go @@ -55,9 +55,9 @@ func NewItemGrid(asset *d2asset.AssetManager, equipmentSlots: genEquipmentSlotsMap(record), } - itemGrid.logger = d2util.NewLogger() - itemGrid.logger.SetLevel(l) - itemGrid.logger.SetPrefix(logPrefix) + itemGrid.Logger = d2util.NewLogger() + itemGrid.Logger.SetLevel(l) + itemGrid.Logger.SetPrefix(logPrefix) return itemGrid } @@ -76,7 +76,7 @@ type ItemGrid struct { sprites map[string]*d2ui.Sprite slotSize int - logger *d2util.Logger + *d2util.Logger } // SlotToScreen translates slot coordinates to screen coordinates @@ -145,7 +145,7 @@ func (g *ItemGrid) loadItem(item InventoryItem) { itemSprite, err := g.uiManager.NewSprite(imgPath, d2resource.PaletteSky) if err != nil { - g.logger.Error("Failed to load sprite, error: " + err.Error()) + g.Error("Failed to load sprite, error: " + err.Error()) } g.sprites[item.GetItemCode()] = itemSprite diff --git a/d2game/d2player/key_binding_menu.go b/d2game/d2player/key_binding_menu.go index e2d004f2..fa0da7b7 100644 --- a/d2game/d2player/key_binding_menu.go +++ b/d2game/d2player/key_binding_menu.go @@ -70,9 +70,9 @@ func NewKeyBindingMenu( escapeMenu: escapeMenu, } - ret.logger = d2util.NewLogger() - ret.logger.SetLevel(l) - ret.logger.SetPrefix(logPrefix) + ret.Logger = d2util.NewLogger() + ret.Logger.SetLevel(l) + ret.Logger.SetPrefix(logPrefix) ret.Box = d2gui.NewBox( asset, renderer, ui, ret.mainLayout, @@ -85,17 +85,17 @@ func NewKeyBindingMenu( ret.Box.SetOptions([]*d2gui.LabelButton{ d2gui.NewLabelButton(0, 0, "Cancel", d2util.Color(d2gui.ColorRed), d2util.LogLevelDefault, func() { if err := ret.onCancelClicked(); err != nil { - ret.logger.Error("error while clicking option Cancel: %v" + err.Error()) + ret.Errorf("error while clicking option Cancel: %v", err.Error()) } }), d2gui.NewLabelButton(0, 0, "Default", d2util.Color(d2gui.ColorBlue), d2util.LogLevelDefault, func() { if err := ret.onDefaultClicked(); err != nil { - ret.logger.Error("error while clicking option Default: %v" + err.Error()) + ret.Errorf("error while clicking option Default: %v", err) } }), d2gui.NewLabelButton(0, 0, "Accept", d2util.Color(d2gui.ColorGreen), d2util.LogLevelDefault, func() { if err := ret.onAcceptClicked(); err != nil { - ret.logger.Error("error while clicking option Accept: %v" + err.Error()) + ret.Errorf("error while clicking option Accept: %v", err) } }), }) @@ -127,7 +127,7 @@ type KeyBindingMenu struct { currentBindingLayout *bindingLayout lastBindingLayout *bindingLayout - logger *d2util.Logger + *d2util.Logger } // Close will disable the render of the menu and clear diff --git a/d2game/d2player/mini_panel.go b/d2game/d2player/mini_panel.go index 29fc1627..e4316f31 100644 --- a/d2game/d2player/mini_panel.go +++ b/d2game/d2player/mini_panel.go @@ -51,9 +51,9 @@ func newMiniPanel(asset *d2asset.AssetManager, isSinglePlayer: isSinglePlayer, } - mp.logger = d2util.NewLogger() - mp.logger.SetLevel(l) - mp.logger.SetPrefix(logPrefix) + mp.Logger = d2util.NewLogger() + mp.Logger.SetLevel(l) + mp.Logger.SetPrefix(logPrefix) return mp } @@ -75,7 +75,7 @@ type miniPanel struct { groupAlwaysVis *d2ui.WidgetGroup tooltipGroup *d2ui.WidgetGroup - logger *d2util.Logger + *d2util.Logger } func (m *miniPanel) load(actions *miniPanelActions) { @@ -83,7 +83,7 @@ func (m *miniPanel) load(actions *miniPanelActions) { m.sprite, err = m.ui.NewSprite(d2resource.MinipanelButton, d2resource.PaletteSky) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return } @@ -108,12 +108,12 @@ func (m *miniPanel) createWidgets(actions *miniPanelActions) { m.container, err = m.ui.NewSprite(miniPanelContainerPath, d2resource.PaletteSky) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return } if err = m.container.SetCurrentFrame(0); err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return } @@ -132,7 +132,7 @@ func (m *miniPanel) createButtons(actions *miniPanelActions) { buttonWidth, buttonHeight, err := m.sprite.GetFrameSize(0) if err != nil { - m.logger.Error(err.Error()) + m.Error(err.Error()) return } diff --git a/d2game/d2player/skill_select_panel.go b/d2game/d2player/skill_select_panel.go index aee05ca1..06f2c0bd 100644 --- a/d2game/d2player/skill_select_panel.go +++ b/d2game/d2player/skill_select_panel.go @@ -52,9 +52,9 @@ func NewHeroSkillsPanel(asset *d2asset.AssetManager, hoverTooltip: hoverTooltip, } - skillPanel.logger = d2util.NewLogger() - skillPanel.logger.SetLevel(l) - skillPanel.logger.SetPrefix(logPrefix) + skillPanel.Logger = d2util.NewLogger() + skillPanel.Logger.SetLevel(l) + skillPanel.Logger.SetPrefix(logPrefix) return skillPanel } @@ -73,7 +73,7 @@ type SkillPanel struct { regenerateImageCache bool isLeftPanel bool - logger *d2util.Logger + *d2util.Logger } // Open opens the hero skills panel @@ -216,7 +216,7 @@ func (s *SkillPanel) generateSkillRowImageCache() error { cachedImage, err := s.createSkillListImage(skillListRow) if err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) return err } @@ -243,7 +243,7 @@ func (s *SkillPanel) createSkillListImage(skillsListRow *SkillListRow) (d2interf if skillSprite.GetFrameCount() <= skill.IconCel { // happens for non-player skills, since they do not have an icon - s.logger.Error(fmt.Sprintf("Invalid IconCel(sprite frame index) [%d] - Skill name: %s, skipping.", skill.IconCel, skill.Name)) + s.Errorf("Invalid IconCel(sprite frame index) [%d] - Skill name: %s, skipping.", skill.IconCel, skill.Name) continue } @@ -365,7 +365,7 @@ func (s *SkillPanel) getSkillResourceByClass(class string) string { case "dru": resource = d2resource.DruidSkills default: - s.logger.Error(fmt.Sprintf("Unknown class token: '%s'", class)) + s.Errorf("Unknown class token: '%s'", class) } return resource diff --git a/d2game/d2player/skillicon.go b/d2game/d2player/skillicon.go index 3a08b21b..28e5ae6e 100644 --- a/d2game/d2player/skillicon.go +++ b/d2game/d2player/skillicon.go @@ -37,9 +37,9 @@ func newSkillIcon(ui *d2ui.UIManager, lvlLabel: label, } - res.logger = d2util.NewLogger() - res.logger.SetLevel(l) - res.logger.SetPrefix(logPrefix) + res.Logger = d2util.NewLogger() + res.Logger.SetLevel(l) + res.Logger.SetPrefix(logPrefix) res.SetPosition(x, y) @@ -52,7 +52,7 @@ type skillIcon struct { sprite *d2ui.Sprite skill *d2hero.HeroSkill - logger *d2util.Logger + *d2util.Logger } func (si *skillIcon) SetVisible(visible bool) { @@ -64,7 +64,7 @@ func (si *skillIcon) renderSprite(target d2interface.Surface) { x, y := si.GetPosition() if err := si.sprite.SetCurrentFrame(si.skill.IconCel); err != nil { - si.logger.Error("Cannot set Frame %e" + err.Error()) + si.Errorf("Cannot set Frame %e", err) return } diff --git a/d2game/d2player/skilltree.go b/d2game/d2player/skilltree.go index 2c0a6562..3f5ddae0 100644 --- a/d2game/d2player/skilltree.go +++ b/d2game/d2player/skilltree.go @@ -106,9 +106,9 @@ func newSkillTree( l: l, } - st.logger = d2util.NewLogger() - st.logger.SetLevel(l) - st.logger.SetPrefix(logPrefix) + st.Logger = d2util.NewLogger() + st.Logger.SetLevel(l) + st.Logger.SetPrefix(logPrefix) return st } @@ -133,8 +133,8 @@ type skillTree struct { iconGroup *d2ui.WidgetGroup panel *d2ui.CustomWidget - logger *d2util.Logger - l d2util.LogLevel + *d2util.Logger + l d2util.LogLevel } func (s *skillTree) load() { @@ -153,7 +153,7 @@ func (s *skillTree) load() { s.panelGroup.AddWidget(s.closeButton) if err := s.setHeroTypeResourcePath(); err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) } s.loadForHeroType() @@ -172,14 +172,14 @@ func (s *skillTree) load() { func (s *skillTree) loadForHeroType() { sp, err := s.uiManager.NewSprite(s.resources.skillPanelPath, d2resource.PaletteSky) if err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) } s.resources.skillPanel = sp si, err := s.uiManager.NewSprite(s.resources.skillIconPath, d2resource.PaletteSky) if err != nil { - s.logger.Error(err.Error()) + s.Error(err.Error()) } s.resources.skillSprite = si @@ -349,7 +349,7 @@ func (s *skillTree) setHeroTypeResourcePath() error { // Toggle the skill tree visibility func (s *skillTree) Toggle() { - s.logger.Info("SkillTree toggled") + s.Info("SkillTree toggled") if s.isOpen { s.Close() @@ -401,7 +401,7 @@ func (s *skillTree) renderPanelSegment( target d2interface.Surface, frame int) { if err := s.resources.skillPanel.SetCurrentFrame(frame); err != nil { - s.logger.Error("%e" + err.Error()) + s.Error(err.Error()) return } @@ -415,7 +415,7 @@ func (s *skillTree) renderTabCommon(target d2interface.Surface) { // top w, h, err := skillPanel.GetFrameSize(frameCommonTabTopLeft) if err != nil { - s.logger.Error("%e" + err.Error()) + s.Error(err.Error()) return } @@ -430,7 +430,7 @@ func (s *skillTree) renderTabCommon(target d2interface.Surface) { // bottom _, h, err = skillPanel.GetFrameSize(frameCommonTabBottomLeft) if err != nil { - s.logger.Error("%e" + err.Error()) + s.Error(err.Error()) return } @@ -453,7 +453,7 @@ func (s *skillTree) renderTab(target d2interface.Surface, tab int) { // top _, h0, err := skillPanel.GetFrameSize(topFrame) if err != nil { - s.logger.Error("%e" + err.Error()) + s.Error(err.Error()) return } @@ -465,7 +465,7 @@ func (s *skillTree) renderTab(target d2interface.Surface, tab int) { // bottom w, h1, err := skillPanel.GetFrameSize(bottomFrame) if err != nil { - s.logger.Error("%e" + err.Error()) + s.Error(err.Error()) return }