From c6ab79c388b904abb4d4f25809c7c926e65947d6 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 11:25:37 +0100 Subject: [PATCH 01/70] quest log disabled icon --- d2core/d2ui/button.go | 9 ++++-- d2core/d2ui/sprite.go | 2 +- d2game/d2gamescreen/character_select.go | 32 ++------------------- d2game/d2gamescreen/cinematics.go | 2 +- d2game/d2gamescreen/main_menu.go | 16 +++++------ d2game/d2player/quest_log.go | 37 +++++-------------------- 6 files changed, 26 insertions(+), 72 deletions(-) diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index af2dc51f..92cd6ee2 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -180,7 +180,7 @@ const ( blankQuestButtonXSegments = 1 blankQuestButtonYSegments = 1 - blankQuestButtonDisabledFrames = -1 + blankQuestButtonDisabledFrames = 0 buttonMinipanelCharacterBaseFrame = 0 buttonMinipanelInventoryBaseFrame = 2 @@ -900,7 +900,7 @@ func (v *Button) prerenderStates(btnSprite *Sprite, btnLayout *ButtonLayout, lab label.SetPosition(xOffset, textY) label.Render(v.normalSurface) - if !btnLayout.HasImage || !btnLayout.AllowFrameChange { + if !btnLayout.AllowFrameChange { return } @@ -1003,7 +1003,10 @@ func (v *Button) Render(target d2interface.Surface) { if v.toggled { target.Render(v.toggledSurface) } else { - target.Render(v.disabledSurface) + // it allows to use SetEnabled(false) for non-image budons + if v.buttonLayout.HasImage { + target.Render(v.disabledSurface) + } } case v.toggled && v.pressed: target.Render(v.pressedToggledSurface) diff --git a/d2core/d2ui/sprite.go b/d2core/d2ui/sprite.go index 91988891..7c66e1fd 100644 --- a/d2core/d2ui/sprite.go +++ b/d2core/d2ui/sprite.go @@ -74,7 +74,7 @@ func (s *Sprite) RenderSegmented(target d2interface.Surface, segmentsX, segments for x := 0; x < segmentsX; x++ { idx := x + y*segmentsX + frameOffset*segmentsX*segmentsY if err := s.animation.SetCurrentFrame(idx); err != nil { - s.Error("SetCurrentFrame error" + err.Error()) + s.Errorf("Error while setting frame (%d): %s", idx, err) } target.PushTranslation(s.x+currentX, s.y+currentY) diff --git a/d2game/d2gamescreen/character_select.go b/d2game/d2gamescreen/character_select.go index 552ea523..feecc61a 100644 --- a/d2game/d2gamescreen/character_select.go +++ b/d2game/d2gamescreen/character_select.go @@ -1,7 +1,6 @@ package d2gamescreen import ( - "image/color" "math" "os" "strconv" @@ -190,7 +189,7 @@ func (v *CharacterSelect) OnLoad(loading d2screen.LoadingState) { v.characterNameLabel[i] = v.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteUnits) v.characterNameLabel[i].SetPosition(offsetX, offsetY) - v.characterNameLabel[i].Color[0] = rgbaColor(lightBrown) + v.characterNameLabel[i].Color[0] = d2util.Color(lightBrown) offsetY += labelHeight @@ -201,7 +200,7 @@ func (v *CharacterSelect) OnLoad(loading d2screen.LoadingState) { v.characterExpLabel[i] = v.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteStatic) v.characterExpLabel[i].SetPosition(offsetX, offsetY) - v.characterExpLabel[i].Color[0] = rgbaColor(lightGreen) + v.characterExpLabel[i].Color[0] = d2util.Color(lightGreen) } v.refreshGameStates() @@ -267,31 +266,6 @@ func (v *CharacterSelect) loadCharScrollbar() { v.charScrollbar.OnActivated(func() { v.onScrollUpdate() }) } -func rgbaColor(rgba uint32) color.RGBA { - result := color.RGBA{} - a, b, g, r := 0, 1, 2, 3 - byteWidth := 8 - byteMask := 0xff - - for idx := 0; idx < 4; idx++ { - shift := idx * byteWidth - component := uint8(rgba>>shift) & uint8(byteMask) - - switch idx { - case a: - result.A = component - case b: - result.B = component - case g: - result.G = component - case r: - result.R = component - } - } - - return result -} - func (v *CharacterSelect) createButtons(loading d2screen.LoadingState) { v.newCharButton = v.uiManager.NewButton(d2ui.ButtonTypeTall, strings.Join( d2util.SplitIntoLinesWithMaxWidth(v.asset.TranslateString("#831"), 13), "\n")) @@ -411,7 +385,7 @@ func (v *CharacterSelect) Render(screen d2interface.Surface) { } if v.showDeleteConfirmation { - screen.DrawRect(screenWidth, screenHeight, rgbaColor(blackHalfOpacity)) + screen.DrawRect(screenWidth, screenHeight, d2util.Color(blackHalfOpacity)) v.okCancelBox.RenderSegmented(screen, 2, 1, 0) v.deleteCharConfirmLabel.Render(screen) } diff --git a/d2game/d2gamescreen/cinematics.go b/d2game/d2gamescreen/cinematics.go index f1aa9a41..ee3171e3 100644 --- a/d2game/d2gamescreen/cinematics.go +++ b/d2game/d2gamescreen/cinematics.go @@ -98,7 +98,7 @@ func (v *Cinematics) OnLoad(_ d2screen.LoadingState) { v.cinematicsLabel = v.uiManager.NewLabel(d2resource.Font30, d2resource.PaletteStatic) v.cinematicsLabel.Alignment = d2ui.HorizontalAlignCenter v.cinematicsLabel.SetText(v.asset.TranslateLabel(d2enum.SelectCinematicLabel)) - v.cinematicsLabel.Color[0] = rgbaColor(lightBrown) + v.cinematicsLabel.Color[0] = d2util.Color(lightBrown) v.cinematicsLabel.SetPosition(cinematicsLabelX, cinematicsLabelY) } diff --git a/d2game/d2gamescreen/main_menu.go b/d2game/d2gamescreen/main_menu.go index 6a96355d..8330973e 100644 --- a/d2game/d2gamescreen/main_menu.go +++ b/d2game/d2gamescreen/main_menu.go @@ -239,32 +239,32 @@ func (v *MainMenu) createLabels(loading d2screen.LoadingState) { v.versionLabel = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteStatic) v.versionLabel.Alignment = d2ui.HorizontalAlignRight v.versionLabel.SetText("OpenDiablo2 - " + v.buildInfo.Branch) - v.versionLabel.Color[0] = rgbaColor(white) + v.versionLabel.Color[0] = d2util.Color(white) v.versionLabel.SetPosition(versionLabelX, versionLabelY) v.commitLabel = v.uiManager.NewLabel(d2resource.FontFormal10, d2resource.PaletteStatic) v.commitLabel.Alignment = d2ui.HorizontalAlignLeft v.commitLabel.SetText(v.buildInfo.Commit) - v.commitLabel.Color[0] = rgbaColor(white) + v.commitLabel.Color[0] = d2util.Color(white) v.commitLabel.SetPosition(commitLabelX, commitLabelY) v.copyrightLabel = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteStatic) v.copyrightLabel.Alignment = d2ui.HorizontalAlignCenter v.copyrightLabel.SetText(v.asset.TranslateLabel(d2enum.CopyrightLabel)) - v.copyrightLabel.Color[0] = rgbaColor(lightBrown) + v.copyrightLabel.Color[0] = d2util.Color(lightBrown) v.copyrightLabel.SetPosition(copyrightX, copyrightY) loading.Progress(thirtyPercent) v.copyrightLabel2 = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteStatic) v.copyrightLabel2.Alignment = d2ui.HorizontalAlignCenter v.copyrightLabel2.SetText(v.asset.TranslateLabel(d2enum.AllRightsReservedLabel)) - v.copyrightLabel2.Color[0] = rgbaColor(lightBrown) + v.copyrightLabel2.Color[0] = d2util.Color(lightBrown) v.copyrightLabel2.SetPosition(copyright2X, copyright2Y) v.openDiabloLabel = v.uiManager.NewLabel(d2resource.FontFormal10, d2resource.PaletteStatic) v.openDiabloLabel.Alignment = d2ui.HorizontalAlignCenter v.openDiabloLabel.SetText("OpenDiablo2 is neither developed by, nor endorsed by Blizzard or its parent company Activision") - v.openDiabloLabel.Color[0] = rgbaColor(lightYellow) + v.openDiabloLabel.Color[0] = d2util.Color(lightYellow) v.openDiabloLabel.SetPosition(od2LabelX, od2LabelY) loading.Progress(fiftyPercent) @@ -276,19 +276,19 @@ func (v *MainMenu) createLabels(loading d2screen.LoadingState) { v.tcpJoinGameLabel = v.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteUnits) v.tcpJoinGameLabel.Alignment = d2ui.HorizontalAlignCenter v.tcpJoinGameLabel.SetText(strings.Join(d2util.SplitIntoLinesWithMaxWidth(v.asset.TranslateLabel(d2enum.TCPIPEnterHostIPLabel), 27), "\n")) - v.tcpJoinGameLabel.Color[0] = rgbaColor(gold) + v.tcpJoinGameLabel.Color[0] = d2util.Color(gold) v.tcpJoinGameLabel.SetPosition(joinGameX, joinGameY) v.machineIP = v.uiManager.NewLabel(d2resource.Font24, d2resource.PaletteUnits) v.machineIP.Alignment = d2ui.HorizontalAlignCenter v.machineIP.SetText(v.asset.TranslateLabel(d2enum.TCPIPYourIPLabel) + "\n" + v.getLocalIP()) - v.machineIP.Color[0] = rgbaColor(lightYellow) + v.machineIP.Color[0] = d2util.Color(lightYellow) v.machineIP.SetPosition(machineIPX, machineIPY) if v.errorLabel != nil { v.errorLabel.SetPosition(errorLabelX, errorLabelY) v.errorLabel.Alignment = d2ui.HorizontalAlignCenter - v.errorLabel.Color[0] = rgbaColor(red) + v.errorLabel.Color[0] = d2util.Color(red) } } diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index d395be25..529edb2d 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -2,7 +2,6 @@ package d2player import ( "fmt" - "image/color" "strings" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" @@ -216,13 +215,13 @@ func (s *QuestLog) Load() { s.questName = s.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteStatic) s.questName.Alignment = d2ui.HorizontalAlignCenter - s.questName.Color[0] = rgbaColor(white) + s.questName.Color[0] = d2util.Color(white) s.questName.SetPosition(questNameLabelX, questNameLabelY) s.panelGroup.AddWidget(s.questName) s.questDescr = s.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteStatic) s.questDescr.Alignment = d2ui.HorizontalAlignLeft - s.questDescr.Color[0] = rgbaColor(white) + s.questDescr.Color[0] = d2util.Color(white) s.questDescr.SetPosition(questDescrLabelX, questDescrLabelY) s.panelGroup.AddWidget(s.questDescr) @@ -298,6 +297,8 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { button := s.uiManager.NewButton(d2ui.ButtonTypeBlankQuestBtn, "") button.SetPosition(x+questOffsetX, y+questOffsetY) + cw := n + button.SetEnabled(!(s.questStatus[s.cordsToQuestID(act, cw)] == d2enum.QuestStatusNotStarted)) buttons = append(buttons, button) icon, err = s.makeQuestIconForAct(act, n) @@ -383,7 +384,7 @@ func (s *QuestLog) setQuestLabel() { s.questName.SetText(s.asset.TranslateString(fmt.Sprintf("qstsa%dq%d", s.selectedTab+1, s.selectedQuest))) - status := s.questStatus[s.cordsToQuestID(s.selectedTab+1, s.selectedQuest)] + status := s.questStatus[s.cordsToQuestID(s.selectedTab+1, s.selectedQuest)-1] switch status { case d2enum.QuestStatusCompleted: s.questDescr.SetText( @@ -393,6 +394,8 @@ func (s *QuestLog) setQuestLabel() { questDescriptionLenght), "\n"), ) + case d2enum.QuestStatusCompleting: + s.questDescr.SetText("") case d2enum.QuestStatusNotStarted: s.questDescr.SetText("") default: @@ -527,32 +530,6 @@ func (s *QuestLog) renderStaticPanelFrames(target d2interface.Surface) { } } -// copy from character select (github.com/OpenDiablo2/OpenDiablo2/d2game/d2gamescreen/character_select.go) -func rgbaColor(rgba uint32) color.RGBA { - result := color.RGBA{} - a, b, g, r := 0, 1, 2, 3 - byteWidth := 8 - byteMask := 0xff - - for idx := 0; idx < 4; idx++ { - shift := idx * byteWidth - component := uint8(rgba>>shift) & uint8(byteMask) - - switch idx { - case a: - result.A = component - case b: - result.B = component - case g: - result.G = component - case r: - result.R = component - } - } - - return result -} - func (s *QuestLog) cordsToQuestID(act, number int) int { key := (act-1)*d2enum.NormalActQuestsNumber + number if act > d2enum.Act4 { From 84c036f8a352f675a8ede5260bc5ba884726d8d3 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 11:40:19 +0100 Subject: [PATCH 02/70] removed unused functions for text colorizing --- d2core/d2gui/common.go | 27 --------------------------- d2core/d2gui/layout.go | 12 ++++++------ d2core/d2term/terminal.go | 36 ++++++------------------------------ 3 files changed, 12 insertions(+), 63 deletions(-) diff --git a/d2core/d2gui/common.go b/d2core/d2gui/common.go index f81bb4e6..02dd2094 100644 --- a/d2core/d2gui/common.go +++ b/d2core/d2gui/common.go @@ -1,8 +1,6 @@ package d2gui import ( - "image/color" - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" ) @@ -37,28 +35,3 @@ func renderSegmented(animation d2interface.Animation, segmentsX, segmentsY, fram func half(n int) int { return n / 2 } - -func rgbaColor(rgba uint32) color.RGBA { - result := color.RGBA{} - a, b, g, r := 0, 1, 2, 3 - byteWidth := 8 - byteMask := 0xff - - for idx := 0; idx < 4; idx++ { - shift := idx * byteWidth - component := uint8(rgba>>shift) & uint8(byteMask) - - switch idx { - case a: - result.A = component - case b: - result.B = component - case g: - result.G = component - case r: - result.R = component - } - } - - return result -} diff --git a/d2core/d2gui/layout.go b/d2core/d2gui/layout.go index 43125acf..44c7f7a0 100644 --- a/d2core/d2gui/layout.go +++ b/d2core/d2gui/layout.go @@ -248,16 +248,16 @@ func (l *Layout) renderEntryDebug(entry *layoutEntry, target d2interface.Surface target.PushTranslation(entry.x, entry.y) defer target.Pop() - drawColor := rgbaColor(white) + drawColor := d2util.Color(white) switch entry.widget.(type) { case *Layout: - drawColor = rgbaColor(magenta) + drawColor = d2util.Color(magenta) case *SpacerStatic, *SpacerDynamic: - drawColor = rgbaColor(grey2) + drawColor = d2util.Color(grey2) case *Label: - drawColor = rgbaColor(green) + drawColor = d2util.Color(green) case *Button: - drawColor = rgbaColor(yellow) + drawColor = d2util.Color(yellow) } target.DrawLine(entry.width, 0, drawColor) @@ -487,7 +487,7 @@ func (l *Layout) createButton(renderer d2interface.Renderer, text string, return nil, loadErr } - textColor := rgbaColor(grey) + textColor := d2util.Color(grey) textWidth, textHeight := font.GetTextMetrics(text) textX := half(buttonWidth) - half(textWidth) textY := half(buttonHeight) - half(textHeight) + config.textOffset diff --git a/d2core/d2term/terminal.go b/d2core/d2term/terminal.go index f83a5089..c7d4eea1 100644 --- a/d2core/d2term/terminal.go +++ b/d2core/d2term/terminal.go @@ -14,6 +14,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) const ( @@ -491,39 +492,14 @@ func parseCommand(command string) []string { return params } -func rgbaColor(rgba uint32) color.RGBA { - result := color.RGBA{} - a, b, g, r := 0, 1, 2, 3 - byteWidth := 8 - byteMask := 0xff - - for idx := 0; idx < 4; idx++ { - shift := idx * byteWidth - component := uint8(rgba>>shift) & uint8(byteMask) - - switch idx { - case a: - result.A = component - case b: - result.B = component - case g: - result.G = component - case r: - result.R = component - } - } - - return result -} - func createTerminal() (*terminal, error) { terminal := &terminal{ lineCount: termRowCount, - bgColor: rgbaColor(darkGrey), - fgColor: rgbaColor(lightGrey), - infoColor: rgbaColor(lightBlue), - warningColor: rgbaColor(yellow), - errorColor: rgbaColor(red), + bgColor: d2util.Color(darkGrey), + fgColor: d2util.Color(lightGrey), + infoColor: d2util.Color(lightBlue), + warningColor: d2util.Color(yellow), + errorColor: d2util.Color(red), actions: make(map[string]termActionEntry), } From 25f405838a24c259ae3dc4bd27233c48e8f6b8f9 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 13:45:06 +0100 Subject: [PATCH 03/70] terminal printing --- d2core/d2term/terminal.go | 22 ++++++---------------- d2core/d2ui/button.go | 7 ++----- d2game/d2player/quest_log.go | 4 ++-- 3 files changed, 10 insertions(+), 23 deletions(-) diff --git a/d2core/d2term/terminal.go b/d2core/d2term/terminal.go index c7d4eea1..84477f7c 100644 --- a/d2core/d2term/terminal.go +++ b/d2core/d2term/terminal.go @@ -348,25 +348,15 @@ func parseActionParams(actionType reflect.Type, actionParams []string) ([]reflec } func (t *terminal) OutputRaw(text string, category d2enum.TermCategory) { - var line string + lines := d2util.SplitIntoLinesWithMaxWidth(text, termColCountMax) - for _, word := range strings.Split(text, " ") { - if len(line) > 0 { - line += " " - } + for _, line := range lines { + // removes color token (this token ends with [0m ) + l := strings.Split(line, "[0m ") + line = l[len(l)-1] - lineLength := len(line) - wordLength := len(word) - - if lineLength+wordLength >= termColCountMax { - t.outputHistory = append(t.outputHistory, termHistoryEntry{line, category}) - line = word - } else { - line += word - } + t.outputHistory = append(t.outputHistory, termHistoryEntry{line, category}) } - - t.outputHistory = append(t.outputHistory, termHistoryEntry{line, category}) } func (t *terminal) Outputf(format string, params ...interface{}) { diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index 92cd6ee2..cdaf9c24 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -1002,11 +1002,8 @@ func (v *Button) Render(target d2interface.Surface) { if v.toggled { target.Render(v.toggledSurface) - } else { - // it allows to use SetEnabled(false) for non-image budons - if v.buttonLayout.HasImage { - target.Render(v.disabledSurface) - } + } else if v.buttonLayout.HasImage { // it allows to use SetEnabled(false) for non-image budons + target.Render(v.disabledSurface) } case v.toggled && v.pressed: target.Render(v.pressedToggledSurface) diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index 529edb2d..e064eb11 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -285,6 +285,7 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { var icon *d2ui.Sprite for n := 0; n < questsInAct; n++ { + cw := n x, y := s.getPositionForSocket(n) socket, err := s.uiManager.NewSprite(d2resource.QuestLogSocket, d2resource.PaletteSky) @@ -297,8 +298,7 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { button := s.uiManager.NewButton(d2ui.ButtonTypeBlankQuestBtn, "") button.SetPosition(x+questOffsetX, y+questOffsetY) - cw := n - button.SetEnabled(!(s.questStatus[s.cordsToQuestID(act, cw)] == d2enum.QuestStatusNotStarted)) + button.SetEnabled(s.questStatus[s.cordsToQuestID(act, cw)] != d2enum.QuestStatusNotStarted) buttons = append(buttons, button) icon, err = s.makeQuestIconForAct(act, n) From 208f2feed5b10ee4464c614d5320558938d9b022 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 16:46:33 +0100 Subject: [PATCH 04/70] fixed saving key change bug --- d2game/d2player/key_binding_menu.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/d2game/d2player/key_binding_menu.go b/d2game/d2player/key_binding_menu.go index fa0da7b7..b5c7dd61 100644 --- a/d2game/d2player/key_binding_menu.go +++ b/d2game/d2player/key_binding_menu.go @@ -666,7 +666,7 @@ func (menu *KeyBindingMenu) onDefaultClicked() error { func (menu *KeyBindingMenu) onAcceptClicked() error { for gameEvent, change := range menu.changesToBeSaved { menu.keyMap.SetPrimaryBinding(gameEvent, change.primary) - menu.keyMap.SetSecondaryBinding(gameEvent, change.primary) + menu.keyMap.SetSecondaryBinding(gameEvent, change.secondary) } menu.changesToBeSaved = make(map[d2enum.GameEvent]*bindingChange) From 8186ecd55a0f41058ff72b0d203f5eb4d0431179 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 18:29:54 +0100 Subject: [PATCH 05/70] help overlay text --- d2core/d2ui/label.go | 5 +++ d2game/d2player/game_controls.go | 1 + d2game/d2player/help_overlay.go | 64 +++++++++++++++++--------------- 3 files changed, 41 insertions(+), 29 deletions(-) diff --git a/d2core/d2ui/label.go b/d2core/d2ui/label.go index 1004a21c..9c5c53dd 100644 --- a/d2core/d2ui/label.go +++ b/d2core/d2ui/label.go @@ -108,6 +108,11 @@ func (v *Label) SetText(newText string) { v.text = v.processColorTokens(newText) } +// GetText returns label text +func (v *Label) GetText() string { + return v.text +} + // SetBackgroundColor sets the background highlight color func (v *Label) SetBackgroundColor(c color.Color) { v.backgroundColor = c diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index c17f5281..2335cc52 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -659,6 +659,7 @@ func (g *GameControls) onCloseQuestLog() { func (g *GameControls) toggleHelpOverlay() { if !g.inventory.IsOpen() && !g.skilltree.IsOpen() && !g.heroStatsPanel.IsOpen() && !g.questLog.IsOpen() { + g.HelpOverlay.updateKeyMap(g.keyMap) g.hud.miniPanel.openDisabled() g.HelpOverlay.Toggle() g.updateLayout() diff --git a/d2game/d2player/help_overlay.go b/d2game/d2player/help_overlay.go index 54ab30b6..f9106bf2 100644 --- a/d2game/d2player/help_overlay.go +++ b/d2game/d2player/help_overlay.go @@ -155,6 +155,8 @@ const ( beltDotY = 568 ) +const bullets = 8 + // NewHelpOverlay creates a new HelpOverlay instance func NewHelpOverlay( asset *d2asset.AssetManager, @@ -182,6 +184,7 @@ type HelpOverlay struct { frames []*d2ui.Sprite text []*d2ui.Label lines []line + bullets [bullets]*d2ui.Label uiManager *d2ui.UIManager closeButton *d2ui.Button keyMap *KeyMap @@ -332,7 +335,7 @@ func (h *HelpOverlay) setupTitleAndButton() { h.text = append(h.text, newLabel) } -func (h *HelpOverlay) setupBulletedList() { +func (h *HelpOverlay) updateBulletText() { // Bullets // the hotkeys displayed here should be pulled from a mapping of input events to game events // https://github.com/OpenDiablo2/OpenDiablo2/issues/793 @@ -378,17 +381,35 @@ func (h *HelpOverlay) setupBulletedList() { )}, } - for idx := range callouts { + for i := 0; i < bullets; i++ { + h.bullets[i].SetText(callouts[i].text) + } +} + +func (h *HelpOverlay) setupBulletedList() { + for idx := 0; idx < bullets; idx++ { listItemOffsetY := idx * listItemVerticalOffset - h.createBullet(callout{ - LabelText: callouts[idx].text, - LabelX: listRootX, - LabelY: listRootY + listItemOffsetY, - DotX: listBulletX, - DotY: listBulletRootY + listItemOffsetY, - }) + label := h.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteSky) + label.SetPosition(listRootX, listRootY+listItemOffsetY) + h.bullets[idx] = label + h.panelGroup.AddWidget(h.bullets[idx]) + + newDot, err := h.uiManager.NewSprite(d2resource.HelpYellowBullet, d2resource.PaletteSky) + if err != nil { + h.Error(err.Error()) + } + + err = newDot.SetCurrentFrame(0) + if err != nil { + h.Error(err.Error()) + } + + newDot.SetPosition(listBulletX, listBulletRootY+listItemOffsetY+bulletOffsetY) + + h.frames = append(h.frames, newDot) } + h.updateBulletText() } // nolint:funlen // can't reduce @@ -553,26 +574,6 @@ type callout struct { DotY int } -func (h *HelpOverlay) createBullet(c callout) { - newLabel := h.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteSky) - newLabel.SetText(c.LabelText) - newLabel.SetPosition(c.LabelX, c.LabelY) - h.text = append(h.text, newLabel) - - newDot, err := h.uiManager.NewSprite(d2resource.HelpYellowBullet, d2resource.PaletteSky) - if err != nil { - h.Error(err.Error()) - } - - err = newDot.SetCurrentFrame(0) - if err != nil { - h.Error(err.Error()) - } - - newDot.SetPosition(c.DotX, c.DotY+bulletOffsetY) - h.frames = append(h.frames, newDot) -} - func (h *HelpOverlay) createLabel(c callout) { newLabel := h.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteSky) newLabel.SetText(c.LabelText) @@ -631,3 +632,8 @@ func (h *HelpOverlay) Render(target d2interface.Surface) { target.Pop() } } + +func (h *HelpOverlay) updateKeyMap(km *KeyMap) { + h.keyMap = km + h.updateBulletText() +} From 4aa3c9420a72f676e38c778537132cd2fba83565 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 18:32:56 +0100 Subject: [PATCH 06/70] removed unused issue comments --- d2game/d2player/help_overlay.go | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/d2game/d2player/help_overlay.go b/d2game/d2player/help_overlay.go index f9106bf2..07af8aff 100644 --- a/d2game/d2player/help_overlay.go +++ b/d2game/d2player/help_overlay.go @@ -337,9 +337,6 @@ func (h *HelpOverlay) setupTitleAndButton() { func (h *HelpOverlay) updateBulletText() { // Bullets - // the hotkeys displayed here should be pulled from a mapping of input events to game events - // https://github.com/OpenDiablo2/OpenDiablo2/issues/793 - // https://github.com/OpenDiablo2/OpenDiablo2/issues/794 callouts := []struct{ text string }{ // "Ctrl" should be hotkey // "Hold Down <%s> to Run" {text: fmt.Sprintf( @@ -430,7 +427,7 @@ func (h *HelpOverlay) setupLabelsWithLines() { DotY: newSkillDotY, }) - // Some of the help fonts require mulktiple lines. + // Some of the help fonts require multiple lines. h.createLabel(callout{ LabelText: h.asset.TranslateString("StrHelp10"), // "Left Mouse-" LabelX: leftMouseLabelX, From 366df65c921f69ed799527853ce46a5acae628db Mon Sep 17 00:00:00 2001 From: Hajime Hoshi Date: Tue, 15 Dec 2020 23:50:33 +0900 Subject: [PATCH 07/70] Update Ebiten to v2.0.2 --- go.mod | 3 +-- go.sum | 8 ++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/go.mod b/go.mod index 85c8fc93..77b9967c 100644 --- a/go.mod +++ b/go.mod @@ -6,11 +6,10 @@ require ( github.com/JoshVarga/blast v0.0.0-20180421040937-681c804fb9f0 github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d // indirect - github.com/davecgh/go-spew v1.1.0 github.com/go-restruct/restruct v1.2.0-alpha github.com/google/uuid v1.1.2 github.com/gravestench/akara v0.0.0-20201014060234-a64208a7fd3c - github.com/hajimehoshi/ebiten/v2 v2.0.0 + github.com/hajimehoshi/ebiten/v2 v2.0.2 github.com/pkg/errors v0.9.1 // indirect github.com/pkg/profile v1.5.0 github.com/robertkrimen/otto v0.0.0-20200922221731-ef014fd054ac diff --git a/go.sum b/go.sum index 45038abc..22724eaa 100644 --- a/go.sum +++ b/go.sum @@ -20,13 +20,13 @@ github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+ github.com/gravestench/akara v0.0.0-20201014060234-a64208a7fd3c h1:WopE590cKxkcKXcOee4gPXHqtzwbarLClCaWNCdLqgI= github.com/gravestench/akara v0.0.0-20201014060234-a64208a7fd3c/go.mod h1:fTeda1SogMg5Lkd4lXMEd/Pk/a5/gQuLGaAI2rn1PBQ= github.com/hajimehoshi/bitmapfont/v2 v2.1.0/go.mod h1:2BnYrkTQGThpr/CY6LorYtt/zEPNzvE/ND69CRTaHMs= -github.com/hajimehoshi/ebiten/v2 v2.0.0 h1:G8mhkKFtnDPPZ/ChaGWx4Bm0NusYEcafGCJ8QLxEaYs= -github.com/hajimehoshi/ebiten/v2 v2.0.0/go.mod h1:hpZZQ/kk8DZqft7QsQ5hZLRQXHSZPdKnaa0tcJ3CZFE= +github.com/hajimehoshi/ebiten/v2 v2.0.2 h1:t8HXO9hJfKlS9tNhht8Ov6xecag0gRl7AkfKgC9hcLE= +github.com/hajimehoshi/ebiten/v2 v2.0.2/go.mod h1:AbHP/SS226aFTex/izULVwW0D2AuGyqC4AVwilmRjOg= github.com/hajimehoshi/file2byteslice v0.0.0-20200812174855-0e5e8a80490e/go.mod h1:CqqAHp7Dk/AqQiwuhV1yT2334qbA/tFWQW0MD2dGqUE= github.com/hajimehoshi/go-mp3 v0.3.1/go.mod h1:qMJj/CSDxx6CGHiZeCgbiq2DSUkbK0UbtXShQcnfyMM= github.com/hajimehoshi/oto v0.6.1/go.mod h1:0QXGEkbuJRohbJaxr7ZQSxnju7hEhseiPx2hrh6raOI= -github.com/hajimehoshi/oto v0.6.6 h1:HYSZ8cYZqOL4iHugvbcfhNN2smiSOsBMaoSBi4nnWcw= -github.com/hajimehoshi/oto v0.6.6/go.mod h1:0QXGEkbuJRohbJaxr7ZQSxnju7hEhseiPx2hrh6raOI= +github.com/hajimehoshi/oto v0.6.8 h1:yRb3EJQ4lAkBgZYheqmdH6Lr77RV9nSWFsK/jwWdTNY= +github.com/hajimehoshi/oto v0.6.8/go.mod h1:0QXGEkbuJRohbJaxr7ZQSxnju7hEhseiPx2hrh6raOI= github.com/jakecoffman/cp v1.0.0/go.mod h1:JjY/Fp6d8E1CHnu74gWNnU0+b9VzEdUVPoJxg2PsTQg= github.com/jfreymuth/oggvorbis v1.0.1/go.mod h1:NqS+K+UXKje0FUYUPosyQ+XTVvjmVjps1aEZH1sumIk= github.com/jfreymuth/vorbis v1.0.0/go.mod h1:8zy3lUAm9K/rJJk223RKy6vjCZTWC61NA2QD06bfOE0= From 5eeb07e1c1cc8514e38cb2a04d7abda3d7b2c877 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 08:56:09 +0100 Subject: [PATCH 08/70] changed terminal color separator & changed logLevelNone to logLevelDefault in app.go --- d2app/app.go | 5 +---- d2core/d2term/terminal.go | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/d2app/app.go b/d2app/app.go index 99110921..f4ae128c 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -124,7 +124,7 @@ func Create(gitBranch, gitCommit string) *App { app.Logger = d2util.NewLogger() app.Logger.SetPrefix(appLoggerPrefix) - app.Logger.SetLevel(d2util.LogLevelNone) + app.Logger.SetLevel(d2util.LogLevelDefault) return app } @@ -320,9 +320,6 @@ func (a *App) Run() error { } logLevel := *a.Options.LogLevel - if logLevel == d2util.LogLevelUnspecified { - logLevel = a.config.LogLevel - } a.asset.SetLogLevel(logLevel) diff --git a/d2core/d2term/terminal.go b/d2core/d2term/terminal.go index 84477f7c..be345220 100644 --- a/d2core/d2term/terminal.go +++ b/d2core/d2term/terminal.go @@ -352,7 +352,7 @@ func (t *terminal) OutputRaw(text string, category d2enum.TermCategory) { for _, line := range lines { // removes color token (this token ends with [0m ) - l := strings.Split(line, "[0m ") + l := strings.Split(line, "\033[0m") line = l[len(l)-1] t.outputHistory = append(t.outputHistory, termHistoryEntry{line, category}) From 921d8d5bd891e5df5fa941e4f744512f32916a90 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 11:41:03 +0100 Subject: [PATCH 09/70] status and screens update --- README.md | 5 ++++- docs/game_panels.png | Bin 0 -> 1716003 bytes 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 docs/game_panels.png diff --git a/README.md b/README.md index 1b143564..7eaf18ae 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,8 @@ ALL OTHER TRADEMARKS ARE THE PROPERTY OF THEIR RESPECTIVE OWNERS. ## Status -At the moment (october 2020) the game starts, you can select any character and run around Act1 town. +At the moment (december 2020) the game starts, you can select any character and run around Act1 town. +You can also open any of of the game panel. Much work has been made in the background, but a lot of work still has to be done for the game to be playable. @@ -128,6 +129,8 @@ which will be updated over time with new requirements. ![Inventory Window](docs/Inventory.png) +![Game Panels](docs/game_panels.png) + ## Additional Credits - Diablo2 Logo diff --git a/docs/game_panels.png b/docs/game_panels.png new file mode 100644 index 0000000000000000000000000000000000000000..15bf933d4fd995166244836b35eed3fd8d9a4b97 GIT binary patch literal 1716003 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 z zGgjaf$nDc`2TJ6O3)z$nzRFNfVQ{5YOwWVpzh^hAw~nGY|RpQ zgJq9OI4ce`I&kaXQF76nWDwO`lOo45hr}=V7M{Klp?w^Vl@2#;Vf!=M`)6zttnH?r z@5UiXW3dC1C8t z5&Y;Q5oY;kr0P}xpet<%=3e7FdB)Hj1KA^J1Rt%|)qv<4FNcR{*0OQuc<1#lx&KC? zVN<{-0vp1?Yu~jSXFaIb$++?qTLY&_OUL+F)sGFk4ZZd?Q|CuLu<;6tQXbm5;3$`ot0i|0%O(ntf~ zdfK$%m>w^A^(c%TIeRu*BduGwgqiN z?GV&>OxdJUbxq6g*1*!aRy>79zl{z9hPj`Rq+yfi1qW~Y`3pqH9hO!D-C3*uO=G{>|$ zZqrx0h@dA5m_eZxgb2^N&R*XRv^+NiLqm7d_3vkD`cvol&n5FQo zyeqYhJj1JM{j-pHw{^2AtHZlIfH46C`*#7hhh7U=K!&+*D)%!u5Yk@0hR7FBn-a40 zX#;eI1<^xAs3Jm$OKF?DX-NwqK0qcn!b3~;0&{OyGfWd`1FpH`-!WRj(JOy)UP=4% z=()V*asAcwN*V`9dnVFexnaS}mSME?@p(Ut=!2z0o8F=&JB6& z<$pl1!guXCB~sOHImB(DH9FF*xd`4g6U6Y>>@bC|I}Ic2d#oBOETrt zDqHF*oenGEE!6ZniovCAh?Q& z&Z)nn#2`Ml_O1~F5^&j6y2x)q4L@r3ViZZy*=ZM~z#m`E34bn1MF1??_Fp_N*S-1d zyn`b`lMsJPl>dy8hMhG1eFi8^9q=7F{#}F%Q3+GUrf(FyrC)x9Pec-+Mgn}DqchY8 zT;|3*X=cGWeE12WE=u|Q!T03BL*3eG@r@0R(@qLN82#OcPT&S|wOJMXYEbra9(rL1drlOlhagA%-MRDKP7*>);TbfMeQg1hLg>2>wVA8NE!fySz5k3 z!H|?3xV@^#CBl+kyETeZkDqlg_>CXpHX|&u?@#>6E$4! z*gr^OUQ#e8YA61UV+8RN5F{k#yVCt)GBjLt_*955KVw|mGTnm&r5b+F>#%{pe_set=G*oFNm(5TuY=i&o<#mV#yX{|$z(p* z^S`^;bf;HC);=i0^qBBLF6J#Fpg(wbY1+fLy(8KAmgH->)B^*rHy}M3^*|(pcuA_7 zb=uIEOI*D5{>L|@0RoF^E|n%73aKizv$-VdbKeCf1Cjf-Jlwtx>ZCgEgcX*2sbT(d z$MHlGycM{G_E?It*~TP)BlE37wdCUtLo1Udte=)L{0aX|fru|1?)HK7x30Lth**|x z>IMazImPh1e}6-Lq#Jw5h_0!wm~CLL9yV^?3-RXeyYzzdU%Q_2@z;Aklj$0*c>~BA7ET)g>zps{=Jh z;m3=kir@77m|<81I^?Z=A55+CzoWl%0N05aqBcn=p?vuky9m!`;KRHhOn_(333X)&f z-9Iu;;?)0G^Ka{mMGKu&7!QzaxT4Ho{5?9)AjGZS@r~1K?BL-ho->xlV1r3pUm2ho zeqfwUiIPI1YyGY%ej_MEg;vj9)*KsTXP*aGwJ0Ao0Kyitx~B=nqz%ska@lYOx4EPu zW}k+Zdul*?Et2_Y$^Yp-qN>1xooesQX%70~ zvizv(#WJT)8FEt!MeZikCvD`4JYW2ZbOHpH`Se}|!y8S?MM9y~3fC{?cIfLemEiAh zKeGa_8O&WY>5$x0@{{=QPi6KQHd|z$_(&;s$0ypSRwaLO9mq5eBl;-QW;pGtqO9;`{bq*K#LRW7 zWTxr#Hu{f8m^zk?Q9pLp!=Ke|?ZQe=WbW}MI;4JtAVB*>Y}boVf%8MDml(KlIR_HZ$H?-qsxZg; zP!pK6wuK=eG@sBhtW$Eocs299ZRm=<__V`MKc_DJo^n`O~w3a;&iD}+FJgoZb zP*qUus8>a%aDlG6p+#;FqWgukp#kL}YGnq#r{YXApkOLJziRhFgBN@nWvn2G^xhBNs0>XS`n| zt*sF@8QTx{myJfPHKUxlM(_*X;BQ%tx%Sp#aw>hSbir~gq^-&;e|3Vchd-GCwuFpA zxXj&mKo1GkjLgecDpk{J=F+fty_cIPnQ@pqD6gXyDz=QjWG=4fA;s)k{_5}&XQ>BI zkY3ftUUtt8je?ME#I&v){wshUG957N;g=||rtj@arnmG+S^6 zWc?wh(u8_g4*huer9N?rQ_%MCU4d$3xhdvh;FdqFe}bhC{qz10a}6v@TV4b_cABuP zCtew?*Az$mO+69X@2CpHR*J=Q?bJmW^`V9jT+&4qA4}h-bT2GNR+6ix=z|mfuG}wQ z_<3@}MAAD+6}v-z$Ppibe^7&ME`J7MjT+BmiKH!*58J!!TDXpq(6)SGBWZ%3bmhYA zT`$v%y-tM1g->7{N=MaHC36Q|T%{I5RK(cQmb7y3pU8;SHWr+m)UgQ3;l6wC7lk4) zRfJ!0MO$g1CC-keKg9Xbm>?#MiX_YA%cWf+qql@f*= zG7vuoG%DKlUOAa}TS^+~NZUNxkGrdWn3P~Eh(nf-3C5)((O3FdV48TP?3x{8;O6HXR+owy4?IjA0dN*fq~d!@aV22f|Qm7&D!>xYzrMC z$-6?2`=sOK%!S9?9R5|Z%HwvMHh-1=VMFGYyLTgU<#@pa4hVgLISLZH^G+X_#rtq8 zaKwlH?sfp>bvEj6f9UZ32FXJ3Q^w;Wgz5c)?x?VpO+{pGDZZ?4?|shV{kV?CaCQb3 zx!?I7u~F(I0@Yk!_or}&dDbB95ilT%MxafaJ--?p)-FC@kUaMC`^%d$b`&13m&wXX z8R{X|DZ?@MYs&GjtMDmdqM#7_NYvsh$IR3N_ORF4$1p(0D$=dfTWltF%$HFR39{!K z8a(lLt&csymAs0E-y@(}{58XO9kewCLDG<5O| zMu2;0zHIJTE8=vrU2A?xW_vtG5^xRu+j#zn6&-KXdBFf%SzNa{pod5+tQyiH|kyS|t5WEPih8i06vpYr6r!TO$raJt$qMd29diBtJH*DN6>&-<|rjD3g2-z3o>4b!v$m ziF%WRV1>yryLS`3OII|0v`5B+p2cIpenxyLu`^~G)SKPQmM$8&)V9Tdus{pe8k#_> zhAG0bw_*Wmr}(lsSwuB z+Mn4Nt~}L8Zf%r4;s&E_$hMeE8E+v`NKkMX% zr%O5QF3+&)9Z8}nfjQ7ClG3i3iYCZvVY|NK)gkK8Yin4kL9~&Ydygt(d@5dV>}R`~ z+~`>uHDjz4@8xa!-Fl_rOrXQ;j8B~xf$Xur=z+tm5DY0$_F08+u4E=^y2}SMM$hKu zAd8~ZPx+BR(Kto}14Eo%st!87p@w0aK`85cBPVy;!rq&Dec&GlZv#JgEF!7!*%~^c z@mWCkQGL2n;5X+v>0Z2pxu&+|U1Ze*hb2jE`*l1%mVC$EQKwb5s-|-4vgC|DmcLxS zHoWtCC0JvRylsrFR50N;(k}~SSS}Nc_lxDf?BSox9hnnOLhsFvPi7^vfb(Q`Nv4lb zZdSxhNp%QN>_$XH(BwXMfM&0wr900SIc-tJq5P5&#lS^SyK1hv`30aoge*Y{9Djpy_+n}f4GKNE)D;OJ71&yx_|MN8xg|5wD_O*gfVjagd_(JOmCI8p0O6+ zc|NJA0=xmlgtVala#JgM@*i8cxmB_8Fh+&?95lm$7p+m4k{1k)fk&`O;eGQz+s4R0 z4LdqI5+@Y;d~^O6^h$%GC@~mK9xPuxwS99jV$$BC3He8rb4jeK!t*Irr8Y*JgC5r0 z82I*V7tIxX7M3Q17O1!DG7LUaV^WD?UET8LTOaBs2J&>LrgVe;A*mI9!sa?|sWOI} zQSNSbzlNhtf{PyS>g0zLO_Y3rJ1b>yoLPTRrP|7I?YBwptt1`eBX1BMDz6s*?R7vK zo?@Vk+Wg)AiJU(w{C)bRI!^9UyX6*R7#k@IOZL#YW%0~!UdhJb4_};v?b3%7ah(M( z6;tQ9MpU&NvPBM~SL&?Ip?q|jn`Yj2F+=0Xb4(x#fHKXfSV&_8Z)tsN{Aau9GTx-LAQoBd2-$lVKJwD;Nz&|q zlrO9&(dF0MqnAJZE1k@SJI;-M_ODwz*pa9UUUR5yIM+mehOjkAD5a zHG)gG&ZmGEi#Vu-4kQs%r4MFzahg0W#IhB3|hpF?Wo?v+Bxsy03SC2IPvT!K3bDyDW>d zWi{U5B-fNONqSi!uFtZaq|n%P&h}sX)X6Vq>eN+f4zC;KI|!s>mGZOUH93x*{S?+Z z3K^|K28)YOxKFOgVEGBI590Au1h-x;HkSQVTz4PN3oJuwYf;-~cM*P=d;VSLZ#orwzd_R;0ND-g{tUE%e$7~=R;?;Umk<7vJe-n|3NP1+ zC9Ve(V17il_j{h5PeSg;|s97=cnq{QrxhU-I&Qo z%{qrt3;A>0B+Xkwj41$QsQ~~sNK$vIa2W?2Ih$`??M3DW`o&Kj%)Q^Qd$!4fqfJ79 z38jH1vOMeE_?|Q+oqt-eEPrrt@IzROb~%6P0O@BRKV{bGhZsr%LhSp3OwB(qSI*&e z03}t7Qg$}k>fe`7{fp-B-P0nLwEWJtpIH~DTjv`*sStmq(S)9S(h}OaadRR1&pUIu zB{0G`FvFP>;*eAO7yK=0HIffx2ckJ$@20q=dwC^YChAIjCC%IRTayA!LyHj1X8X$p ztYQ{?0qNR~VJ4M@@|h@5l#xMrUh!0!q`o+mh)dW>;b#PblVvC!;E+%~$CsIL5Gr!E z^}hhq;}A`G9iI*A*Y!<=ajY%`2A>9H7|v$T#ofg<(^(dI^9hX_Q)8X@dkA(PHa==+6s$L zh)6|?5y4BpVZ9`>T-|zXd>*VuB4C=v zCNL~Mof|y5G_pPXy(V~@#2wrWO5xU}?oH(!$Y2Nr1pY$(CmENZ1>9OeYt{i)d3Yub zB4#Qh7RF#tSbKcgA#&bt_JOgr1^scA-a>jN?7A|_-gj<#Mk`zSCBbU+`HN%YChN*Y zXMOne`tiQ@0a=rGnhYCtZtn_JdB<&Zs>89KL8BAOCY$Jkj2;k>Igq(!` za&fj-{&W{BnR8xVS}dB~o9OV4JzNh1R{Fzv7${BmE~!8p`46Rhcu2Q}Efoe&c}^j- z1b#z-xi_JFMGt(`faC(;5&~4(z9!^moSCs%zfC@0OA%Ufz@g%LAp(Wd8(9^29$Qt-*^5CZj(lJ-g7}X?^n1@)zN@Z+ zQTAMojI+Mf0srPwo4qesE{qA71yj=iTv*IV8cIy+)$dxbx0mi|H-qUO(S>zF(@5R9%9cMS1K+PC6{&GS<<&)klAeA*j*oHuz}>V;K9h?4O%m3 zYVm7+EJxY_d%TOEbvnOFx@+ZAv3*HnVB}`neZ(+Y(N0*_Wrw-Uk6S_1{9EV!l@~4q z-Ohnbcs*Q4xobpjIEUk1qy_J(avCXDe1jv$_-7%o!ZrcVi0sDW zai@h|!AwQPgwPcwpSt4AZ90qtmc)|`%oeXS6(t!@oGKDjQ($`jY}t-;FS^u}_;~TZ z2}=dLEt(}BLw{#XdRB(9O=)mFu03ur44tK_!{nY=-Sp!?bNXd(QWfbEm(RV ze%B(5ea$nf!E*27AA{K6&Rq95gLwZ2_;R$8*3X6oJV=NYzoz|5I*N$FV${?Gb8*)@ic*`H88Hjd^2;i`bDLW7{{wM* zNIz;PUb!D_>Rjdksee>F2b6k3R33iIg=7OTI}ov3f^E zfW*-SfIT+?_I~^)u5JO9Lh5!p{8aWOCPW1N>&k%6?czXf2c4wn36@wtxk?V|gx%bL ze}>^xZBu${J^zP-#7r&RNoOz>8lDtmWGSWC^Uj?^0$FsWB~tnpb9~})dLM;geTiI{ zpSRFey}SfSm{dkQP2hTdg5dJ}gtZ!?JNu-QFmRc`ZvUhv< z{b$5aaL!4%hwpVd+4J)|K*^kaR^EgBp4np^&^gjQ`Hxb|;WHafk+8;#e(ZrmTAJF9 zIg9339tVQvuS-N7MT^8GvOa+xk~iFY{yFBZiqQvn(*eEJb`Lz@x1(*;Vm@D=FkL-X zD2Yk2G#hyP9_d6W2^oT+|O4+U)@R+1;%R{hE{8Yd#| zv=!BzA8h{co>rbnNLCRVcH4FtQ0Z^Du6bx}?T~L+E|!6PiM5Ov$y)ma99PPVUDwySE0?9mEKe?T z+Dmdc+)Ucx;Cdcr{ z>**XiM)D@w#VJ~1Hc!)J?Anx8eSwZvW%9B3vO3Y+rL(x!aQ)kO>ezK9`xa-5Ud7pS zM_gTB0&;P;X0e6!O+#k$Y*x_>-_jU%o?yemU=Q?f)EAeN+O^u#>VMODLCgN)ZpUR% zK*_E_&zVl2lkoKp$hm9IjvbnDYpQ`tN&CjSz)8^^weVgx%_Fd_ijG2)V)ry5D=x16 zcczLWNfMBzR2K((ERI}9V?bcrd)2;fhqecL}Fk7B`&_awO67Bg`0Gmom7;i zRiz%yQfY*Mv&MqKSwntQ>De8JDIZ=yIL|y6E;h zd0>u6O-&8hQ*o&92drCIBVrPhxw7`h&a$-;I4YkT_D%IU^6EoYrTsK;cyjN84pyZS zy@RY8e4o!tif#1A-wOf^^95MDX7SVpDhPr4?>qpgA!dcb#8I*O(T`^hB-(Cn(waPw z{?hj+QZ}j8&CNz%86K6n(5)f;?#eoWM3yn%)%CrrNCnl+*TpYkXXi&CutFlKrJ_;l zn7@}0L$I-8$G2I)`mNyhy;^)9KpH>btv#p(!5cf|xa0PQDB2=<+i!5Om05+dK4G=L zOk8DuIDNR50pu)exBF?Qp`X{TLuJ<8gCn%0Zz$>9T!5K4*&VOz4=MtK%2g)A#HvU+ z97+v={tOm&l=>f+J^Hf}F6CU#rf`FNK=uWz|fR~y|w z-8cZ|#OTX}fy2DJ*^A&Udi&(=cC)IwmWCx4iJa#-n%MN1tgNiI5GCZI00tdGHM zdSA+jYS8X;BkzyLkSd9lzG8Ee#>cjUa_A3R$j=`#Ja5pS?bthNcL6;)1LZEc z`E);9L&5y6=3&{ze>imL9Ui}^V@pn@rKA=Ab~XvVjG?-iY}V5G5>MGm?CuiX!am3l z+Ek#Z%KjoF&Fh_hWMBEW1#{K@&vs%Lc3IRBh6O(;)NeAwBByW{e6rP%U+lA zwA={;QEk8#IeUxcE>D~_C}(Sj^4oBfWOoL+*X3xY3OkHs;@4x*7*AW)M}Le(;q$9<&+qtL@$iL}aKEQL$tbzjG%aP^Oo`y;ecrUY@E-Jj>!%=e^nE6mf**wIn9q!4|F(0UxEC|av8lB33B zx6(~^nR>&VVW$14fLQ~ug9Q`)2`>0MTwG%AcEtRFbW_aA*%|v6Q~TYkkk|HGc1f^~ zDdA;Zd=n!i6*A}8ue3+RZL2Jo>0@2}zkkEcz7(nqJ? zAGHuD&D!6N=jD+PH`7y>-h7tHZ{LRd>HPgB`&=-*mlh=rSZ72x>*qQ{;MgF4Ke`k+ zNLnr250!h2G2y^Nj7cASt{nU)ANxbwT@sy_MCQbSMpQ^)f#;d(!4BX~Z8o^a0`~G&YXsIvvuYc?7 zcd0A^C*v%@zGLg5T}YCJqTPJf?Tol3k~#6e-}RafK7E>+8Wiul7MNC1QPF%l56YcY zBv}E(!E3jMK)&7F)%vj(&!*dfZ1o_Cwxt z>r__W>HH*uLsKlCigUXnjs zTU&iy)MnCQxKWMY7Nokkkz#9WtKSE?6OxZJ)degPlye#~%*5rzT<8`q0p-XDL&n`9M-A=iBo9f4 zjK`kqb-j+nZphO3(7AxGQ(o7!ZV>{gEo=eY5fPU|G=#d1->2WCzi{JvTuw*`?%;d| zD;Bp(wW;BS!1Jf7N8cXKFIu5OIMd_E6g#V$-B86A0F$ZkWQt&^c#?-fcz=>pc&@YXCpF9dWx zhI0n4UETAhbdIa*Uhm=K?Y#%;Dd5*T&3HISGCaq|^Ej*sKYOM?KC}i&7bU*Fm;y>G z+w($$dd6o2`be~J4KAEB=13rB$v*dC9O>ktv4 zH2^oc7DWM_=wXB^GmdCi}!!>4wTaP*1!A??*H=VXr|Bb^rFVB zS|0bdHTcQ<_i*^~8CuieYya(6@O!`ad-zY^`*T#)9FMwNd*|op{XFn_0)X#+_q)il z3GhhyHQA=-392ChbJ#GbX(dsme))JFb8 z$`8NhoiZd3*5w@n@^cx9ylLN3ZM%xN2lA>qJ}bJaykE7>lmeUdg0k>ipP6!C^S4s%a`>>|Hz*3T|7oeVhyC(B~4bh9NA?^U< ze7;(iUzwKFx{E&-i%H!;4y?9qleY7<=)Ldvx>T8Q`%`Ok!8>VQ;eF}f^*+?)Jv`R0 zcWReMw|B4Y<@3phlyf%q`Bm?(lc{kV!jfH_r^-MOX6qd6D&bRT=Br@mbWz%UrkKQ=uz{ zWI2CklXk6qzfSH50kP(c>Ai<^u1j>DsN*@#zVYv?=KOirAP{cOO207XD=8tRhm0PT zQlcz!w9O(pwR0A#vqKieLYHJ~0&Utu> zl7R56_b%wuZE&dMMGDs2YmU%;Z&)>>Ha@xT80TkziF8(+SIBG2(V-~1Y`zkGn}FCRcI2?n54QDz~btK89ZGG2~YpV>Bo`kQH&x<&1sCH5wAtmy>R+8wZ+;_+XUkUrd|E z$Mz5~?23p*1|Wmd(KEX2y#E!9w`d2#ClK;2o-btp)p|$6&u4iInE+s zsDjpEql-Q1K!+e@b8VPdAYLUtOd&A%@3Jg=8AUQici|JX4oMTaY>1PH(7K>xw8j`f z2Q-XflS*?DhcSuE8IoaCKYy0wJTHgjJUzq9;ccgVfaDLMk0w=+U#*< zGG5-_!Rt3~^kE$S;V18fy-WxBQ*Iw(Z+nEJ!#x}x>|uL6!rSls1DdAA4}W?WLWH>A zN(f|1^@;h4A}GwS+`Nq}|2IEC zrWKAq`X#Qt@*4i|-~Kzi`s%CL-Q8X2kdsgQG2GkR!O_tTl;bgUp5w3o`kj!(`ujhC zi{@lpmdLfn7r*!>#^Vw0e|oaAH&U`fPTo0GlQY!FVahRlo7lgE#GN<4f!)WCVRg|b z{v+A@AHMf}04+}VOw0^j}acQG1`@cqB}e$X)<9K(Bs-BO2G zkshc`h~@q#|J(QaWS6g8zlJw{^9~MA&oPn%%jiS@cjibxlY%ZU-BDLEb|hKj>jaZ2@v zs1IoqB?(W3o&Xle&!Q+$mgUO+o@yWcy}iBN|DSYc+QX=vvMj@4zvES&NHC=*#(n1$ zk1v%&XvdTck8eYzbjTqfRq6)LI-Ng-_@rlOe@@M1TvrV4qWzTXaP&+{kK*l#+sX~0 zv_96&1?fNWjZ6Lv=jRj+&FMNcZ`>b_Or^RwuhLrPA^O%iC+OB`sy$1(WT&fAGRL#C zvn9O>7(TmqJzjFtvglXy~jz-n@C&SOY$&K1M|IPR{_tdt7{5gKnb$z}D8* zO4+nu&^o1YuA*~OS(Zy^X{|LTlL@p|n4FypIpFLi*EoSnROQ~BP+M@w}1P$nB2RUoVzDa&+z2w89w^t6uY~- z_@BP>-=oMgymIGFSkvOk{rCD1%0x$Zz6zx?Y;SL)uIBi=@BalJKRLtCfAJ8rs_Jvq z5NWM(=Z!aDpix0DLKzM*lvIH4O!4ugOQiy$H$mQeH~{mihIPQ?@)FjDgkprE)>;7& zs7wpMqp2%Y)g065w7=f6$>Ff6Ye*q5n@v$y6)F~s#5#x8SWG5Uw5Ge_@57aPEdwIR zcE(U=7uW59;Q45+Lu-Tb%-hnm20}&ASj?xAttl&(U9tn;F#+OdgO zag(tenv<(&)92TDLizXcx=6jx`@UTN)pN1@{HnJ$AO!@32fXm`0uTvwU0=-7R{|a# z>Qo2_LbN7_$fHM1cqE^R(IF{b+=P!)V^8IJAMg^Q3&*j9Y6uVZ9bT$ogSA6rxQw=woZ-;A<(oz zPnymvIOowcErb?m5fH=1v`|_>dyldlL1!AHQHi`uPSzUJW&0KZtsz3$c^4~K3W26+ zF-6dOg6_lCbk}~ZH8LfkbU@2G=U`nx?pg|kISoUg{Enjkg@^{-7N)_mQX4YYf>!G`^i1LpVyRZ@SQ9SpYdzrKzAe0IaGCn`Mkn( zI_Z+}u>>z#!wZ4BZP0eHwrBGSv)Mc##ofaARH*z_bB{)V2=r7PiZ+l9FZdUPXV$ z^R-S-<>kC6rRq%S+e1d>nE12Lqd)yB`syZaOYKMTnIk@XY$9Xh^GoWvtJ=5j{dM|n zN{(Np4`0=<7p1Fo+D+(-wPi?;+H`HLD?8PW)S3Fl^aekOME$I2 zlm0KuOeE0Io5_Mr>rI{8;&+C4c3rutb^9XptE}Z%)&UFMIMxfP&EET^&=vfh6d%WW z?Yi}{?yR$^P8^q&`hTo%KMy_6dXMXm_ZvQLt+65c00gvpGXj-$B(}nkgLYY##oO3WX=va$z zoeruC+f>&LE-x=p*G-2&4rNt!11}V2v!D}K2~cs0$O$@`&N~}s1!sf)?>gRd&ITQQ zK7&*t$aYf)8*I~d`gC##w1t#NWU3L*%)}cwFMn>z~Kr%P-;f?ax7Lh3~!f14t=w_UVWC@ZmB3 z{>SfKIY^v-`1bz|B_*DG`VdXi;z#ek*AMjZlQSGYIm7)w`4b2saPyUr@$u;B2t}^3 zGcIxR>={m;J;RfeC$QGy=++UGQaHMH4ac88!F%uj0;X-3torYMa34Yl{Nq1;gfD#V z2;chJm+fTeI1LST1m3sR{*{!Ul`%N`%@Rg67iu>m3F zapqo9@-A`jwh*F6Q36=;jKp>E_QYs}s;c@J(S)EQ9^++FITYI`<$0vv6nC1x$Dc{{ zeF#;)PPoOMx}iF`hi+Y+{CT1{zFG?Lvd$CEk&Q$&ZgKYDR5>yKkms7dOJyLAk?>TP zwRQEj`QI%oX^G>wjqZ~Djp=nm$=V(?=9AOmm56QYkeN>m}3`(nU?6?f3D_n$@kI@!F zh(&wqIp7^GCRJY!&DRhbipO>2vGa%86F);a33yy|pvc5MMo(E&KcX zeS3trfVIdn4WaWTbg}my(|T1FDBD0_fxt;o9ETKGl`T!vgj^Nf9>;G1#1!8&;c_gF zwMb*fpCO77=sa#|>NWwdt0)Tm^k=_-_Z~lb_k&(fC<=|8of6fof@utHy?zTyDSY|O z-$tG(eC4-}@bt-3-225n+`ac9PM$skid~?P*e!u9%kf)Z`Wj&7Ky{A4{fB?Vy$8oj z@{qMdGrL%dHm5I z{n5&}e(=kWareVdF{^_N`SDNR?`4kC8pYNYUOqg;?#?!jj&1<}-oJYv)>?dU{}{M` zjJN;(zv9g=-NDVHLzw9l@E(8ghkpQL4DQ~&kB7&P@Pi+}htrc&%qFuXU5hA-(API# zdkI@xV>~)v=q6HI=&c&o*Ml;%ErU)|H#MfyY0o!x2cS6EDljX9(f^fKUcrqUH}K%W z16XTu(ec7tfBhruZ2t^5-uW-c${i?O;OlSP3YpjM+(uQ^c)-qx=q$&rYujjz#RvBvU~)OZyYGGgWF??9>gg2Tdz`WBuDRArGK=&E z(oN_V2alypYnX27ad}8`k0_;YY>Has&u}yy$sam=rcju%z8XKn(S0$+@jJP`N@d37 zr1UW!@Aj%2cYLjI+3LOT(S32;<)JcZe;c}~6hF)3^K+tpQF~H4Hp%vQ{~AK@@iwPW znY2I0({SCN{N$`kbL;!;sSY|V>}-B`xn0rz}wX{&EV|@-gg=w-d1{M$d1Iz ziFM=gc)ZegS~EkG0;SS?#rBq~Yy|-Nvyl)2mzS4lng&~2TX5b79kL_34YySsLx|2+ zp%w1jxrLp*1Kc?J9B$mWft{Tly#JGTVA>iF9vlZFbg_#}0c8f<{QMWN|I#5aeGGVq z|K)%Gixt^IGP>x-^_$=P8mzTAe)0r$UE}oh6d&IICp>$4jH6pO;XQEj=|ec@as1#I z_wPN#TYvS}E4NYJ`s;U)=NXtoM~@!i(W6JWd-pB?;NSh53pnR- zdNIY#qicBcOTU3nJ_+%$-}=k{18v*l>}&$-9F9*{lUOfKzJQbp2iI<4GOsZ|zg&4{ zBce^O$OYP5VqD~~&cU>4VdK5WtZq;ni^e*9^vPp9yO`o)78H&rPfsC*KwVWhyI6+% zQ^K?!A(BYgHm_SqDe&a!X@_=M4Lv~rznshgAyK+Z%#}nnUkIOz%UOu)tS>`=bx2%X zPS!-Y3ar}U98K$RdU}S-=^V2N}zs9TR&OV=pTIo0q?d=by@^@g4G-^6z3kq&9i)0c)0wgfV{ss|d;1TMeux z)}ZfGeW7Qm?lp>m8z3Zih>8jT>8LM|+XwfLuh`X!z{JI8~MA7fe> zK;_uk8bL~lYu8?e5E7Hg1l9Bc7f&DI;&KXWEk=1b{AOBpDBv8K)=*mGayo~4dWNTG zmvGMEax#aI5<)%c+gHt|Fl~c*HGD9nem_2W+8^lo8qV_^c{xHc8ux4P=;)|7A{f&- zd91_vKbj^;^l*Vc;|7^0X?j> zC~^gBESkv#4s+c7Ftl${HE4~&le2S_b&19ULIwxm);MFLS3sy7Qnt{dg+*AWjj@nY zpsGU>*-xLI;&M74G&GSu-x!P5Iy6opn^m~ze1NmAoYS*Q%;z<1V=${KSnr{;3?2(P zpX>0FwH8lK&mpD4OGhI}sqo6tO*rT9^yxD+jl|p;JUgFYI;*k0e-Ap#&=?D2EtJy8 zvI50;JABqTMgd@NZ!b7#wnyQHVQZngb49Ksyb=)JLU_@yJJMCT4jt=ELI@}sKse5e zZo6BaV|so_u2MOi_lM+9${`h(kP3eHV95Tknxf9|#xI>lp zdD=61aw@L>#`VT~+fciCIVt^)pB;D^>-L6C$B6eowO_=#XzEw$4XTeZDpUv?^Utl_KP`5$XpUi4F=P;`qv^H%!3(l`#ADvuI(HOIo|7TNr zc>Ea7drapwOxwV;HO|g1FrQaAJ->vtp&iZ*^b0{(8W%anMUEmDsG8;Zdu~ItQVKic z0IfdQ8DmyAI2|xVJMVFNxiI)Xd~~|>eOZ-qkfiagJ8 zbaVq%)8g>P8O~3i;`pO`c<}KpSUJX5-#9|16_8~iN_sZNbTYx|$*0MfDnu0DhBnZ6 zQ;6fT@rA2Q6#|lD7+J{6iH#UEhI|904BD|5hMrB$1+|fTw5UBP12)w`LWSz0cVYws z_a>*5?wEh*`*mL6RKlYbs^@_BA&xLJI;D&vseY0|w62aA`M`~GgbeAE`!H`iDP7ce zYS&eDQ5~tirx4nlf2b}x*g6P)*ET!_0B1lE%Biu)?4@ik7N@^X{B#Bpl^R!me?wD z?35WMGXcw#@>x|OD+;J=jJ=%e@pz0I zFYiGsi926<6HU|L-FM%`T?-84iPtWoA^c)u#7a^QP zCo?~N{4CjzAtHYMr(fJ(`A%z%@pz2wojvUA?e~0laCigOT3ow!4YSz{r>Cc=+Zm1@ zo#6DMhI1b8-TNzezaHVXx3>o=C3bgrd-;6h`gOd#zk|K~U6i8|J3Bjz_9%&QnIX%w z5Kk~VD9vUwcx2ew1C(}4w-Va61+>J@SfSc2adfzc)AMu8<_<6I-GmSVpProcZT6-? zTg`BKd5&4#;NioEeO<&qqtOU^mvfY5i5oYzu+_!uo>U!=W@BV-j#AChc1@i(0cm$O z3HsQ{`EcwFIzB<(A)-c^gmS9edj;B7_VXSi!RT+UKV=FK3aCvN+1{?+ zVk5m|$Oz5rxC#uxDb^u5AS6By@V3YMU%_Ru~> zeV9(COK5N*#7cj7-SJr{CaR0SpF)Zc^?e;;FRpV*r-;rI9MMR`&o*&8Qhnv+&{%Wy zeoCk1`xiF=#kXL&4n3qN@XxtHa_PJ|plk8=a*B1^bzmlbmLW>%$b6hQwQU>r!|`~D z_u^;bHg5vBN)d1C5>R1-b0M{Z^j-_K(&m^~$+$!7B4zaA{ff)sI#TNV#h;;fQgcCV zR7x%Kxu^_)N}k(eiqG9~C<;D4sd;}M;;7pp18vMl@eK&7_bMHdzNfbH{erJ)dWOqo z>MK9LXI+@J*=*LIQ_8Xo;nJdUrnaW+IYgW{;`KfxgXz7vE+W!tNoON|=6h2-mWz;L zt4@Iw-^BJP4%j4n9WPt!kdq}9FC74yHryQ3NfA-qRBJIC=yCzwno zeZG>Lw{Jr#g`>kg?Cigc8#iCay?gg?a&m%qe)9fGKD3zHZtQ>Yi+e%Wnl5geo}SNE z#{DXtmiFLZ-1}(N=I|W!x; z2Nn__DNhfus=zqsfc!aJzrqCBdV*xBS1>Vt}M{PYa*TYPQVcHh}Bq7gZ~87iaB!JT{i5+63j2{l ziqQLQ+v1hiZee?O4|n)Q3gjs~Ecn`)o+_-TAN;pX2v0IeE0J#;6v6%{J(AG<|%?#GG z$ny-&c~qC@5CSNQEX2;^^QJn-ic;|2!L@S;sUdZNTnlI=ptF!iK9K7V5mRaN3}Cxh_{4gyjaOEQ6vcP!`Wa3oCK^V;4^ zFJUwqp*AD9O5^nOv=5(>Wf}JNc3^UyNUwP{2_aC9$JlieH`)w`uR1vAF|R6k@A2B_ z7fvl_4NOy`t}58J1+rpEzDgvA%I_YUps48~eib&IwM@wKB?!>MpB+q>>6vXoFR9EPUT3_=PNTe~PSiLF9oUnl?) z^QMLO!0h}K5CX;SK^W(5%}FWoloa^Vmwpq^E@s#|KEspkF(#K6$g)LT zZJlNK;+MXH+4KVEC!YeZ9Rl!}+kn2lcH>5vYgmY42ddmzN|dxI5&w{E(OSbR0Vy-+ zEXWI5|Fn;B9X6I5T!zPn3oh%p(EwQRZF=&VlWaG9S1jgWkd6{V2B{JgTx*+6}ad1O&>i_bX)pOc`3MPQIq*g7=eCif7m9Bpi$t^E}l<&v0b^I(^*xfMll7f3$yb1L_c^ z4AQXw+rp9OC)R=Q1Piov#?{FEl(0c_eB$Rhh zHrSV_9dSAFxgyW=L8CSA4{tN+<6KV!R`vN<*70X}d-xpD*p0{Ir7?`1RV1I`f>XeW zFt6+EBdPJ_@;+rBiNh`NJu!AXJ;A}jOYnYqzc9w2uInCPy1P9Nc}aYTu`EX|oHelRJlsB% z5>6INKq-DJ0JZ@f3s1Up5bT+w(UN1Ak26QjQ@Gvnc#J&H(atUa@36B~0zx6%KIr+2 z+8o==(|!QGv#3uWpfMJ+szo;5gUT1i;#Zj7*m#AR%`jFi za$#{=Yd8-~P9BB>o&p-x>|L)8fCWj+7$8 z4cF8suDGPeFZJ0bp5>ImCH|gN2Hv}?6zA0U>%8^E_i;=q-e0ch0t?=tFbdYLt{?7= zraISMCFJXc_n>d9>B5vK6$}ABgs|{P^J)n3Vd1+t&jJzx0!l41A4})Dt8W^>YDgVw z7w63(MPj9XrpSm0F(sJ6d0i|@8Vm{%1gI4mLG966LnsLa1#KLJ1Lz1$*Qi~h$#Fl{ z$-@){byTdNp}FxOg?xy|u=;fL9wm&PeYWwAi2 zb2LDTv@MAWan|DENsjID2!{uI{X2&*2SoG_ zfA$dGSqP<2EPbEJbKUuz9`2U7z=vaEzs8mAXiIOow^oI*&6QRg({ zb8zwa7|vN-US6WeGaMa#4*6(?S*u~23YnIu>nW2J5;u-s#q7L5W+wds>cSLo5I8(M z3;>nWQ^>4@%8KVQo)M93;D}NwGYEvxEcDEft{BTGE^A`_najF(KV7=r)s#gN4)1=)%SJA&vkXj;}Y-h zsXcSuIWEOhsdFl))Lf)!=<{_t317S1Sj@|d!9|Cn34Wu?Y0&+{ecU22_L8*W)DZ(&^kajwh1lWGUI5v2ffe4X(%Kqzkh9zQdt z_7eI{x=JixxvoDnW~s9|cj8GY@#@W+eS64YJDbhWG!1rj4cRe>R2dGg-@wzSPx1KV z6vj(fC>-oAYv3vapQZ9o9n~EJ4QlU7w)xSq==DBQQebvrR;hPzBu?q+~7fI+mhmPe}au(S{*LA%D zY5%LY--ERVkB>j>pB+h$OaM1tJBLyV7qbRZ2<(h=%uk4Fo)X>#J|TL15y#@_GjJ zm_L0G4!Zy#Bvi2jl@-Xw+sOS48ZDk(1hhs_?z?zQu7$T1c7F$q+4vw!* z8DlUSji9ye5ei&*lGmvyilyWxL)Q;D#n&CYPbUl@B119}B_^XXE-qGsmZvDoGK@we z%;)o^s|%D6Ax2U2e$hBDDQ4Y|?Z$^Iw^tD#!`?{|3BYxpYZ_;c9!Uk`kNZWGx@NJ? zFhS)LaWu^HD2YSmq)1A+aWaP&IrMR&zQ-GMoN$B;PP8FkMau~+Lvw=;))cto#X~xi3`pJ9~_tAAy^@jN$A$mQphUr z7ktSnY6tauUGfg26}$_MyB~b*~{Mog1e3vsbkTTElrClC5Zo?K}%HvUNH+ zS6tUv1(vT7kn8jL9Cck|HkvD3-`W9P>Y(A<5)(KGTr@enHSlf6 z&)y^3-iMG9)!7N80AAYFXpx1s%qOr-1KUhG0}LRf!sz9jAm>?uIWo~ebhi_pK79rc zfeTvzrh=%?@$}N5H4eMmWf%W<8{PvKroen&;r#RzlliBpTZ^&`<55@BU_93XLTkvP zz~1&Y%A&yKtcLTz-d0ecA3c1C#shOlGEU&=)^9+m^y`5JGVhw&5JRt zY0=a(Y>f)!nZk~_2%$!_fOih3j~@rHM{O`FG%_Wj$A^HBxOEVcMZf&U*Sq-N9+e-# z_=S9)KE4lP1|c)ZY=msI4V4!d`*R3*JUusnkSO;KVA~pYJ_SVRnaf6i5ZKRV@Q|qF z9%8D_pTau_=_^R3@%RF87~$yX2sdur2#$iwXYkI!w-Z1B)5rIqiY*-7`6^0LArmbQ zeHhER4EqnQ8InQPTGU=)Wl#`B zg#_v*I3Qykoj+rhh8Joje4(eXUx`CHC8$d2Lp;C45Un!`(Usqrc>lQJW$6Y?XLKMm z)sQUAvJAVsySTi(#B@4cN-9bHQfiUt+*-RfFYq}oOF}K7L`b+6w<$&rrzoWp zFQKl*a>%?*^sym5ev|!!mlK0ls6D`N*s>R?E0uJPj|)fnlde9r&iMRXMMI&s)}7Io za#KWY=5-I1vkAqaCsXM4Shv~qTo|vNfIRk4wuXa%@ryR6LI=i%Utrb9%5RaT_?3@O z{2iA+bUxr^@OkGlA=R#Ud}2EQ?`M4Dj?1L*J3N;c3N2Iz1sP7*M?}2AZ4T5PGVXDk z0dG$#Tobj2bkJ1T1me~B86M_>*QJy~p6C6UC_bkE!2oZdVOtCD7l{NnIn$?XL@6K$ zjSmr>_2@GS%}NP*dEL~WI3zEy;CaqdL^STa-$O)u^LRY&lNa(cW0qz8zPY7*f24LE zI6Xau_a3)y-NJ8u;Wlz5Av!%%*%|@@4<4MtwheZ7ck!)neG486<=)E>G04p~$o&j6 zo1t+UZt}QuFgrj<$ZVTBhwZUMkx4vjN;nVLi(@!1aA`w3g%H@v6$;Iqv63OrT?=n2 z%;$5oER^!aMGYx{?NNd4vBu4V>!_;=ZF_;b8~1z1r$O~QK83ReZChik1#&5%MnSK; zesHj&ubw?U!E8FkrCk8Ll+t+h_zQrL5G-%dmE4!wc_BV5sw0J2QOL!!Xy ziNNJKyjvKebx}a&1+ub42?q^{s#S=cY~F@z!z#-m@&a20Accod)S+Aps{~Blc8s)& zS{6dUDhpFf06yHi76MAAubFd$P~VrxYZ=eYI`8eK^djDMVA-4ZJcbtTEfiw2Z9+Tr@Z*RR2l2aqxL^XJoLOq=>NY{>;=B+*%zo`$=E`MmF_<;P~K`eOLIGf zzHknZaw$nF{heygXT7ddyc;8So|l&28AcPt?Ocq3z)-C#@@8p>H%I<|78IizsO|kB zrn{-}qVnjoe}2L6i+T9$<;JG%an8ZJfUJBT5^UY_{bNafBh5vFy!{;Veuy^Rn}>)a zd3k+HXa-0KI4CFx2xMxZ&Iu@p?&g7a4w;gGR6+ky%W)=Mx7ehVfRMl40M(}u)H@Nh!FK_K{59IQ34#=vwpxZ1V};cgrtoQ0AC#41% zeSe<1*PU6o(U#6WDgER{bd%&*4wSK}{(lwyf2EiIbLv6s%8&W`pSynEhIQ|JR`b1S zn_l!iz6QfH?A-Dh*E96}RqqUa_UjtsD-p85Qo^=PYkpCC!n*ccCAYYKnv%6w)s=3u z=z*G_1wX!sJYVtGjz>TQ)oqf(*B1?IAV^8%*I;2=<&gCMsnBEW$&4?|a`%c5;b+@YAcGc@Em&-iAj&6w(1IPLTJ?E3d#gw}iso z8D}VRg?h>nXaW7mJ;j`{CzA;X${thfG2-4h@`%OB%Ya2#l2V0hA(Wtshut99do3c)5B#3;22#Ix*+k@#AEI>#2ky!D-uFpq=zt(ZK(2GaSC-`x!h{nY=*WAO@}8&K z6VE$;b`UviLKgLk&2#EnE>Y~|i&1&x<@Vk$Cm_QjSx=cbz;mK!hQ^2Hk8U8ui74Y| zc)3G@ntQi@6{2$1@oMb-ji2FHOyjvol@k+3CK3+d zzrPPDMmYHtXq)8>?ce*}_xgSf=>VUl9v!b8;vc>Sl~TBN?HaskV5=Fd%HW0SlO6(L zE!ES-oRa+6(&4bCxA*&g@dQ;~Eb7|U0Pz?fLu+kc&cv+htMM}@ljX2=SH-&20w@*w z_E2I?8lO!Q`4}JC2h##*mt<$$<`^NDET^Lt)T1$gT9!Xc@*QE^Y3=aPPe7-W2mup? zaoCjB-Ky(>HQhcH%R!2JNeM;)^!q5+`D4AG>$J3g6-9xfDEj%LHOSX}>ij_E#LvXv z#c0JLx=N2q)fFR9xg4XPb!EowNu4iK{o!?{`V^y-Q|E$I0>Pnui|dX<mp6)w*}qojGG$ zL0lI-!)4#le68byAw>PqdiU1CR26~?bM^goy3Nr4xnVbTi+etwC*P^6svl>XpM$Le zQV1A5eBMglo~Avw+m~Y};^jyzeoM%M!WPxR_2uu8Z#T zt0dNtEiS$>vo5LtA44U?QZBr@vw3lf*Yc)q{k714`SHp}8%bxb6bK=ZWg76ovlL&2 z81l-*Xr$Xf8B`2#H^~vKbgVcpts@a5i`nq*yF4DM>Mv-KG@cxmoAn7y^R#)qB6< z_2*ZH(zR{grZc2?q|b{QuhyYpQ?$;r9?PDg@>6Yi9#8(2ZKR(Kyv*@D@Un@=s2uOyT9nRk zT|US(?-9_49^}_ezT+42Y@GplQ;MJE{Yrfoy$wI`%=37|g$Vuk;l-tKT;Xdhd%crm zKJfWf{7k$7UdMCL(q75R4XBQ*ON7XyQd4ngBtGZu3} z{et&!QZ8h~knCBiFx~ET^AL|^Jcf&P0dOYp6soTKZXwGAgzym2^HI$Z9`J(8EdXNq zw%OwEP?SiNxX`~Ayg@HX;;Xp-RBqqI<$04E@C7{^P7hd=7rjSKyNbWA(!KifSY2V< z6VGCqHI`-P@*ip5Sj^_Sb)Gs$43_6tbs@h057n`$-p1cqsXZ$HdGv*U4!WxS^!X-x zO}y@(S07KcB`zan^tp<^<7ZNTuWN5gFSzO)yN(x9Is|>bZmfs;FjU97-|J|d{O6eDrbdk54-{4#76Fax0TDEb?pvqS$2qcK3TyAixBEU2>~rT ztw{)o&JZox3&vV#wa}HxY;DExIcccR{QIFfOpQPFM@j+bd>{JR7_*rndUtmh*REZ| zcfRu-6h(n=y!mBV=kVn80+Y!ECnqN>l~Lok7nsM{@jmStAxa_=Z4&}=N3_4aD2Ean zE(!{nA5reZT7%;UcTv|hE-x<^ZSI0;U%Pg#|BRBYoSa@_GOK$d{GB^@;GMyweFs@y;_TD=A-MPMHC&#b;?eO(xO?v*9-XE=9NtAOy{9#5YcZMDgEw(FQibA!lLtQK*(ar} zN5&@5V#KS|p6xENZwfiX<9Tu!%H!#ATA8noIO0xriPvZkq+}v7k=&viC%k?_ZV?|+ z)^M#gpm##s3H8CsZ0isTAr&v4#)rnuu>FSSi;uJSeq}DW1Ds;QQ;3QfVVRPb6pIj8 zAUfjxw4c-N|EarCdMhMXHeHNYt@ToZGft@+VX>o}qi|d2fG*xP0Gv)&WhIqEF$8ya zcUSsO<3Z)n?KQ*p_r5R@ay4<}~nzU+i^Q#8M{Grh-Rz3sEQ- z76$L7Q31eXV%CgL*B?UfYlc83YC2vG&j_SOd0j%E)U%`~m_EhC>T}dDqLqE8mqXJ* z-B_DC+|t4V(aP6y7=mmsPDAGb;^+98SO&c9@is9R{qIlg)Bm|)KV$Vel+P`R=<9?70q%6x`SLgD1<=m|_R93>a6}&Yo z`r+2rRzL6bE|(iIuda*NPV+_l!);%@Tt1eR7@FRvxv1;K*=imC&g&ZUy2jVP`UbL0 z#NHk-lwkkCL%fy0;fLd?5-1ZNs}XVKcAkTu4Jgod*U^Ty(0*7k?KosotV0{i7Y zyayWNQPl>s`C?KF5f;Ms_BN!HxPJXQtZC5JGgxiz3m-nt?{{=*YKnexV$`v){l}CtGfPL=FN(;KZh|`Y}|Z7TWi;% z4S--s@nRVXHk6??Mf{MIgYbcz&eD@h}!G_MEg$KLFX)_1`sNBM~ z9!>3Gd<*B7m9H?)3nhRQ%0+*c6SGJmp=AaMQuh2()>sD%<62~@fR4r{tXH<-6bi_q z4aoVWNjRUks9FoHLw_tg5=x<=L=LGPr1EGg03Mjs3uhFy+1flL7VEr+&bqGe3u8uJ zqY?qARnRUX9oud+t<~akStNEkjc2Iiyjq5@^Fa+km(FcYUFI= zp}tGo!XxmZ5&}v|%v*=ndW^D=RP@GfU|K0w^-|NDJR=R< zGFtH1)<_Lmumr=91=uiPz<~TwpNYl%7 z&(utB?5VD170DutmzTV}ORnD*5q^j-zKs0x%j6}irnSHaU=^7e8GD>KanApoBO#2T zDr~5$teVXqpY{IfO5)TED-diAdZ-Fi356<9x?<4VviSz;SXEjpLJU2jutBc`^g{?l zBd7*JfXXYXafWk4IWFcrRvXP^mNfl|M2r+6QEICzW_F#%`2?eFY+AP#Zf~^D^eS3) zmS@}cVLB_P2n1>137qw~gsd!rFqar%&_UHCeTighlRDP(a$yi*jOERRhFN7WLV?h> z?|?41KvNG)A{$pvAOkQ^dU4Epai2)W4Nq|UCkO(H zDrcHaI(dQ&0H-G3zzN`*PkrQYgtry^(@Byola+U;^TQA0#yM9E$8*D>Q7no z_jTb5tRe}DBH8;?AI+040a4_1!LmFXh) zuqey0ITx-ip%ubtw6sdtuC;Y#^71a|{OUfqEvgL9#eap z_LBjkk@*Fx2rxFAP{SK_X^m1rVCQKorjbcx1Tv(N>r60bZkC77$Kd8!%79919vq(# z%7~=H4PMHik>}eqmk*x}$guZlz(%}*2n<1JD07Xf3?{Jq(Dhd6`I>Gf;X?8$XQ6R# z6RkBtVGwFATl;S-M|qV|sggA8Sq0Emgw}?W;XLe^TZ=B)#;sQ@6Ql@{u|^0(l}o_x zYxk~{A|?=FbHDHQyn8&71U(-VWAA0g^Yv=WnT}@Vw2`A6Id5gxmVYn1KD+(g+{?Iq zm@b_QH})h*mt-VOh4JoFNrE0hGN{z>30~aUJ?k%Fg$o(FQ##8aZlQXbQEA+|H`m{M{5N zM4*{vCC0Gu=36P(F_-7vd&k{h?hNiEb}@n=fJi`M-}?3qT(>c_ir**-nU#v6C!g75 za)yc$Ap$mgn@wBOSwUIaH^8d3XzHnD^3^xU6#?v#%>PXxPr(_ z#;pUYQq;N>It>IOkOUHrPGLG*M$h_T0exikD&(~P+g0Q%mfPjq_4oh|zl?9(b9yYt zC%TMMy^T%cIOgT67pSU=d)b&-o^kZSZH`YyOlO8ky~mDDMualt+_?)3`YGn(MIJqR z#B@3(ihG2iy*D>f zib_)`2m^bbWG(b7RiL%z@Oao5!IC7g222O|3TzVJIF<+z5Xh(jy1}uGR?A#)6-LQb_yh9qeCXsjIV$F z>+_g$^`_e04G98x!vUA}j`(Viw<7vs! z>HN~#GGU{DPLhPreeQD{9Ubw(2Om(WeMX}ZH*VapF`7>vk!j5b4-V$BeM%cEX7asn zBZT2Azx3Bg)0oe_^(uGnZE$=#BTnuwZD1khij&gY;Qpa@sAAvB;K##tmNmB_x|BSs zwm7NU9l%FEoP`|PqHQ6ZPN#hOwb%H$H?NX}y9fdW!R|xk50( z*0XcjzU7BcU{*~z&5q90S4TH*Tp^T_M~@EC#xR`Z^uj*d>F!e5w=R1^=pcl>4y69w zxzKhrQ+#kbzc{uo+V{fABTz>1WU~KUeSPWDE?b*@hL7#L=F#{8Qb;arTv;mn=Ea1_ zU64}1wdHu`+@IJN6HqF{ttWHAqhz$8q)pi)kg#>ZD&MB3aGD)4tCl?vo|m@MU3y`^ z^E99At;ac~c8YOL&U_6bHjyMB`7C$Q zsv#QUI{55s!_0v4>XQ7`aPxzOeZ(JTMUzV<|$B!*qlvvdax-7kyLac~a_jEM?J=Kbvz*h@5kC#;^%AzXH#@&mO7rB&(Z^Qijp zohLkg`T(Uo%e2vy(-HBWnzcDf> zrMZ89^|&5AIz-BV3m3ZY30LN)MP2*Z-4~8_F39c z`}dC;M<{T#V_xr_g_%ltIR-S57P zv`UVG`CZ`dxEG!0tg85(yLZndM}1Us_j_AL>XM@zy|Nu~&R67K?=U8^tS+`aswGRcd`nU2=UNPd}*gDwxQF3Ct;a@5DQHyr&m_{P5sJmE#pdqXcE z*V!U=z1s79`_4YqGxDS-g!{d$~-ik}Cljk-M;MWM&OlCdQyqz9B zV*i6%j7Ew)pL^NdzH^t2e#$3b*`}O~AUkakF-wYQr4&k6jMNdCj)1uZa+a4sz{8`A z*=)viG@`6Z^2{Y`F(7*c0lfRiZxclkZ@u|xb}yXg`p>+?+i!o5gNF~9OvY$!*t>Mq zDpsopL}5spCWyeI&P-uZ)34pQN*u>rz401am8fFIPd<3U7%CR3`a;^@d;tgpQC3h%%FK1wO} z_V(D=*x>EkKO`?o%Ccl<(Bl&qF7f6kFLU|Q7T@~TyA(x5IXxvbmT{h(oN(*bEly8Q z7v?#NqPZfvMtc-xxxf(DxuLAe*zOKt7uwlBL}gJ>8iNc&5c5zIU5KD{=;`S+%-_0w zVwLZeZL_R2Qb=NXNTn)_wv5mK-$(h)X4M2iKpGx3)=9VC-;O=Yp1>kOYjPGUJ+kieQcAQjoMztq z)`;llHyl}nZ3jTVYH7$O79%pBw{ z0KOB~@j!*JS%$)3@e(k=bdC-kWfgg)8-#(vCf*8ypg|FYvCV>;O|5l%IGrac2!a6F zk#RPPVlW0(&%ZI<7HGF#+Ei4!KpX4jk%Suv5fJsP)qXmzYU_VqBP1Py;*1aqX!eg3 zA+cN*gtxc18$@(j^Fig(|iB1B;Kd^5<}Lf$4HsiF*%a^6Rcb&;NrK0!*5 zk-b}#g1nkO(}KM)tU&Pg4-U}E=7K6!j?xur_+%;kMj{0pk@wj~xKxHpFZfZP_Xj{G&P2q=uCtY+5gU4NcN z2hDlc4I(;6nHNu65s1LvBQ;sWW%s&A!BfH@Y><{dSw3GhJi#Y{;Txe>XA)TRzE8%` z_!^$E%%p{!QC@Opho+M?veDulo8+|@7(?6ld9GwD(W8BBFepP%2*_75G=+) zRAmVWWK@SLiX+0><3M|S-l3gcnJzNMkY_nzxae_U=f{Sza%JY;4dDXfNhuA2P6Sub z;rS5AfH0ICpJdFklB%5dSsNH-C3hYUnH2Y|(cimUN}r_&4Z-}k8yj&W7YYP%(4$SW zYGOTa>g?>3NkI^Zg)`_Vn`JeaVZM*tyi~RPlg(_{4PBMB$A^aiu909;F3(Hbv#c5a z8act=&rKV(2TenAzVD(aAW5P|wuwb=sZFIza-B7(&dD^#XcqR1+t2N_@Tsa4SzdO^ zyY>Oy6&5F&m#yUlDI}rTU*a2Gyv5P)rNIKS(UF}j^NlN#k1U$>1!a=wku#GhBn%|e+=h=C?DVbISonaVD45Nb z`#!5C)}!Y+!~M18@H9Fk5YXF$2I;u{^K{TeVs#7zDEMYP9c^Wf`k1=6#K$ zgnn|+yi=TqEV67ol^ox2@4?^eM+D9ju*DM^K2{^5U5=`eC&xRU>3BkDJej0^f4O=_ zvteU2IpfSWdX7Md=4~#`2?9aid*eF~h^Fs6Z9FO5d2gte>zr(32eK&FWlB()`Pp$Y zK&Gb6yUFqA(Rlt&ark-Cs&u7ya)f-kA+8B06xMn>Fd7eWO=p z+3fkyd6Cqz@vN#nCBu=G6QrUjDwM80+MA&p@?y1DQ!hMiWc~<2LV%70CS(y&U3*j8 zv4@Rp+<1-YDNgoV_ZD`t#7md9c=NT3EBlpYnHM*B@y>O!bvta5^X7*+FtY8b?{pvT zJNNIlBH8JU)`bZ6WqhX}YkSrG_{TrCk_3Bmn{XR!WM~zZAjYD3$ah1d45tCWQ{{B8nDGnY! zBu)~pUAsmYz|~8;oE|@AIGpPix3_H+iKEj~%CaKMa*oOhtrTDS(s`mdVDH9jlx4}u zXu|2~kcSWV+1}YE?Qall4G|MG_r8Lv&l%vA~rlTW%?z8_EX_7EI-lr%_ zzIW?wvMgsjR7|ENMOh*0IMf3pK~+|NJjt16Wdj&kl4R^;D{?cXG(CJpbXh5+R1BvT zvsp!v=M+_C!&A70%QS%yJU+Njzt`j3=9k#p+2GQ}Eifgc;W0&Cp$&BijFKdlBuUKX z=G@{tifnAFi|2QU;+UQD7pZ0=veOyU@tDKIr)+I))B<==$6eWGI-M?9ShfZ|(j?&| zD{O4&;Sd9;dLwRbZgOFFhfoGQKDHKBXB9Yi?p$LD84Lyt1_Q?9F-2+P-K25IOM5$f z>h&wU`s#UpeCrX@X@M$csQS@7o6gwZ-(R{oT_0V-8fy0!bw)+BbA@Vuwz7QddsSzT zMOX&unBOWz^eQTfirFmZ&W987(s1|g2f+FmZtXZ|{y5v2UY|uS)=)F98kxVYo_1_r zSC6wKJu5bpEAt|8tzG=7uDDOjbkfYvx(w`&R>h26PxH9t4sG9#`*fE0nO!91q;r1k zcddAy9WhAHvKFq-XUUx2uE&o@yDI*e9~*p?MRZOlO__O|x6y)|P*;ZN=bhJQ?Vrn+ z=jVJpo-D-hho270@x`eNk#_u3@5RSYXF=M1e27gKC%McrR8=*xfzx!gk?cij6%SuW zT`}d>(W=;n|DvdU23O@lSjU5_>iPEds`$q1+UQz~XT@4P3!NpiJkapNrMoiAtlZI& zrTtkM>Q_NI0QX;*2*3HYR__WV^pS7tgj{Q0hzV@B#=&UlNqg8U9Yhzt(RYzx&6Mj1M zY&moJE?C9Ke0rWZt#Hg zOwh(~{rdI#o1EEfwgl{Q^dfS?vK)TA@_wJ+x!vvif)yU_f zD2OHOZ1x*)qeFG~dc8WI-6>U3kWHsdrx`_25eJ$ygu(fXltsbC^E(Kwcp6Ijy&nC+ zfTW5L7$(I88Ac2?cbHD6jK@bzCWF%9v|FCDM?vI%<_uDo6|VT zkwL(4T2W*bMP+m1L5CvRr?M;=4u=f`z5T&s!Z760IHSl5CX-2HAN%C>D_lCi%~$`@ zo20#nzxTg=o3xj5@!~FJsrla9xB0;j-{+lo@9?F!UMG%1e(pBa5Clg{rlwqBowLD z|GTbaC9mGRi8hj7`CES#V=D5=kDKqJu9|w>0WZCDt|{;6>49~jGREc@ zJMZz{moI&SbDKL}b*35fD*E2-TZwwu1Zjj|gSJm6vv!!tHsz zfBz{6f{Rz?ZJyiO;pI!8@J9Y@;qKO* zA1@_WoJ?|#j>dMq`d(~Q&u}!JWE?*E=*s7fjhNltW!KQh9w0mI!dA!6P+c z8?QfC8y`Hfe9R}MG!Gx1teiu?%ts{|2E24-$L?n#ET1!Q_}HR0gb)N0_Ab)wpN~xS z89Bc@puZ6>Y-gq5>Erpo8@^E=tIyv2)Y;oHhNBiwaCHCv(?$N=L6#?cbZXAK#~R#u zcXZKt5DPfB>7RFx)*Sm=cYnMj7*8fSPoIw2J-=bkd)@wnHK7^0Sk}fM;rxny7=4lcNvyfGWnC`MojZpRg7fF?{z;OgK|r;UJT6gnS3*ulF41deGNLu4 z8}FXw4cNq<^+LV*N}6_j?RK11A;dxgS|_i%B&SZfvrbvm)vv0m7GzG}Q0+g=-JCfY zxIKqqoh-QBUQrY)L)-av`^nh+$FcjqYg}!mQ5S-%on*PHsv6-xzt`Qk+6e@^z$2~= z|GPHo%zwx`q?fC+OUdBg7Y?1?R$}>K0^48)x8K(7XV*p?#|w%(0VHYKsaSU|-tGRn zvJO4#_Ms21IIA(y&5u(A`SR6^8b{mpoTaU^k{j15<)@>z63joRuAVrKoBlXjXWTf8 z0??hEcAtH|;S@;j{n-Yj6h+bW*@dp0OeT#2#vkKZ4P$h#GUa~OsT3P3k5M}8ei6cBn|q)(29jK^bsj@k(y%d%WTEc<7;ZOC-@mrFwJ&VQ4;;tcl{z-VN_ zX8-7G-y}^UzWVR~67T%+5BbNx`G4`vZ@c&qmXL=e#1+2irU2fX`(?{RnkfaBqa@BQIzHu`-oUfg9i%eZ;v8n3>($1nVu zSNXkf-Q(`PW4`hI+Z1KRWHOmY^-Eh7*B}i|vF$CrHI{+>w;cpj@2M zI*@;!m&|4*#%K(hBu%Z$V^&aB#-CT&L|xqJKTqT8fAU7m|r^Q!VOBL*gQ??^>!?Ae#;vuH3#*x6oo6VE&ycdrlIo+A3f?j})qcI0JI zmFyfXw=o*dP)aYfAIg9-e?H{h&Q@>f?93wYWy+l`>lO(RhtYGd(>U9}1dH>nlx8%X zt(-%@%ts|DgU&XJ=`xRU`{(1L%|X)1Hww>Qu*5gctxlrWMM9PgXUpg9cq3WKpZzi) z2X(elF6Phi&-=OUK6~e$k3a4l^;Vwu?aki8JfA%0xCVn{E)O4{&Qhj}+6qLU+6eYGTBwb}Za?nY z3LK}H@=)YU`|Y7DaS>E!yXFT|Mi(na(ml>(;AHU2VA> zN3N}njg3Z8)%K8$qUg+uXy^TWmc7wcrz_*{v1gILpWA%QjjQu_ktFoOwoG$nLtlFO z1Y-nrgimOPI;)rR!1A!FHC(Z9n zoq#aV?cR#!fAjZ{^^9M59|ab~qP3mB2K1}3nl^8an`P>dE39#HS&{6{>nd{JJ+J4a z|Npa;UDwW8>oLZVW!9LT_EMrK#Gok(8{4O<)I!)@rRP96Cnx$cqC;^TY=|G-dCyzD zrU@j0l8xcS-+uyYU{S`PltyX$C(m=LKp@Zv5s)M?WohX3di2tiBuxpU2a$rH%;p%UDDJ#;gds#;}ib(zpre@&GFdA%mLne|2=;5x4+KO zXiAnB+`s>jP)ff1XHP)F_SFIVAC9>7&Rw=IUSsS0C6cXOj4|w7euE;kq7I;Khkxsx+eD${FZ`ANh%lS+Z+ziX9G#5#;K2c( z`OIgydi5&TuU}sf+}?TT9rpM4`S8OJIXyjPXJ?0d_iU`cuYBbzOs7+R{nvk;Sz&l| zQt@>31St;r>;K_jrQh#SjUO->j`-TwzP7Y^+TjkmXelHDAe6$?e?*6ChHu?Y)3iZt zxPLE&1*kV`bDh?%vT2$&f`_v(E$t7_q8&3JWsjGyy#hhVAH4HjPDeR^>u>)qQWzp> z-4Bu^;b@qnwc+s5BMgvN75!e!?smT^Q{^_$+aMj-GE|JGIfqBxs7@y^ta8tErD?i! zcRR(~I=Aj;mFc2&GJ-=AJ37mK;g6wBPL5pFkF$pKaf&BL>%w=qeq?p-8X?4jOk0-a zlC0&I@yF`sz$v)=bKDi)t!oa}$rA2P>6&LZ$F4p1kY9)9U3V|H`SZFrNLQ#d{|)M;0LoWkFMoK}T1l2R`1=d&or+w=0QbL!e!M`ux1`+fHJ z>hqpcM_opxXVI#V5&rxOh>#&NN}D%+Q%_a{-u!dhvWcakr}P#ONl3#8XrCPc*s`l&B=-G2ugCRyl2;f5 zY2A%53<-fG>Ief;)#zfc%k6tPtosqN+*YztEBwbc$H648nlfD!2*FMgBBVe@5>+aU zGK5L!X;h(?FUz9OBkQ+w078cmFzu?R{w$v?DRk|=lFjnwRf0i~HvQQFDk3sU6`_o8 z403miD_bF>6e0aSECWJhBq4&0Fhv04u}yXmhB+XKqO>{7!#qbD(+P5)PA8n4R7;5f zogT>J4R zpZ`;A^e*t_FaI_E$?yCw@BZ<7A~lMf%<k63Rs*Xy%#wbzhas6dD&_OLMqrEMH(t?dLRX~K9iCCiG1b5$t~IDtqIMzMwb zYei8MWLeg1Sf#9`PitKVySHc?Arw*u1c4xq1Hv#`P>{Oj%36S$O~>SUhS4^Lb(+M) zvCaCJWm%^cH_vm5qOeHrI@o#A)3_E`vQZH#s8@vN0X2zqIP(IvXFmJeAew6bfsFbBpW z?SlZ~NYJk@%U)uyzzS}FPGN^| zQzpB!je}0@xk6nuZX*~c6 z%T%@2$iP~9@uQlt1`@3W zaTLn?v(XQ`b#IpXZ@qbiBFwDnnlYa!A{CEDD|D7%WQTovCPaCxW z>(`=dJnQQB|8#wSmOh?!A3keOJnwJXbL0Qr-N*jD+=V=P-o4vKkUXp3t3G#o>_uF? zeR|%#=Fi2t`Fq}WU0r8cR{cTTcvn$ z@}eu_s#rC(eiL0~&ax)1-(7rS)xX`}T|7irhnrJT*ZZvf;n(BH&7Z5Uy(dwo+qaSb6(6ozgRat&a1*qv#-M#Z;@%m)ve7K2>}>O=c9W8aq2^+Vb>Sr8yZo%~QN@}#p+FSTJ7B`#EmAq)cI$R(Yl z0q)Jwxb68B%Vi`;VQfBVVX?+>2nItOE%O*D9e=O)eElYlrPr1T2$=J5x9*7ykOD#p zE=g`uhcnW#mCZ{dT8ik!J_{j;;|LK5L?{s2zS3;i3_Au4_H(V9-_HB)&T>mfQvYXJ zm*WaJ-WxOtl0(m^;lD2dLQ`Qd&Dgau*!;rtvmIjj`XZk;U?fIJgpr`^d)cDmMZHG0 zUxAd1VO#73EZ!+~zv5c1ND`Zj+Uorz##sG;5Q13ON?GTn>MyD3et)f!d7ee?jz0_U zocE#oZL_L=$M@PYiQnfgc~)!9a5SMPYMoXR)9dw6vl-ghgp^X+yGAKRQ5yhVxFJ{! zOHx%8v)K$|EC?}8;wJKgF`C(QLYB=a3J)||cc~~!%Bmuc6NCWgVCf88U_;X=T^or2 z8HN<9La7W@sal_Ebw!mjRNCr!-LUQ2!gw+z&vNU<5d;*asu9@pc?}k1p~ZE7Aw{%v z*V)?Gu*nLujNwc(DJq83hX~+*`0xKKMx!x*`)~gWl`>?dsuj?1|G;KRzJ2>HVVrRD zGe6IiC+r{XGyU!#(z|_+uYUEbq-o0j{ytTaGaL??jA!IIOvfh_%JAkJH;6*X)ytQu zs*2mUZ&MUD1c<4b<&SRPw~O)*{%0T{47WJHz0IdyzsaSmH`v@c-&h&kCb)U?CXXIH z;#=SP77rdg;N;|_`R=Q~^c7}V#Pw?zK!hMue)ea7mP?l|acOUZPzwIXzw`GR3$&y8 z^31z|HR zPIxjATr_VqYQ{8)`Ac81La?ae+{E-g=V8t!4x3J)XxzH3ss$!iWMTyTj5*8F1~&d<|~B zd&K_ZDepXfLZ#G#d-#ha%xcqF(58MFXO;Hd4=t~oAcRE9XbC~lMXQikep~HCGk$;C zs60phePE1XI-P!Gx7_w4$Hilu-xJjm8gm())e)O6S?$94JpFM-+;vGj9h%qQ8^&}e zJ!vQFaq$|T)z@{1->Rw>`sen~y8Y+7$}Z0LGRkWm>fWvWIz(X?s>;RKbal7UH7+J) zm-45{6Vc(S@2HL1@c%uX&NIRbvFNtEj+P$eHNB`Sxv}nIF53>7 z=2IvIsecc4lzATN>T}apYp-r3Awocy4(7R0*7Vt!?gUKh+|?a99_7yB-rn94-|(q@ z$8@1F-CDSM98c`x6VDS`;cQ8(EjeWGst^XSI6p$zd3W!xb?fD*jkNS>74P-Q?J@h_ zGtIjD~*pFdfuynaSF=+GSKP#;B^VcYww@tH*40yQCB~bBq2$X&V9Iw!gP)fHL60D^F9AOJadqSAcS4Nn%ugdsUP0D zxA{+!Bnz>yeG+03g!J!z`4{M=3Ab-QsNdZc{lS3Uy*;K`Nl~eVx0RE_9a-dSxKO4U zkE$rkjL|eBFDkY|3pWY}t3$5&@@l)Stb|HIo;x{nKqv#QdvBS475Z#>FPN%A`3WgE z?3$+D9*aXsKV5!X=v zRrj(l^E>0cBX_5|JFjiv7h*ZFX4_lPr*+;#ZEyF%V6fn&?&nI#^PHoq;(z)(e~&j` zzrnxr=l(Qb`qQ81jZc4;?|kPw7Sx)Z&`Wz<+1=uU5BK^04{q`B;X{VQq4gdJL%#gw zFEg9XxOM9m4<0<=H-6(ccrXU30dHV2WQX-H6=PzDib90l;o%2*x$>`)MqtTE&FL>pZ zSDH8|T5Cq5QKO(4jYb4P!0kKtC`)U(*yyL6-@U-Ooh|zPKJVYVkI{x^AQg| zs=--Q-FJSn5O-)?8E0+r4~k#kg23yN(XeQDaHs^+F*hG42|&mg5k$`vpd2ZsDJsRu zWJXdbzWKv@$Ut)EZf4^;t*J)@qABy_3_VX)ar6H8@m%l~qK!1M zWsK3@zgrejZE7pMwKP3=Jfc>WXv^*7gUNIVFjrH8svoN+5{jvQQJa{~A3>@Q; zrpT`)fAiw#+I23wKKXpiqIA^4 z?<}f(8S&-%=jv!vQ`RAaywAH3WPX3z$X35j-+1_11_NWSifL+gm8pssUnr@>F z(`ji9SfOAvn~)a;agBBij5Un(!+AXXot_|#1y8g^(9EVFj3GA5CWD|TpD9zu08v4% zzB2pv^JkO4URrC8 zM<)$ma`i0qU%*zqUem(P^)u}6OLS$=_Wg7Qs_mbv zlElffEHNF=<(<4N7)>WcQXsv41ZHYch$1HmC4*kXB!@ylHl;Zi27@khL?AITLaP#^ zRdX(snNOD12H`12qck88&=0*gSs;jnpvohZmZW`_uGBP&8T1BdWiT2BJC---avnaU zsx-N$EIyqbE_jl5(Ybz(5C&c8W}chAGo>m*RAn_&qFjKfE${@N3?NEP7(%oh-2~ao z2m-;y?XuxNWwDrpE;h?bCRyeP-7P2f`+~iJ;B;!36{b0-anDCk8v~D~G9qSL4 zJ6Yt4s#Metwmdyuo!HmW`QFs-`B@!bbvEDgoqTl#DHGW9QBIJdy(=UoMzmwg+x3#6 zJ;#m$GXVs9Te}DWaWZ3)8M^Fgp%jF{inmB*J(4R`Aq1phh^U#n%bVriC~+v!M&sw; z)b(2|%RTuI>v5?igh4`C)k)N9CA%toq@cv@C6GT@eK2c|}!ew6?$B z?AzQQE@@^}RUdnwwbB?2vVQNDKAN|d)t!h!R*+H>#}Rp9tmkx9fiZ+>4C7T{D@Cbnyx(+|Mr(?-YW=H4YKe&v-{n9XLKo}Mx~J!UlMv9Y;>F`9g4b)ZL+ z2kovi%S-zv98C$Oa@@ z$ERbI*8J!ln>hX6y?Y!U9xlA`N(Zh{l4(}(owt9$;nP#DzWg#q6&Ry9I6OsZO(Jd5 zP+#ZZ=oyM=YejEA?yNPSVskS^h6z!+$<3>K?ClK5!z~N}fB#p1twFsy)U^M5fPePw z?;@q(z1#0Fo>d&4X2^qk2;jZXewJRp&&kP2ZH3t;>W$gl>~lKJ?4o|K55R}}hf7GO zE(*hl8?U`duh(OHdz*s?cX)d8fP;er^1R@efBBbd=8#fV6$b|gOb|FNQ6sP7kYVZ{IPfBrsjHU(E#+`@LO z&Q-s2ZOpsgT~9kM(euX3T}P{8tFG%0(Cm3vrX446UHr^0bf_c8#OLV8kc)fU{Ad5c zzeoBYVl>Stt3{qL%}S=TlCS^%2QM^szh7rL%l|)}jXwYBt9GI=Rt|C7JyB{mq?Sm*v7p&Vpt=k(-yY;zL%=diPxO`>Lx+FBdqV(e? z$Ft|{OSA^9m*bSq`H)!Zvvcuv$bhoUaH#TCF4lGp4D&qa&?OEyh3~wrMVCu|{al~i z|J}Lvk>_n5HDC9rQ$T5xTgxoV77(`XuIy4ox6%GS4|ji_Cnmg8dUnNV?P|-B8=DLB z<;w!=+Hz%HM9J#<*o92{*MZy|mSwqM)cJIGmLD$H#N40~R zm(z4kXUOO3Y`mA(cpW`%C2zg3w_N74H!n5GcI|pCC%s%=ul3$_o$K|SxrD!XqqSZ$ zYmDf%CM*sk-n_bt^MgFwdOcZKuTS}VL$i2YtXK=T$0YDGyEZ=T4>Nl;k4_=%L)roA zd*jku%`f|dnBBeQ9q{1p+%WU>bjF?i<%c-)>y(`Yu5R18J}F>$w4CI$P3~N@eZ>5m zw7+dV9Qz$&!Re`0cyD!hL7pG%a^up=&A+c)3+ga!^RZ6H1xJT-Iplk{-(N~x+oo49 z+OP#hJ2l_y1lW()m$b zApczSeSk_W3eC?&#-kwQaI}o@Pa{bdb@y(TS7-vVGP7X;(g8s&bHtG(_7L&?G(u_3 z*aJ~1RiaecIAdGHuc%SH5luYlFyLr7v0#bm{M~JoLiw@xlcM$ln3oY!BBO|GI;AR# zMjpGgyGalP^!xoLOzOwo=gBa)VK1``4UD|QqRJAZ)N}V)Y0ZHwWx$0CyObr&JT-+wUr)2s#v4}z0WylHN`om&Hnyx{+~rLJ2xUkbrIe~d zQ8F10FE9>qWG(|0eNuSgYP)?z?qwu(qt_l*GRNXVv?li`rhaU43@)ynDyF zKA)bR@}5$hjx&Dw-~L5z+`J0eE2v6w_wIWXMZwp<{rioQ+0m0HPa6GWk|ccbi(lj? zKlusozWXi*54VX-&W$%diwq-Vx=E2|eDGlT{yUl2i}`3YMF_#8qfygmr`y@=r$kZ2 zb_z;Yy!YOF3=+xdX2d&x{2sUO+-EqMppD@-fBT=Jl;X*gCr$Wc_kNz$GHo1&%*rW$ z|5ty5S6+FAFMjchL~4pO1#iD|pR!V9vAi1kCF>J1A;*C`Op7pWEioxx5s2M z;m(~q+Isfl(eUttD{mx{4QDoyvzjFN=yW19C`{N(| zkfYNvAMPJE0z>c;_m7TVcSmy*a?huovtJ!(~1B7%TG%6TMSU%?6lQM7aq2KCzd zZ8>DoS>nPf4E|RD03ZNKL_t*c!wt66T^mnEuNRiqktroAi#Qn@q*TpgKa!F#ib#9C zX6}-{y;M|@HJ^zz*-YDe;PLxogMKYb!W}5Y0aG z!vY8)*xcM~`co7|qo6Uy5J^E4xERoaQb}};Iv(dGk!u#RjBCf$weI3;$879ET`<$L7q)z0Wdp}O;v#33G*H?ezNyE**0$ln{j@aCg|o#NR?7u&OAW5stNb{*O84B+_u@_vM8yO}$F=I$ZC z4S(;q4G`_U;wy#Q)U`L-v2|VDT?SeAK=99nJ5zolu(MK^k))j@#f2qscXiiY;O@9} zXkJ&3&zHK+;Irs?$LPql<@#2Z<;rvVFM`(bSGV3ifBm@6X`5uGY_61Y9y8qC&F-Oc z=ixmxl0Ue6nTH>K$Pa$-gJzy*Qy*b#IGrwsDUgBxD1t$vC`!XPGZckI$vzML^Y2*H z>u?5DX~;88(sOyQ>PMAMhuKm=%0#}myZ#(>M!AfwWv&$Mv@ zB$xMYBRy36U~>)((KWA|jIx@SSf2bW#HB+-mr5|J1XUTJRV|k}<0$RiA+nLjF@}Ho zdp1nh$wZ?os0xTufs9%nM6LBod$C2*dF0m1j>|C3rWBQZ_ZST42NG=zPlr|0mahBg zV*1Y4LJ1r`Zh8%_;Y zNo(5-$cuvUY&m?3f4(DWNJGu63aFH55Vk(wu=my~186s2-rR~-A^;sKIPKZ<>91uH z#ccF8nz+BcevA-{eXc4^;US`rMkjN_c|AYvyLPK*_twdDj<6MC(Sve9b~Fa%1Dm8o zxIG4*ys41VqIn&4@}C;vU!DQs?_&IRQ7?s^0ZZ%Uj4aN>$QVNs{;1CDWBWYV+OT_r z`V0Y8p&LUHz~kdXFx_`SAOi%#8pVv^c&yP%P*wA{aGqOKc@+CGel0R~ah?r+9wCP+ zZ@&vBubItBIrs6l0XCvDt|Mz zvd;GACaNqsIy|J%P#J5eHpU>yFc`ADKx?~}Qd-X&CqDK2)~$cIIlyR*Ru!YskSx!r zjLjA$>i}4agaAcAiB$kgWRh6V)>^LXB?-FD!zJqXncE-t9z3jh#N#HBXeh%b)-phz zodNuuWg*EXM7FAgcniY&_sBAbX# z=eC+ON&!P8HD#q4O-Gbkql~7QSsFVp&O#;!Zp=|JK*wq7>6MBAY5&Hi%lF!wfd;YJP*5Bb*bf1me1c*yma zuM>s|KYQ~AWu>_F-hLAk+TUvcZ@>LEX`1j$fBqLp6T@saj|IC+pd~m?#kKg5RIASu(JU~*}{6C38`ccfrxlQ6E=El`aRuR3uiAG@hF*=_x zojfHkOG>4z@dJ=5BMbuGeC-A@u%17rzL$p+Yj`S3>m@%NjhK#4`NlWCK`)ksGGH>c z`|!!}Dg9nSUzWt;EQ)AjEaX4dB>iM*L&ZW-P%#?MP>CW51jF%^%D`|qL~G5>>zAz} zdSgHmhivv!F70kMZVLd94i8aEasPgSly(su4=A$<(p2p2T%Y%=?30~8$I(A{Ft{s|0U8i<@89S2 z^t7{HhwM6c{vsQ->)64geLlGVkkjFK@pAW&SM5vBhxxCfwo9~c(O4*B%$z~GkR7nV zG>x#4Y6Y!u9X1O7lJe@TkJebm^uj*5G8prmK879{6<{jKEH?zwG#g!pA(6BRA>Cto zV{;o31PgK1T%5N^+U&ZHLhn)L5*auJg&$wkV6yGF)P1(nx@2Y+{Enx8bq?M{4~aNBKO)#l{Sjfr#9NzUD{h)TMYwskLDz>fy zsBKa0s>iLDTMt)HS6k~)?(4?h?vLwp8+Gqfd+cXXM7zt|Z|f}N1if}<@UwaWtZHjE zo2^wuxBKps?;hoU_ADb>mnD8x8|%n_RD4|I9_j6{B5l_*f9>aY%3?kOSQVbaKLhhQ zY#UbG{C17cSB|#Hpa1r`=xSrtnsvo(ZqJV^(^f?LMy<9Ydfm9zQJ3)C?t2?C?yrUa znC{xUK6Ra|RcCM=wfDnW$q#=5-D~kLlGdH^w$c7i;+(cgR0g40m^1g_aeLwE@R&+T zZa*3DqaS_9Z~o>VbfQF{d;Pn-nVtvj)22W2{ysma&SUrgWA0s=B+0HbvF|?IJzg1^ zm7QI$uBz?^3hV|OY&;2)Fv2)PkrYPa47Jco>)GfhXr~{6<(L*)X`wMuBgzaShenzJ zN)+)Tn!vCL6i|h(>dJa#WkqIWMEK)Aw77oUkKgc!%&P9j@R(I)W`z5F-*eAB=R4<| z?==>;tM6QnWdQn)@5xvO;Q3Rwo$s64!_Un4JmoSHS1>i27a=enKUq8DVp$?SmoFLu zCzdzj_xRr=*Y!Qq0882lJGZXBaoQxe@bRI#D5%rAoVlLk;6MF*eVpU=v@-4Ewf4|B z$1y**$s60`vA*#=Z}0Tg^&%cLeQRQyoOzM*F0$V@$9FU9S%zg*VR?3jr45SL zC^ijRwDWv^f}&V8ajio+0tSE*7Kv&@2Eltk2$aSIMQaum$fgJI@O*a4+S3n;I6Hd` zAr!{rSGNEsinVesLKNpVmX2!=Mm!~Mo0=I76!lOrz@Zj(XuHSqXbVZ-N1`mm3=Q7eH z#o5tQ=R-q)K3CJj7@+!v5Y4(j>ufn88EB52sk3SR6kuVQ9_MebO6f zp>gfqR=EG+qb4`OI7FJk{A>m91yW(5#RWohNGWmo@;*vT zu@YG`U^{!)kt7<0o}#E1->R%|czoJyuGe3G9ZD(u@gM)!^#q5DUg-3o!}zbv=djk| z^36j$eSCe0oH@{wq8^I>yiM{t{pO;urDtuYVoC z|9hWDmL>SpfB!8MMTk!wTW@aPz74H4-hKDoMtS(;=~Mje_wL})-L{-;i z%XPoNc;mhZ?dxk;S%)X5PcUCyJiNlS8)Llv*?sI@c^y(FD2f77%AhQ+$0kivBuRqN zK!-z?`D+DKtwLFbgjfX&fhwiI-egoO5G9U3lvp_ zOozx=H2-{kkrj{D7%>uVF{JP4Gh$YhAcodfmSrf40?s*{o}8edOMEs!wtpGw!*FT1 zc|F4*RT%Bxgj}rv{9tWvV_`5>Vh}=rE7Z7kF@BH6kQ6%3xh4@B^^b^OJjug>z8{ar z^}H`ThJo1NL!Z&u(4OVW86vGU#^Z5=@}@F4Kj8>)0L|K;G(f?pR282$aitN4X1xJvAUqyi|%bFxY+&D+_)3ayK5L2uKr5L1KmLTQKtFOM= zX?vf+>G&k%ov_6cLTbn)gR2U7XQ0v$hjXCA+5gHbuQW<9TC1FIa2cekD&%X> zIx@-5DDVVVdwnQ2{tq5JSli2+JRHdw#{Y3|JRqFqqtOU^ySuP;IkVZU8Lu#wDV%FB z!D~PcDUl8*&{85xBnsnTt%ogF09yIE&p>?T%9YMI#ojhti9p_2qtU1t!?^F{WkY8d zzn9XvOmzt%!oGk+rezzWRtW6x@54EV*=&ZgEU{Xx*3MO4Z~PsdDa&PleiEQP_vpMD z4u=~R>_Jf)l1Rmg2&tUh0PqgQa^Ccvlxg$%9L~Asj3Zt|Mj;_YBX7{$W?9ybp)CM! zP}raVrSaX_+39$4@%f`QIvft0eL>IiI{3cefE8MY;SS?ri#e>Zs0xGKS6;*o94|331(z>n_y1heG`i^V<`iv^TY&H5qY;#497@M=0rk!2}%hBpzyoK9iN z5=Bwq>GNkeT`eKq0D!9B>;hBnA8dG7mz{(y+o}ip|VY}fCo^T0#Zn5x$cQjRR(~? zVsVHT$_Vg7OtYkW&IvdtVXb3lCP2z+RV($CPFuiLBzvayy-RBil_Zc#HTsqXOSYQ*25x!hrl8)AcerC0x;tN z#;L;2-agXd7^Yfv&ZhBrjC6y{*@ukYCL0qE;Xg@+<3#(1pB*ufknT==&v72ZJvTYg zy?bS9`CF-GzjK+9jHXo1@$oU9KYxzD`J2B%k|g-euY4Kl$m45Ydj-#)J;N`5`O79* zA<>g3PjGsY;!pqmxA5AHYxu?=ei_%V?&HJ5XZZ6!|MS3$eSs`Z@%7*OJgy&%G5+dT zarwi0n9Yvy{B#NDJu)u=DWN8Nm`o-(c;ywmaqBhgU)sfA{>Q&WQRKLK^&rgGXpGs> z6WqOfh}rBEMN!}@Z{0+q6+ZVn{{^H}I5>C(qtOVL_V%z`tx#1JK2@K)^V*{#&vShE z;fMH#fA}#D4-avAdWv~xBn1jRg%}=Sx_=W#rw;*~Y={vp>H{-4oiraysUW3-hXh26 z+~i5HXmbu&HZEeqNt$(q)ii^&7D<|gkQYip3UXU;LEvFgnVb)CY?3s?c)WwraDYk) zq)7tj0qq1J9N-mF9pVUu42>yj;4jLeKv@=za623hF~|~RS%Q3(qbSQ>fsGU%{Bq-* zLtd0H#&(dG5I&AAS{?UH-#wC~42i(J7p=P|W1K+=NOM=aY%sxt3nJuJ7q@GzokFY$o^5|? zgt6a@h$BU&lrkh_6ro;$uDdbS)mX5i^%wunmALdBSJ1}gc!0$guHDc`$z3M`6jDLN z0r57_MfXPEbG&aHS=je|T+Vs>Y*TyqI@z?h<8tFLAKU7V`>?HTo5loa*F^8TLSQXZ z(MKR^FSY$5VLi6dMdxDE=Uho}kvV$Vwp^rLFG4R<#>O+?S5)^!_v*_$)A#JQ_craX z7p-F(_3@bV%G`8jzi3?-edjznZ-4Q6I;`?vMg&nmtvxO2q~!O zqDe|@F1Kw9fzw=clc0nUwpL;!2`ntU1#}XUb|*T_55?@{VS%U|et{-MV;hUoH8Qmn zUE@@mb?;VuJo!4>b_d}o<#-)7_n&%9=>kuRy6}#Ml&uFSmkWYCB%zcJvc6U@zE*nF z399?#Pu?HeC!5;OpQSbvPl%1#+;GT^q%;SyVMW&aLTd%hTrL~0!MYr-DA_j7L|j3# ziMXc{?QI&{K4i7`fU@CE6?+~5fQs%x{9m6}6o8IVyK^sL>qcu0h+v7c&<$#yl+;{7 z)F%(qe&8Mue4kSPxVK3>2k;JF3V10XMe7+&<4gvpzA@BFL&|o1xhHD8PpLgISS0qm zonF_|XVHz)V?j!IDDMS-afacBn5T3EB1r2=4EJvD*%=sqcdkzODMA<{07y`WYV^MAn@9Zvnh-(OSwH|@xV7`ud#Y!% zhk$eZ>=(5%x(%BZ${?hy3+ss2v0h=_Wzpygny=Zoc+tuQKrJN@e* zgPpE*7eELh6e}M9bov*qjY!TR8O8g0z66>%5hCzpix6VWyEde|bsk={hIQ{fq!3Uw zI=<5+A>vkc+VG;(cbDE|RPB>x`^xF7V_W?|v<_JL@%@vCheCDE0ksY%P16Q^5cB@v zh3Js4ayV--$Px^O8HU4QW0)_Bs$M$|N=hVYiZn@(CK^c+!u_PsfRxZRurM18Fc=Oo z9FAbD?d16q_1+~=g7+SYs`aSZAe_BP3Z0}#vH=nscmPpWk>N}r%LW~wRA;<^Mt>}2 z>&3Mdf~AzgAQ|)?N-+bze*HS8(^eJDDed{nM|6n2~|}!mRz9g>d5DfZw8a+O?y5m$_5!w z#}O9ZLFY$6{v3IJh9nt4sqJXLIwh*0W8JU%Uz6Qg}-F6e?!7h^uo+gwv= z-}5=8b=2od44@Yk!`C4pD?TY&cgscRqVaLirntlanoB7i;(acYA6H$QD2~&2QQ~2C zfOd^-Lqx}C0>2zxq%NY1psx8d#G~lUp)sO8JRXlb?vP26G;^`7&TZ|WGmgsWJGW@Q z_?qu~CP|X!8NO!8b&h!WHhPgYwJmfK@!@T*&GCh|4+S2FaUgl6kFQ>Y2>nK96P;g5 z^(VmnD8`R%M6T8sMXJ9j@iUHceemzN%=RMjw>ce5_F%0;vFy4ObGmvXB;`AO+VU|k zGz>Jdah+k$v}X#fpVexG<#Nf~pG}Rpo3`lL8i8EZZoQQ*h{oA zc+?kKj*yMdD4><+iI1&Tt0rV$(5kGw0t8zfB5)Jr_;`NS#}FWQD8ow zH}2uh_^>mM`b+0dQ6o@s*4=|Zn;VMuDe(=SB$<-wkz7YeYSNb!MX|;+XR}#n9TFes z_ls>ro*{iyxd7gqEed2+2(6GPiT%_eQx21Z1B~(6!jgekK(neYyNtCeB9_sh$dME2!W#`1S1uO5K2HLs;R3P!?Uxs z5Eev*31K$}&DzM;k_@)bOdy2EcwE33g*(#V6AKPNZt2SaPC}ApRRz}q z0IR&H1x^cVOo+8pl_-lmSO;sRTvb|F=K&F{1MnW!lqgoqW^sA%0|I(5K$`0M8H2J; z&_?=tQVM5jis5jG(WrG(DvKOt?LKl5rAus`>O=7G%|HiwY-!=&$DjAr#}!<^3i7qd z&cVWYTPJh5`1{VcmeQEWLQ9rF>bds}y#?R64AMKaF2mnl1ZUs4(3q0Y%Pl(G3fR|o zj-u!2Vq$!h?R^-RZ740i<~r8ho;pfX!9*#?W4A~ua})KU zU79v;Xk=_<{5Yu(nE`ZT>eBquzu4MJO&bnTN&g0LU>c8mop}*(z`Au`RiSKQj+ddvef5*RXTa$fj zY+JoNv`t*rMcR7adz<#lMeFJ-Z(DyZ@;z_IMfhm^*+*H+n|M<^x3SF9N9XYt%++fE z03ZNKL_t)FZR_A=<{;h==e@gWEf`$%ca=l{bSYqtKGr8Xk{b< zTM5)MCo7vj;|1!oKm6-U;>KmDW-a(G+EMzDSkF7a%cwH=x_rM@CcPimLln?+pQ{ z@oDESewNmYQVP~N2-o8&Bt$bfB=-p*s-vIxZ`$9yjobJHtv4Y8V)MK$vuRBF%IcxHjxw!3Ii1{*?*~51dn|KhHwfp)K%ZM?;KW{~B==Lh}WH>R8RQv4YyKDd%P_DGD&?yHB8xqZpg`sONLNqUlfY?xkmhpgq$(4WO1Q>a(Sfybpk6szF?%juk$Ol z`Up{vVf~%sm4y0ba~?}b#-rmpfO@S(Ln_#KHzf&#ykWdBfxy3fdzN{UO`0GeO`-L_ z(0}V3gx??wqI-^Cgr9ArK7P@6|2a=K-E>Fb310j5_@?rYmPit%WO zL6!wQr?s_rzlX0wFB((98iOPW5eF!Y5h>tT%LR0jK-M}`0T1guBw-pot0LN3i^3L-fVrcAOao&q;1SRiJ3BkLcI_H=cSaay!Ma$MCEokH zzlJduckbOsmSx!4*+E_fB*@*n{{(9-e()ZUr3t?N)py{bF`mAP*REICpAPZ<-9s2_ z@qhluZ$k=!>3EE5S99!+GW^`0;_)v+%u@)7AAa`-fRHfRJ|>eLy!GyzIDU8+hj;Gd zCqMd8h_S2pFc=K*Cx7xMcx8WtH*f9Z=;34Bzw;D7e(xW!%nN7~FfO17u3ml>U-;aY z@Y#3X#g%K!$qA2ip-~MY@>u~?+=Iq$9HJKkoaop56Axoc&7L`ZHG;3{d{8f(B z7u}@yjVg20GORFaQO5X);SOsNr+$_PtpOhaT_Z=Lw-w_y_SZK6o*qWxk z5IU_79Y{a7k@x+`5RUBNs7|F+2Q}?|K-mx?nj_(Xu*PUkH^n3*7d$GD&*^A1YCdmc z-35wK1RTW_yY~`x5#1%8K0QXBcVod9P28|Hj{PpyxSihvKDP)Z>8a zB2?{p&r;jDHxriuJ__wmr>H7}4?jF=6K0_nxO?VAC=H#BF-U^TKgk=99?cb%5?OKW=0tl5OZ5 zq*$}0_^={DS*);}pWyiT7(#?t!&1sM1TyF0Bqvl=RmWB>ppAvKrumMZold7sokeLd zU*^y?!mU9U4<>b+7rn{8xxC9gU#M+#Zg5@`^SVBd6_Ue~Bte#F7!}%135&TbK}7Qu z$NmJcCXaFcsR8K3z)B4-1x$@>j6J!Ce{fVVt;=ol2KBEf3Y5ko8&8{YjujpJ%-!Uv zL}ybh*Kt{tKu{dq(%cdC=DOlLBbR&W86I<(?jmWLHs^ah_FT4zJ$v}G{45YcbmR_x zF4JD7{?odq`wsVTB$`YnkW%9M_3O=CoSmI@WLj!l+z#TON-3PxvQ24E*Tyhba?@GK z5y|9kPpE0~fI2>2*A>KPJe^5dmSJ~yw}Tj`_Pr>P$#Q3uVUVR*uIBI_I4*!yT|KSm z%a~k!Dt6n6%=WP-A@J3xqoHDA#|F8PV=+cyQa~%)UkcD;jnqeo!tdR>MLs=@uRH>(Pj z5U|=~WQtlD+diA71L*M>t7VR&G*~=aG;gUvsjkoL}vh( zMfrDqMk8J)-BJ2H@1#zUB!dPG&OJcs-V^iHP3-{I^X}ZabEok-zjo~!-g)O8{LWXt zfa&Nf_=|6UA4O5&ufOxR&`RNro3CQ_{0ZKB?+p7RK;#R&_3Lj!X@yb_kmotR^{sE= z(Zl=r#~=Q`xc%98ad722Zr^$hS_%C4-VE>#PrmgFWWxz|b`M~y2k^GU^TU9?{>hzt zO`LY3E3fWhZ)b#^k%Usf)2B~^PWQd{nrHU+_c0ocundk1_}R~X2CX%o-o6blG^`q6 zl%>%7Q+Rv|&N;mQ{`(N{7-NA-6qsrtsfT~-ZAAzHCEK`BUJu}Pf@iZimaE{xsFg&j zMPqS0I|+i-?D!bo1EbLddwYAh_Sy}smcb2#1WXE-aQNgHI?0d?OjrP((8+;3La_Lg z(=+_?!6A;H&yb}lu3o+dsT8s_ML) z!0e>J(a8$)lVyh)Dy8uHjca)I)yueg?KSAywfEk=dqJVSDmozu_$8he_%`c0y-N$6 zBQbcHToB`yzBpc3Y=P{H_4`RuX-llk5**VYgutY>@F;aLS6=HY7+;_=64JC|LzWe- zg7w9D->kJ%hom}6s>bS8f7CD@8Y3DnLWyvTJuwM#^`x=q?Y0bk0wKWj=#r9~-sOe| z5?pw!ATDf^@Jn;+y$^M{HhC3CV;k4cl#8MWF`W2!^@UXmSz9{=tg9`n(luky*Iybt zoHKW}PFckJO^iCW5KS2%L|&x+sNtYx6VESn=_v zHq)A;_=%hkUbHRoJDhLP_w*e{^6+PXe$R=xj+k$>eQxXL{f&77@6R?jK2EV>gUWr; zdFTD)dzkN!_^jrN~%PIFI4$@FJmYUX%)3pmMgxG7&;?vpgn+fL0;Dg%AQ|6;ey{wMYBHdDIG01^95j z^NSpvNlGce+8R(*C$#hmqD~~Ilt79)1~7b(55iOH?Nbu)qI0%4JRy8gm($L1S(Xi2 zhsK!pX>$&X0_ah23n7~1y=7UhDea`LAcXAQ+n&6&>aW5x9>QCA=i$7Aga(vELVK~6 zn{&ILh=u}>?)-oy~i*Mxo?zg;~;asNB{>2iP9K2nZa4r+*4El;Xx?fpgc7@yD0dX3}~`i|Zs*({b1`v4g948J!u^Aj2UV_x9Bhd_wWsiX?C z9`RzDFA8@;a{#n50IwtF;Xu2W6%u&WD(I=rJUmKYANe@O3gbRhEkE;IRFotbY0uIF?;Q7@`0~Gw6VwOT^irM5Hayt63d@`a;Mh1QJ$~e zMH)8=*YSYp8v}kPr#hN2G_E!J^E01&H1P7M9r0eK`vsqKY8Qpy3v&*vmLXvsjSIii z#GwEHG&j`JSV(2DyR#E`!f*oP0ALR1JgoI7iV9M;{8}gl=^Ru&4kduJsuKpLZCvYk zf5%?pN{AYT?He>N-KEQ#w>L1Uk)NZPg$;+j;G-aqk?wwV_M^ znuTW}{Xtb#@W!<5vKB%BsTx8F3n5Bam%#ZpL9k{=xDu_=4gkEYf@iiV0SIW3G~Zk2 zV5~=JLnx;VgMcyC8jv2=E+K_$+S?WiSk1=N$p|$a$oMehnO2Zm0aC&9xe$QR9x`zd z+CqyIQYfgpfkhd@lVkvlsC6OU1J=U%0DI+qmEOY}gHe`Zm<`~D8Q_5j4<0qoq)K3a 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

EAaA-fKV;&ito@8>xY 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%0AT|^ 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 z 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

OT=ZR3`7}48+M%=CfG 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

+f3dz?Nt`~28UiK@Xc=c12 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 $T<~!+BC(`)OmJ)_Gaug5Bd2_}&DB}~0 zepw3|XTlP@{wj;8N(cPJQRV#lhKIx?L8cpw#YpUtcsE60)YV`!#GChX-03>dYpsMT ztZxI-vLMakEx7#wDa zXu_Q`Tk=hU5pHG#L%=@yCw4>ZEa}$yJU@2{3%Kb*ai4UeqCPqv@E?X9Mfr#QG{2p~ zdGfd%zc3qn{lry{pns3+EBgbTi~tQ1(V+do6P56{y6_AZcX;* z%~YQE_$1egU`zPuFt|ERMlPQwpD(mh5zHcZOVGf06`O3%I9J`m86GfY7o*6y0(0Re zZGn=SxZZE^xhXkRG(^js7cz4F zRo8{!nphHT^VRH;HmkKzt3PojkGv7tUYO{0n)UiZeTY6=UKx6;K0LeJ9d0l!r0WUj ztX+8ff@N{ex6e(4Ja18fxtIX(3;~CrM}7D(LGBMJzRY8qSX%?zYjE9$3o>ay*f&Xg z(wGHY!LbVSgtw`_9CCkMW4UWWm6O4`4Qo8Qk{noIq#{f)%#d~IeUMgRE`wtzk=!(* zJh}K8?_|WR?LTbxc_eXb3)==8KESTsvp}kxyV^l)?Y?YOcP%`wu88aR zYy1N5$vc%NF|A{j?wMq%{ZG#C-o5lxmP?%luZ~kwxs|0Q$sa}F_`y?BRz$uK4Eg*7 z!70q8qKXr)*AK9exrC8HURe3*1?R4}pTVc>|IRPB>x0;BikO<^wTok~pH_hui{YWv zUJ6pR%%k*8I&-eg4#=8BK)_@?m?2K1`ChY`vLMGq6Q?6+kM<2 z&y0zL%o{|35Tj0AYbi(5biWVz!ZV;viru7>^6IIT>!sS88xpt5r>E={*bQ@|#?7Q2 zk=F0pe>r>9+UGNa4NW{_25@1IVPTpF98_W~ zRp=@90@1$(4{NZU1qgf59aSUA%qLX4f+BrY8Ay2w%GT16|5q&Ud(MaBoW8~_|BT(V zN9lPJb2iu6Hry4CaX#71pSWt6V--^Ade)x^7Ip<++hP+;ZqEUBLdPWPC`53bsV1_^ zY)D)!0_g{zLZjbmIEua0%kSgfppL0&@uYlGRS3QaYZklZDBcHouf^&Wna%P(%Lega ztM=Jl7hSyCn~`XQStYYQq7l$d~!0FP4n=*fB*Kv=t#VPUWfLTjVf}dh(n>EEL)r+6(nV zHbiei<4S_hfZrxeeVr(d8aOg7f)P6VXnu7??CZzMg|CWam7MqWF&y{b?k(k|t(&gM z;1(S_N!Kn&3wc-u_q^ETKJ0q?4*?*W?4P-NiHe3Dzl`ELpC6%H?*2FK=M7c9STFjC zeUZ;qbGJ`7T~Pd@%k){&;^JZoEJ4t1vgjQFGZDtaLe3+JX4$Jw*a|ei^c}EJg!=3W z-o~!oVgX!~Vw7v0l|5-*(pYi~;ML6RY&+VyyQb$|e<{Mj=Br)77lFlj2h7~J=zd3j4GQ0MN`3K_EI=oYU<7fFsm9~f!kx|eqXplL z^D5F+?(w@>x=HzwIbem3)D~wv#*QTUNxLxN*`XY4;w4((j2<%MCR4vRl-FRF z+OCTfDzcI zn3hoVE4lw+x( zLXY0jT?+{dyB;xJ!FGnzvV@Ryl4yZrz7mT$QQ4DR+rJ&^g-yfSYa4 zPRH3M-^sU>h1QRbV1e6x*znHOm7t#FR#+uJAD_ccUMs=pba3jhgoHz!VmN`6TF9gY zB2R{RD$*xOw|p-ON=jg3zvFa}y=Ox0!V*iR%Oy|Bb<`vOWpnbcv7juiI`mfNMDkI2w@Y$gXJg*LtBPSSg?E45 zz25JR+4-4-t+hzSGvI!-qDR<6@Aomzn*B!WVcMX-+dP!Jt1u;CGD0IV7_-?4WE!jT zG@0cup;Mkn@g;B)T{dVdNTBY3+f^0g!3|fW@u7u3MxS&4^mO=9=4c z8x{wjRw*?e+os8XpziXyK6d2kEjssA=Xj*y^bbzzgl;{rf1yTKa!HNK1ayvrO1|d( zMCxQlCp_Ybq7AZQc$42K=T|eP#$&9hBS(uzg)K#I~O(8mX39l6;WWnFDl_PnSj3+69fdEk7k7WvNd-2QPvF zqMiviX&$rUP3nFEGt;uJ`9F#zVpWcVp49M7j|1|_B)7q8J z+9Fh3X=b;KTM0!w?)z?$+fJ-iUB}Nfu70IKh|k`79>c*X78UuvX+Utufv|$;@X6p^ z#yWgV6Z2qawZ1VDOsUE4vx|=Bilg1)wGk%mRu4H`TZZ$X4N0-@@xW@0ee12vd{-lz zgp6As!_^S+4<_@z>tmCpJAo-bDu=N=5@#g~Ey}OSdiP4bBGbCTj!R!f%0|tp!n`&& zz*fUcW|KD!RrZkY%7{))!uJcwOS3=I8f?uER-G%~kBnLS#`Jb_&I`DZtYw^d@m@@> zqKIHt8|9JjMQi7Y3{TE|u%FXkIcV#2B)Yctcs}Fb;9D3IT5T`xTD>>J)T#F!N8%;u znS6F75bq9hN~n7Uflzc#V;Uklt%`xzXaelCLQ`(DlK8*tyf=KX=)$|&Z(V3q!R z#fxJ?%o~qaYU@NADh8vhv#~iFMa^-jSZGY05MqaTy!rXOuypFIpUK3W;XfL^tGRZe zPgJ$!_Na5RB?=YV5jY|d?vf&0D&b}217TIrS~03AB4s;(!O`)Y$m|G3vx0PUb5r=aY0&eT|6@*x^?{I! zrU*^1N2YkcBzxleL4oXqLQBj#mESE5q>r$QJkHU@C1TPd0(L`XJCo9Kb-(A}at@De z-;TtZkKOF{k9ly#`^NEZrVMO~0Ho6Oq<2@icW#3hO}DYgdA+&!jLwC~jv&E@M?XQx ziOhN3s*)~ZVh~{RK4J+&9I?o~%2oxd<)jk$&dtSpCWemJuG)O%nm8m?N@FmKO7q+5 z>dxd%d9dNh|MPUI@=TcN{Nj~tfl<)CehBx!MIn?9wD;+=T6@u;0+v_6h_H};^GRU? zxFG>Z0np@knlL^CtNO&YuYBa2H-6BY<#Ex+1C{^Lb!m0of4lhSr+I^RayV1w0ptvx zS9P6d$R#7%`<^o~4C6yPVXUXC9npZciNELqxLEo2UW$!V*vshzBx_N;Bwcl@_}@=o za9{jaatLBDFP9~r6f*vt0%_Wf6Deqe0xU1zT`XI%geiS8UcK$6mA5Q;7tY;~TsScb zCoVty)g;r%ew?#Fvt@;V0Uk5rPrdXI6SuJ`zyK|y_i@53y!%Ed?>4m*siTnP#ZxpdJ}Ok2-Y_JF6! zJV{9Dc7be_4t*2ej6BT%&TghORxxfH?{_#0#x-I(sUA)~=!HC{lczi@3o`v6f)6$( zzt!!y&3;(R5eUHVq*)GHeK#C7Pf}ZnM3N=V_~h;#E3AcX)a~LfG{KW8JHM16Hq(Gb zV5ii}Sy13Ie&{oIC4*m9ANdy1re2JE@Kk8OPU%ksn#vk@fY^`MQ6~L; zd1b_-BwDOhr+w!lN!$`M79*!0-h$S_bJGX)7d8Tl;l2tr#GajQz7{c#)=_MFk~aFr z!uS}P3Xyz`F%AX=G#fTM$fV%(sICE{0TM1OebMzx|8fMN!2{szd z(A;xQa%@4R8?0&c1Ui{fUCqk3z)@Vu64O9>-G~FnZI8UdfVOQGtHD?kzRZuQu|Vax zLO(Op6#n{Rkhvo`6gTTPO6#uBZdXRc!`_ygFXndV`LSTsqt{h~``YSwSA3Pw#9Xn_ z%7Ol68(Gt8ckFmqSf66J_DJ@d9AOBXNP9f6itc*Q%4vEp(7ZkyJ8+JWGW_x3HfL2< zZ|+v~Y3|vx;0q11_g;_VXDSFTMqqHC=LL z{URXLy>jr8;SWgeZ$7}5UFmM&)jYoPiq*C#cg}ss9aBn5fxEun3pd3LmlBeSKkORG z7ne|k@JZb$y(+PgV>3dsng+ZTQAg8_`Og)JhQC>L{X=k3Z2oF%IoY<}Yqob_%DhTj z^&kbEs_1g-w#0Sv;^9~Mv=Amo8)5hn<#yPONWYE1fKyHX`5(-_j*rU^4|J$-?Ot~v z4ZW?N;16E|F<(dBBV*e#9Cz1Kdi3drN#^YJj|VC1$}S1fKfPAcR{=IL7xQ~?ud6zq zov?*VKfQ;5F+IX3m9GR9ldIo*TN@6Wp|NBA{LFUuS0?Xm0M^R=dAxs&p!+EZL@DBf zYJ$1yb%6nF+kDP?Q1nqC~~%Rq+_PbCWR>R3hXfKA5xZU3|fe)Y}E2LQ%& zVfW9+|8H^LSm(zSMGAbsmD>yFmN4~4ffVzT$AAwqR3|Kt{_js^F*#S*85`hD$zGY^ zEI{5e{Usgx{&sHIlTe_>kzz~JTMN7a9(5#t&pe)LTSR7f=% zD-b63RqhV)AMdOYi+SA|=9GR3*ztyfW4hrLu8SMOI0JaQa}%F)_wf1h8zAot3QDaQ zG~C5Ro?9}dH3NgcD}7CF0N1AY2Bgi;ZRnK5kM2@c!z%OqP6gxDvOr=pJSiNhzDP$d zMi80Bu$ZChF_+ZW)y%Z7;8?l`z}7B&NK)j%j7XE9FNA>ya~UAYQiE{*Qo@vS+(En; zye#ujC;ZL_M4j*LoopKhR3?NL;yMsg(ka06`p3u=;pSiMSYO+Hp-X~X5^{$IyIXI7k?2B6jzs#~_mzmj9JXX`s~xZ5xdPavX&d0|XHji2Q{ZAa*_GgA+`ooe zea~?_G3_S7p;w;Fv^N#aw$N4WNM+ ztB8i-0?IxgtS|kBuLtT%AvQJr#u~Y)_^oOc5lM)daCqiG-xj9DP)4fT;B1

SVN$ zx$de14>4pXU+f@i+G2?^`Hf6KB#-{qm}$BXDVMgEuXiUp+~e$wF@TcVi#Ma^H)b7U zLK=E$rD2S(=R@?I{=ljO=r59s#=1viHxL|k9e_2GVS)7-VRxLee@Ond2M}3HA*mAa#LV)s{4|Rn*)#051J!Og6E^f~g-Mz& zfC?gvvi3Y~_C$MZS|I1=m|g8K)aam%Shn^sX0F>))GDb>G=M4d`Sn)|U)Wn?{mG4}Yu9?53ldcthVpOU{v=EZuFv5|G15k^ zSRZ4dutN@M%ic04qa6RJV_r5##|v~u7z>@w8%0hRUY-=6)DG%iG+|2SUeN0N_p0sY zhTB1Mf!mmtHElR9ILnkC3{DErSYR=EKlx^F`A>*yt<=%I~`4jPQE8`$E8X$0GzU)zcXRQcB!K>H>`A;}t zD_IwIX8?mq&2M{g4d7KaQ>)}vcMXj!emO&;8lAcx%6!@ZCw?IN&ymY7Y*c*Nya$G9 ze4m9teuO_Ub=5X*iaoB4IB~ZX!Ts%5jxRD-pw|j!VY%Wf0YnEvolhs6zl>92`V|KeV1VKuuX|#r^hn?2SReHxVlA@XE(W zAyr*#!UlMgZhg|g8dM2Pine+8d%Ow7#W5pVr{+}H*7BUl4Q!Um-Ux=PD!b?5Uw*$Q zLsebm4HH#ld_Sws`9n+Lm!@C`hfbxSwS-($J`bZ(%&(tPdV~{>m~W+qYuV6?Jx{s9 z58_4b7&uLZ>>8rA%0gW&z{76(RddRs`rwuF$4Eg%!{EsN)2=Y`(h&%&PRN~G}1!P%XnW_ai#&!Hbj5Gv8;H~rx^}*$u zNJ?D#h7TtL_;o9Zs z+nxvD3~wED6L6Rga<^gYZLf1PAbAfBptc)o&_7!&3I zE-5mTO<3{u-R(DC1}h|*SKtw3YWZBs|HITd|X>oUV z_fWiOfda*y;_hz23GNOhxD@yEuKj&$pYt!tuUyId$eeSGdmtzQg2s14)VWQQSw|-@ zNdg+YH&e6-7MM$?S;eXpTr_$i#u%P-12x3`-NOCV=8CB(Sr8KJ9Q z3_>4O1ews-%#VIg3I?d8sraEW0&2oQqM0wx^}y(tqcZn@e5uaOu7+h)EsF8@F;tOj) znme!Fjdy9yJ8j0|lZwndcg(sS4<9v(S%Mj5X&(HSe+nUA(fOfT(%I};1Vo=^9ykBm zB_Qur0Hmbnk@XoDv~H3%q`#J_1cTS(-dpie3hKdu3~xk`dgLoiNWX0;pIjUk3fV=_ z+;`>?Tm~k|bS<`DoN&>!F>^xMBs`~hV>Z&}J*vSOKasxA>Ry3071jFMcewF#a`Aob zE+*YHd=mO|%cel)=yhtUmnnzI`W=@Cmu(-U1cS^Bx1W0Pt2d#RiVoD1Tm}~^>KLSL z#b^gyqXIcYX&VlW)Z`e)3^iDmU#v#EyRz$QI3%5BcB~E^YY|eutT)4XvCAg*rJ42C zt)xw2(≈{KFHpPUeyUm_GS&5C-@d?aqJg^^KoeFPrEEi{WYK>7&;!?CVRaGH2#)OJz!SV$ESrIE`nk652eu z3B=YH8T#tqqC}bbfaYkS<}WGXD)FR&APF(Lx4j?naBK*u{;N% z%Dj{MJ;ER4EAQ84nBUCAc8xeYU%!%7%PDiwnClG^c7#?@Ek6zY{hSr_4LE&o&$f$F zvRIUN_=%5vVJH#=uP5q*M_mS?lTWI$dTR6G$f&#!Tb>}c!d_qE=mFUTV$}Dgy!Cwi zp%MH)#J=~J2+AH~#M4B)`=g-+qwr$w+sjH`C93N@nu6z9pMg>Sx3JT z+iy24KMnV&!zPwQ2teJgXOi#_wB9$cnT3XttRzEbnm}+Dlpl_Vl0R{&2uG~ zPFVp-Sk!ghU7qYUQKKjqd)`yk7piR8_8R)w-5wompR# z9CISx_{Oo;S->*g(zp8!A;2&Tn9yOO1Yz?BiSAu_A73Z*>Fcm0$EmhF$eH2CKDfPA z*)e@%$*P1ZfcP=P6wSnNh2GEu)qYwc-*C0+u`1e9gz9_BGgV0>ZjV*_6heB>i(m1p z4qo`%}a;=&(v_#kFuyWy^joU>M-4R;FIVP}*xb9I>^HEA>8 zowBpa;}s-zs0@TA!q&8|(|>Y_upwuC;8H8Ka6_E>e3yfN*%be}GkwgkPMSax3F%lj z#_|)!sf*M{FoH%s;USwrK4iK;9;{ac|8++_bbp8|J=nipb&Jj7O(_n5|Ll zYMmvul_BY*Ty4&i(=w1FhIVPSo}i86qC1SvU_oh-o7fGN5q{6=*>MB~-zqvbJ z>auu5*_GkFEbq-RA>NDKT5qV__c;xb?mX4ONKr8i6}x!8G54ejplTc&l5#8b4zacC zMaHy=C?s=P1gQuhDuh@I%QWlf>camdN|$5q!ib2IUMndP62}I*vPpMnn}7`jB1l>^ z)YKp`xK4p>jLKf8FGy2{yg)Fi=Q6c01eYAi2v-Ua8e{y)7uTQJpc0Y#d;BY0h#D(9 zQF`^r3zCeSJFv}ujY3jVcy@8O65^uU?g|;Qgz$FWu2Yj?>hAXKi?qj-PZWOw0qCcR9eD(n}bW_SDM`L_c;ds_M-pG?Xj(P&Y(sy0inDK z;qAu$p;jK}IO0EUcF4sEQpW>*h0L6ovA!SiWgMA0sQ81&{G&U;JwZ%g^tBNUYmtc8 z(*&I{FUV0}m8n3duNN0NAi+ny2cN^(rtPSErxV%d{*no3k^A1&e73&OT0TENhn_Zk z63zPS2T1MiFZVx-Sp4rO>*+oU8@G+$6jK#p{NYB&Zm;U;ZlrOoyM?3ag1He@S4%ts z&G5~x*Q-#L&uZ2|C3E5UtyE=^Zzm*uwEX7PKdOJk>gT3KAXIH$PopF}v#v~h09+7h!x;pr8~+s4b#eNJ*b@ze|+WbB4lMV$GuhS?>x z*zJ>1-O(V+gjdLcIEaS5)~p#3Q`wt+51DcDH>3QGVH7k|71s$-l4+_hv>gtZHNXPA zlV0#y4TJvwc%?VPsFqxGdOrY31ze>3N%V&3Nd+-v@?I6F$?^V^x>Fctk%k-_~fClc%f~)hZ@cx`=-Cuy4FbGT{S5jOcQATcIg)S~ZP0d2b1e z7%J?M+my5JZ3q#Lq*R(r1HVz3MD-&1THusZ^_dn`>m(JVy|1&E+@~Z)3bhghN6P1x z6(AW~VP8lGbTWSiq#y3&cy-bfd}kvP0y7Ci`I7~(oL@b@0{w;#I8LcsfLT1_&vB7b zmiXLT^$RBR`rtWt;fqrnTZ^7iICfKBixT|f!>G~0J2|Ki35wMUp9fjlYs^wrF~^T% z?}DSbPT)YB^jn0@ezy52dUPps-jSa!}#AV)PKYSMSV{cE$}5D;tLHR zkdloGG#sX*Dr{(gSu9*!6A`g2fD1VA;}(A!pRYN9GxO`+GXc zS7n!yR)1BtX3Alv&pth{i(Pz)r}~Hk(OuZ;#N#svl18L@6#b5zQkoGXVs=Ho1^5L^ zN^0=Fg1%{OygbFe2yXFp8?yDZqsFoul#`?RdDVn5#yDPFG&-J7nYBIN@t$37hG~u$ z-YUK9Baw}D^CixC3ZyyI8U0SiO*bJO7(^it<6U#!_WGF&DRzYC6*U}DE>I4zqa;Ke z)+Qt7_R=!sOf+net0agjf52i1#!ume+6Id(AT!L>_Lh+f#?wmAnZ6LHMA1fc|E9R5 z;9-ZGWxEDCCt*Km(dMLocI`x+F$GbNa&#-HhiBV+2M=+D~!vowB$tCb<&?D zhK!IU)vpQFd6Ft??C;C|#{}UZPuKWQn19xuIu=c{9@ejVlO>?0o>)&u>kec-GZx@b zv$F)wyNE@7^L5WmPAGlerLRfJg>dDlDOtpNs!K|S#^uYH*I!PtzzV{q^=n$I?Vywn z+V@Wiei8xTA+4TDnRPy)Lmzm1p-Xw74(k2=FfkGqk~vq@WQE@21zvq5E7KeO?ZyGG zL)WAbm(8+!`#Y-+rT=OHTGt#bUMxs;Hi-`f%)i(3q-VEB<+IobmE zG7^4VzcX~Ow5SKd##Y@O5IGs^7%tWgL?iJfjN$m zhm>lXk>#~zNbMN^Ab;&G-q8bov`IXtwuYtd4OgE!XH3XScV5rwz1>oAFAC;dQu7^t zhscUwn}J_^{Rdx$_Ptbnmn++OZQB?QXM;Q=jc#Sk>X9c^UKeGC` z<0Dit-zqc>BuTJ6r(@6u^a0p2R^6{?c#vj`VS?@Rbwf3GgEywPY0C3rWA#0ZeT+P= ze`N8a=v5gwT{h0qg<&1g881zkKOzQRGEQ%}uLHK$-ud}*5o_C4R&SyzJihq z>UJ3h&X4ytK=t1|FOSkEwRAx$=J;g4-IeN@wb3!Pelh-gmGs~f{{Do5b`N>=S#yrt zn$>p&)jNV&oC76mCR}c>E*qot*c*WTMcXJTDOKxNp4Tpm91BfzWVQTr>u94h!7OG# zQdN5^Z*>vqIDS4`=|6k?(@z;|kN$=O%7wWDfTbMG#W2=n({PbWtzC8VurH?QzenWq z@av|08(GKagsyb>H|q+_tph?VL1$DzRaM=VbT~EK!X>R;*;n&*nBMmN;+t`PfPn{J zgeb-pV1hC|n{5<&HzINSkxIKuX{l8q>?0GrC|$!D5K>mJRPQB1#XH=e;58e*QdLP5{3tN?QIMS zN8a0bElGDz`3+jO0}4mSCx(K){rzH}B$0-_R9ZQ}49mN_zqf%VZBunOQ}N4ee|LXq z2%VX8Dangf*!3cbH|J$~A3aeu;~%c2BrFRCr=Z@yz4bIXrmNi^+WI6d_ot=neh8P27QVG^C|{D23YFh(FM{)nkJA}Y4)HY?C$?g9uA$0Z6ljiHL12=e=`0RRDIGK za_|=~G*f{hT*iezihQt?P$Gz(=R-ePKwmBowCO4mV9(~`{OUEhdGuff-T1zca?Bp_ zwmf0xtF*=*kcnJkcIwX%MpcielBEVbMKVY2A!x(NpHAv5mo0Dy7O0}V=aFm9^h8hH z0$9RMzlv;yW=dt@g!RT;KNEHSdrMoq+RB{#>SR?A+Uw(Se%tNGQ2N$PD~}{|(^X~b zwi}7p+@RANjYf7rKs+%T@M)TAg#y=mH9!~W%`c%G2M!UU;QLc1m9xUnM)#*3)=nXhRo* z5zRajXU2r0g_u`2i}B$Y(O@L$9!4yam~S}xZcj~3U^iHOO7E~j=CD|K>D@`kfVvG* z0asm34tD)aoa%Bi9*=Ozvas0Zsm~HL1v-6ee5$ZFh9wg4bN;;cOn%z$UMS{&+|d7@ zcvjGdKS2ji<<7kRhrvn5b0+MzZ|#%$p7`a7Cd{l)6lqB!Nip*qU=snzs~+K)HwhhO zpg=SfM@*8eKL-b(lJku7?Y@raxc6z12GAr>WAf7T0uc zPA({XWDn^lcdp^r!1zz0-d29PDqrEEmCb*eEw+1vpBTPjp0Mhpem8DB+F)j13@MWs zI{w5yp`!vCB6Syu z-A!*?=bl;>4F^ai1iuJc$RdF-72(T;<`8yL&?(!>J#pox*RMN2^Ko8-CmS@~qQhQV z>t|uxOYUXMH=VJ*D2)%k2@Wk+4?ue9T#gy(b@W{vlU0E2;oA;Wfh!k<-XsKyn2U~c zBL9<{i2dTy7rg_A1DgVZMD>XlGwMV7;0~p=uq8oq{N*K9W*n_S-J5|jGqy%kq0aFN zA&U({dq1pq5|2K&H{4KTDK6G1tHA3ot0bt~*Q?e1Uo7bzvXHpUY7t2LBIIka4MhDix#TifF_q$#mc7iWABERi= zm;SImIyINu0iL_3Hul15{`JOopC@+x&sd8a>GD>Lvued4;zXW|e;lBCRZ5bSWmp(tML@tUnbaT&UE?n!1#hz~Eco${)&wVno zeEY3T@|)G0e;AeLheY($XDsU<8+By5hf^R}NgyB-+1 z)`q^xSeB?}zdh}|`b1zK*ZE`*qt>EVYS_c8w;cPJ_1=V9jLjX#TCYW<-N3ze;Q+?QHrEt znHfiNftmb#$>K%rU^>u9y>X8k>}!MYhT2bgH}+M}~AF3%SUVxh;IoOw7nI8GP4V_4A2 z0IX>EkSxvT+%=oqzF;D^)Pn6`k~K6siHREv$e8GESyW=w@Z@uK~t4Sn($6t)lQWH>X16R-xt z;|VPBZl>yiD+N)Zmd>A;4*fQEo+83cLgdV>%*+=5B4=xQY62v~<$B#QJ*_>`8Vvlj z;K|BX&QAzh{Ew&$rhW3gAgik6r7JH0U<4TE)4YFvl}D7$`JSO8BO`O-r=s>27`OYJ zCW`eTTp_Sml9=!j? ze%JkZYN=rjV}K>IflSpldrX6ap4juJfKefkRccnxuZ+Og?P@Lk?@Uc?7W>C;>Y{N- zZi%BBlO+=74ePscow4^+aaip%Tx^go7X;C+F1C@N3B|d+39?NeJBjzK5?LBNra5t8 zvp4U;C_lfXP8=$Ugn9ctyGWdxE)Y^EJ^Xi?2kb2YA-mVIb@OJ(qvU_tMhgi zE8QH6iLTl9VH8jZZ49W_$T)^p?#Sq?qhzibEF~06W^}NlJ@s5OinW(k9xn~;81SM@ zVEI&(d@x;m2!-U5K$CV4(T^_>@4{NYncnU zCd`cXNoE;O%?{6*%dq$Fki)D}MAMxhWG~D+KqiU?pXpBM(B7k;r!5VhWgaPtS#s5O zEW*fwo#s*@LP8p?zk(+Rk!1!h*a<4~_`u-@F3rq6WlRwFdLzD|kVsQlsdRSg`f!aK)Yu)Vr4~KIXISf=Nlm(R`^1v_?V=FsP_{+Y zY}i1DHO|9GQQS6uctJGQ`Kj8}g4S!X@8m)BMy_P-qIU2~5&xHl?d}*0OYEWh#r~Nh zt~FmjH;*jNx>X5$p&n{d@v~zNvv2kW32Veii?`uYF#V8Sj~Rk~w#nwKm(vlTt>@nt zB@zJO7v_~))4A>UET}B<&Lwx@AG0kG9si!q^B=@+K1(^;!vj>3`1F{oS>(S(Pg7PM zGOZ4bnH5Y}i@TPW*o+c>X4d!^bwQpmN!bMna!OF(i*Y(XL#*g@M@nYV>#^kOp^nzQ z{53}!+22E#{bd?h&Fp=y*vNfq<#jfnH|PR^Q4p3nSIu1U5fA0|6GoHc=6A9`0F_dl zKnn2l5Xam&U0pS{Yt@~LG$D3Z%6tGBtUeQ21CBAi4NkxW7 zq!7-`*)umzRt9y<`;`(KHmIZLm79V_dE@ss*~@?c+$%4-A!9~jG{!eM6@c?#_6l-o zNB;CGxFV;2^rjE#_;cUQ*3Y{%O7EX>A@?xXO7O17pIRxigHoTAOOyZYL>(V>(&s&; zxZDpgH4Vlcf3$oRu0@u4%(E;!`Y!M7xAxz)L7D87<|kS~-5@9O_tCH7HTfJD*HNc9 zGoC93CUP?jQXaOM-xIC_aRoVvJ%((qQ{=Ua094vFIjMBvo}n$T-_6#VeG)w z1Gw)uH~V>pCx~a%tp4IBim#9-z7{y*{pTysMD%0DIk`M~U|XLpacL1XHv~64Sd?6f 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 C@luU~S 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

vx;o}HbspHm)u4Q=0_RgRb=X9-TnVR$Pa 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

+j1DWJVqVsWtQdyR;dvruz*O7P$8CYhs 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


u88MgrW0XsR>(XAiGFO=ZrZ#9GU?c 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
knqAXjeq836_{oSblQ@4hs>MKRBcin?0OCE1 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

Gjg=*w3-_lOqzsK#c)u-Nq0>ga(OrVBQD6O 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

AhIGKV# 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

)*6j@UqV$t)*pBtDnqweqTC%p65=wUP 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 literal 0 HcmV?d00001 From 08e590f3e4874d9665d28fa32d99fce263543e87 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 15:08:39 +0100 Subject: [PATCH 10/70] quest animation initial. --- d2common/d2resource/resource_paths.go | 1 + d2game/d2gamescreen/game.go | 3 +- d2game/d2player/game_controls.go | 4 +- d2game/d2player/quest_log.go | 74 ++++++++++++++++++++------- 4 files changed, 62 insertions(+), 20 deletions(-) diff --git a/d2common/d2resource/resource_paths.go b/d2common/d2resource/resource_paths.go index a18a196f..ed74d366 100644 --- a/d2common/d2resource/resource_paths.go +++ b/d2common/d2resource/resource_paths.go @@ -193,6 +193,7 @@ const ( QuestLogQDescrBtn = "/data/global/ui/MENU/questlast.dc6" QuestLogSocket = "/data/global/ui/MENU/questsockets.dc6" QuestLogAQuestAnimation = "/data/global/ui/MENU/a%dq%d.dc6" + QuestLogDoneSfx = "cursor/questdone.wav" // --- Mouse Pointers --- diff --git a/d2game/d2gamescreen/game.go b/d2game/d2gamescreen/game.go index 07a826c1..2b339a01 100644 --- a/d2game/d2gamescreen/game.go +++ b/d2game/d2gamescreen/game.go @@ -304,7 +304,8 @@ func (v *Game) bindGameControls() error { var err error v.gameControls, err = d2player.NewGameControls(v.asset, v.renderer, player, v.gameClient.MapEngine, - v.escapeMenu, v.mapRenderer, v, v.terminal, v.uiManager, v.keyMap, v.logLevel, v.gameClient.IsSinglePlayer()) + v.escapeMenu, v.mapRenderer, v, v.terminal, v.uiManager, v.keyMap, v.audioProvider, v.logLevel, + v.gameClient.IsSinglePlayer()) if err != nil { return err diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 2335cc52..f1fc3b5e 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -124,6 +124,7 @@ func NewGameControls( term d2interface.Terminal, ui *d2ui.UIManager, keyMap *KeyMap, + audioProvider d2interface.AudioProvider, l d2util.LogLevel, isSinglePlayer bool, ) (*GameControls, error) { @@ -207,7 +208,7 @@ func NewGameControls( inventoryRecord := asset.Records.Layout.Inventory[inventoryRecordKey] heroStatsPanel := NewHeroStatsPanel(asset, ui, hero.Name(), hero.Class, l, hero.Stats) - questLog := NewQuestLog(asset, ui, l, hero.Act) + questLog := NewQuestLog(asset, ui, l, audioProvider, hero.Act) inventory, err := NewInventory(asset, ui, l, hero.Gold, inventoryRecord) if err != nil { @@ -728,6 +729,7 @@ func (g *GameControls) Advance(elapsed float64) error { g.mapRenderer.Advance(elapsed) g.hud.Advance(elapsed) g.inventory.Advance(elapsed) + g.questLog.Advance(elapsed) if err := g.escapeMenu.Advance(elapsed); err != nil { return err diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index e064eb11..1d0eace8 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -71,6 +71,7 @@ func (s *QuestLog) getPositionForSocket(number int) (x, y int) { func NewQuestLog(asset *d2asset.AssetManager, ui *d2ui.UIManager, l d2util.LogLevel, + audioProvider d2interface.AudioProvider, act int) *QuestLog { originX := 0 originY := 0 @@ -106,9 +107,9 @@ func NewQuestLog(asset *d2asset.AssetManager, 26: 0, } - var quests [d2enum.ActsNumber]*d2ui.WidgetGroup + var quests [d2enum.ActsNumber]*questEntire for i := 0; i < d2enum.ActsNumber; i++ { - quests[i] = ui.NewWidgetGroup(d2ui.RenderPriorityQuestLog) + quests[i] = &questEntire{WidgetGroup: ui.NewWidgetGroup(d2ui.RenderPriorityQuestLog)} } var tabs [d2enum.ActsNumber]questLogTab @@ -129,6 +130,7 @@ func NewQuestLog(asset *d2asset.AssetManager, quests: quests, questStatus: qs, maxPlayersAct: mpa, + audioProvider: audioProvider, } ql.Logger = d2util.NewLogger() @@ -149,10 +151,12 @@ type QuestLog struct { selectedQuest int act int tab [d2enum.ActsNumber]questLogTab + audioProvider d2interface.AudioProvider + completeSound d2interface.SoundEffect questName *d2ui.Label questDescr *d2ui.Label - quests [d2enum.ActsNumber]*d2ui.WidgetGroup + quests [d2enum.ActsNumber]*questEntire questStatus map[int]int maxPlayersAct int @@ -163,6 +167,11 @@ type QuestLog struct { *d2util.Logger } +type questEntire struct { + *d2ui.WidgetGroup + icons []*d2ui.Sprite +} + /* questIconTab returns path to quest animation using its act and number. From d2resource: QuestLogAQuestAnimation = "/data/global/ui/MENU/a%dq%d.dc6"*/ @@ -187,6 +196,8 @@ type questLogTab struct { func (s *QuestLog) Load() { var err error + s.completeSound, err = s.audioProvider.LoadSound(d2resource.QuestLogDoneSfx, false, false) + s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) frame := d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameLeft) @@ -228,7 +239,8 @@ func (s *QuestLog) Load() { s.loadTabs() for i := 0; i < d2enum.ActsNumber; i++ { - s.quests[i] = s.loadQuestIconsForAct(i + 1) + item, icons := s.loadQuestIconsForAct(i + 1) + s.quests[i] = &questEntire{item, icons} } s.panelGroup.SetVisible(false) @@ -268,7 +280,7 @@ func (s *QuestLog) loadTabs() { s.setTab(s.act - 1) } -func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { +func (s *QuestLog) loadQuestIconsForAct(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite) { wg := s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) var questsInAct int @@ -282,6 +294,8 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { var buttons []*d2ui.Button + var icons []*d2ui.Sprite + var icon *d2ui.Sprite for n := 0; n < questsInAct; n++ { @@ -307,7 +321,8 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { } icon.SetPosition(x+questOffsetX, y+questOffsetY+iconOffsetY) - wg.AddWidget(icon) + + icons = append(icons, icon) } for i := 0; i < questsInAct; i++ { @@ -338,9 +353,13 @@ func (s *QuestLog) loadQuestIconsForAct(act int) *d2ui.WidgetGroup { wg.AddWidget(b) } + for _, i := range icons { + wg.AddWidget(i) + } + wg.SetVisible(false) - return wg + return wg, icons } func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { @@ -355,16 +374,6 @@ func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { case d2enum.QuestStatusCompleted: err = icon.SetCurrentFrame(completedFrame) case d2enum.QuestStatusCompleting: - // that's not complet now - err = icon.SetCurrentFrame(0) - if err != nil { - s.Error(err.Error()) - } - - icon.PlayForward() - icon.SetPlayLoop(false) - err = icon.SetCurrentFrame(completedFrame) - s.questStatus[s.cordsToQuestID(act, n)] = d2enum.QuestStatusCompleted case d2enum.QuestStatusNotStarted: err = icon.SetCurrentFrame(notStartedFrame) default: @@ -374,6 +383,26 @@ func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { return icon, err } +func (s *QuestLog) playQuestAnimations() { + var err error + + for j, i := range s.quests[s.selectedTab].icons { + questID := s.cordsToQuestID(s.selectedTab+1, j) + if s.questStatus[questID] == d2enum.QuestStatusCompleting { + s.completeSound.Play() + err = i.SetCurrentFrame(0) + if err != nil { + s.Error(err.Error()) + } + + i.SetPlayLength(3) + i.PlayForward() + i.SetPlayLoop(false) + s.questStatus[questID] = d2enum.QuestStatusCompleted + } + } +} + func (s *QuestLog) setQuestLabel() { if s.selectedQuest == 0 { s.questName.SetText("") @@ -466,6 +495,7 @@ func (s *QuestLog) Open() { s.isOpen = true s.panelGroup.SetVisible(true) s.setTab(s.selectedTab) + s.playQuestAnimations() } // Close closed the hero status panel @@ -487,7 +517,15 @@ func (s *QuestLog) SetOnCloseCb(cb func()) { // Advance updates labels on the panel func (s *QuestLog) Advance(elapsed float64) { - // + if !s.IsOpen() { + return + } + + for _, i := range s.quests[s.selectedTab].icons { + if err := i.Advance(elapsed); err != nil { + s.Error(err.Error()) + } + } } func (s *QuestLog) renderStaticMenu(target d2interface.Surface) { From 60a3e66c9521d927f537212de5fe8a080e354302 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 19:01:27 +0100 Subject: [PATCH 11/70] escape menu hotkeys --- d2game/d2player/escape_menu.go | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/d2game/d2player/escape_menu.go b/d2game/d2player/escape_menu.go index 2609da1f..0625add1 100644 --- a/d2game/d2player/escape_menu.go +++ b/d2game/d2player/escape_menu.go @@ -398,25 +398,15 @@ func (m *EscapeMenu) OnLoad() { // OnEscKey is called when the escape key is pressed func (m *EscapeMenu) OnEscKey() { - // note: original D2 returns straight to the game from however deep in the menu we are - switch m.currentLayout { - case optionsLayoutID: - m.setLayout(mainLayoutID) - return - case soundOptionsLayoutID, - videoOptionsLayoutID, - automapOptionsLayoutID, - configureControlsLayoutID: + if m.currentLayout == configureControlsLayoutID { m.setLayout(optionsLayoutID) if err := m.keyBindingMenu.Close(); err != nil { m.Errorf("unable to close the configure controls menu: %v", err.Error()) } - - return + } else { + m.close() } - - m.close() } // SetOnCloseCb sets the callback that is run when close() is called From 9c019afd940c065aba34789956847de3a165c49b Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 09:16:40 +0100 Subject: [PATCH 12/70] hero save file --- d2app/app.go | 21 +++++++++++---------- d2core/d2hero/hero_stats_state.go | 31 ++++++++++++++----------------- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/d2app/app.go b/d2app/app.go index f4ae128c..272af28c 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -233,11 +233,12 @@ func (a *App) parseArguments() { loggingShort = 'l' loggingDesc = "Enables verbose logging. Log levels will include those below it. " + "0 disables log messages, " + - "1 shows errors, " + - "2 shows warnings, " + - "3 shows info, " + - "4 shows debug" + - "5 uses value from config file (default)" + "1 shows fatal errors, " + + "2 shows errors, " + + "3 shows warnings, " + + "4 shows info, " + + "5 shows debug" + + "6 uses value from config file (default)" ) a.Options.profiler = kingpin.Flag(profilerArg, profilerDesc).String() @@ -315,7 +316,7 @@ func (a *App) Run() error { a.gitCommit = "build" } - fmt.Printf(fmtVersion, a.gitBranch, a.gitCommit) + a.Errorf(fmtVersion, a.gitBranch, a.gitCommit) os.Exit(0) } @@ -739,7 +740,7 @@ func (a *App) doCaptureFrame(target d2interface.Surface) error { return err } - a.Info(fmt.Sprintf("saved frame to %s", a.capturePath)) + a.Infof("saved frame to %s", a.capturePath) return nil } @@ -799,7 +800,7 @@ func (a *App) convertFramesToGif() error { return err } - a.Info(fmt.Sprintf("saved animation to %s", a.capturePath)) + a.Infof("saved animation to %s", a.capturePath) return nil } @@ -937,7 +938,7 @@ func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.Clie if err = gameClient.Open(host, filePath); err != nil { errorMessage := fmt.Sprintf("can not connect to the host: %s", host) - fmt.Println(errorMessage) + a.Error(errorMessage) a.ToMainMenu(errorMessage) } else { game, err := d2gamescreen.CreateGame( @@ -956,7 +957,7 @@ func (a *App) ToCharacterSelect(connType d2clientconnectiontype.ClientConnection characterSelect, err := d2gamescreen.CreateCharacterSelect(a, a.asset, a.renderer, a.inputManager, a.audio, a.ui, connType, a.config.LogLevel, connHost) if err != nil { - fmt.Printf("unable to create character select screen: %s", err) + a.Errorf("unable to create character select screen: %s", err) } a.screen.SetNextScreen(characterSelect) diff --git a/d2core/d2hero/hero_stats_state.go b/d2core/d2hero/hero_stats_state.go index 04ad52a4..46c32be6 100644 --- a/d2core/d2hero/hero_stats_state.go +++ b/d2core/d2hero/hero_stats_state.go @@ -10,28 +10,23 @@ type HeroStatsState struct { Level int `json:"level"` Experience int `json:"experience"` - Vitality int `json:"vitality"` - Energy int `json:"energy"` Strength int `json:"strength"` + Energy int `json:"energy"` Dexterity int `json:"dexterity"` + Vitality int `json:"vitality"` + // there are stats and skills points remaining to add. + StatPoints int `json:"statPoints"` + SkillPoints int `json:"skillPoints"` - AttackRating int `json:"attackRating"` - DefenseRating int `json:"defenseRating"` - - MaxStamina int `json:"maxStamina"` - Health int `json:"health"` - MaxHealth int `json:"maxHealth"` - Mana int `json:"mana"` - MaxMana int `json:"maxMana"` - - FireResistance int `json:"fireResistance"` - ColdResistance int `json:"coldResistance"` - LightningResistance int `json:"lightningResistance"` - PoisonResistance int `json:"poisonResistance"` + Health int `json:"health"` + MaxHealth int `json:"maxHealth"` + Mana int `json:"mana"` + MaxMana int `json:"maxMana"` + Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world + MaxStamina int `json:"maxStamina"` // values which are not saved/loaded(computed) - Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world - NextLevelExp int `json:"-"` + NextLevelExp int `json:"-"` } // CreateHeroStatsState generates a running state from a hero stats. @@ -44,6 +39,8 @@ func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStat Dexterity: classStats.InitDex, Vitality: classStats.InitVit, Energy: classStats.InitEne, + StatPoints: 0, + SkillPoints: 0, MaxHealth: classStats.InitVit * classStats.LifePerVit, MaxMana: classStats.InitEne * classStats.ManaPerEne, From 7e346bd03936cb13e9909e0dfc8e89aa3192be91 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 11:32:34 +0100 Subject: [PATCH 13/70] add-buttons init --- d2core/d2hero/hero_stats_state.go | 4 ++-- d2core/d2ui/button.go | 14 ++++++++++++++ d2game/d2player/game_controls.go | 2 +- d2game/d2player/hud.go | 27 +++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 3 deletions(-) diff --git a/d2core/d2hero/hero_stats_state.go b/d2core/d2hero/hero_stats_state.go index 46c32be6..96400b2f 100644 --- a/d2core/d2hero/hero_stats_state.go +++ b/d2core/d2hero/hero_stats_state.go @@ -15,7 +15,7 @@ type HeroStatsState struct { Dexterity int `json:"dexterity"` Vitality int `json:"vitality"` // there are stats and skills points remaining to add. - StatPoints int `json:"statPoints"` + StatsPoints int `json:"statsPoints"` SkillPoints int `json:"skillPoints"` Health int `json:"health"` @@ -39,7 +39,7 @@ func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStat Dexterity: classStats.InitDex, Vitality: classStats.InitVit, Energy: classStats.InitEne, - StatPoints: 0, + StatsPoints: 0, SkillPoints: 0, MaxHealth: classStats.InitVit * classStats.LifePerVit, diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index cdaf9c24..fe396b07 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -55,6 +55,7 @@ const ( ButtonTypeSquelchChat ButtonType = 35 ButtonTypeTabBlank ButtonType = 36 ButtonTypeBlankQuestBtn ButtonType = 37 + ButtonTypeAddSkill ButtonType = 38 ButtonNoFixedWidth int = -1 ButtonNoFixedHeight int = -1 @@ -746,6 +747,19 @@ func getButtonLayouts() map[ButtonType]ButtonLayout { FixedHeight: ButtonNoFixedHeight, LabelColor: whiteAlpha100, }, + ButtonTypeAddSkill: { + XSegments: 1, + YSegments: 1, + DisabledColor: whiteAlpha100, + ResourceName: d2resource.AddSkillButton, + PaletteName: d2resource.PaletteSky, + Toggleable: true, + FontPath: d2resource.Font16, + AllowFrameChange: true, + HasImage: true, + FixedWidth: ButtonNoFixedWidth, + FixedHeight: ButtonNoFixedHeight, + }, } } diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 2335cc52..451bd3d5 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -224,7 +224,7 @@ func NewGameControls( } helpOverlay := NewHelpOverlay(asset, ui, l, keyMap) - hud := NewHUD(asset, ui, hero, miniPanel, actionableRegions, mapEngine, l, mapRenderer) + hud := NewHUD(asset, ui, hero, miniPanel, actionableRegions, mapEngine, hero.Stats, l, mapRenderer) const blackAlpha50percent = 0x0000007f diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index be455a3f..632ea227 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -10,6 +10,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2hero" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapengine" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapentity" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2maprenderer" @@ -70,6 +71,11 @@ const ( whiteAlpha100 = 0xffffffff ) +const ( + addStatsButtonX, addStatsButtonY = 206, 561 + addSkillButtonX, addSkillButtonY = 563, 561 +) + // HUD represents the always visible user interface of the game type HUD struct { actionableRegions []actionableRegion @@ -77,6 +83,7 @@ type HUD struct { uiManager *d2ui.UIManager mapEngine *d2mapengine.MapEngine mapRenderer *d2maprenderer.MapRenderer + heroStats *d2hero.HeroStatsState lastMouseX int lastMouseY int hero *d2mapentity.Player @@ -103,6 +110,8 @@ type HUD struct { widgetLeftSkill *d2ui.CustomWidget widgetRightSkill *d2ui.CustomWidget panelBackground *d2ui.CustomWidget + addStatsButton *d2ui.Button + addSkillButton *d2ui.Button panelGroup *d2ui.WidgetGroup *d2util.Logger } @@ -115,6 +124,7 @@ func NewHUD( miniPanel *miniPanel, actionableRegions []actionableRegion, mapEngine *d2mapengine.MapEngine, + heroStats *d2hero.HeroStatsState, l d2util.LogLevel, mapRenderer *d2maprenderer.MapRenderer, ) *HUD { @@ -149,6 +159,7 @@ func NewHUD( zoneChangeText: zoneLabel, healthGlobe: healthGlobe, manaGlobe: manaGlobe, + heroStats: heroStats, } hud.Logger = d2util.NewLogger() @@ -177,7 +188,23 @@ func (h *HUD) Load() { h.loadCustomWidgets() h.loadUIButtons() + h.addStatsButton = h.uiManager.NewButton(d2ui.ButtonTypeAddSkill, "") + h.addStatsButton.SetPosition(addStatsButtonX, addStatsButtonY) + h.addStatsButton.SetVisible(false) + h.panelGroup.AddWidget(h.addStatsButton) + + h.addSkillButton = h.uiManager.NewButton(d2ui.ButtonTypeAddSkill, "") + h.addSkillButton.SetPosition(addSkillButtonX, addSkillButtonY) + h.addSkillButton.SetVisible(false) + h.panelGroup.AddWidget(h.addSkillButton) + h.panelGroup.SetVisible(true) + h.setAddButtonsVisible() +} + +func (h *HUD) setAddButtonsVisible() { + h.addStatsButton.SetVisible(h.heroStats.StatsPoints > 0) + h.addSkillButton.SetVisible(h.heroStats.SkillPoints > 0) } func (h *HUD) loadCustomWidgets() { From 3220cc93f4eafb434f226f5e9dc32e528db02ce0 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 12:37:35 +0100 Subject: [PATCH 14/70] add-buttons actions --- d2core/d2ui/button.go | 1 + d2game/d2player/game_controls.go | 24 +++++++++++++++++++----- d2game/d2player/hud.go | 14 ++++---------- 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index fe396b07..03b46c8a 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -750,6 +750,7 @@ func getButtonLayouts() map[ButtonType]ButtonLayout { ButtonTypeAddSkill: { XSegments: 1, YSegments: 1, + DisabledFrame: 2, DisabledColor: whiteAlpha100, ResourceName: d2resource.AddSkillButton, PaletteName: d2resource.PaletteSky, diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 451bd3d5..98fc3d83 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -224,13 +224,9 @@ func NewGameControls( } helpOverlay := NewHelpOverlay(asset, ui, l, keyMap) - hud := NewHUD(asset, ui, hero, miniPanel, actionableRegions, mapEngine, hero.Stats, l, mapRenderer) const blackAlpha50percent = 0x0000007f - hoverLabel := hud.nameLabel - hoverLabel.SetBackgroundColor(d2util.Color(blackAlpha50percent)) - gc := &GameControls{ asset: asset, ui: ui, @@ -246,7 +242,6 @@ func NewGameControls( questLog: questLog, HelpOverlay: helpOverlay, keyMap: keyMap, - hud: hud, bottomMenuRect: &d2geom.Rectangle{ Left: menuBottomRectX, Top: menuBottomRectY, @@ -271,6 +266,12 @@ func NewGameControls( isSinglePlayer: isSinglePlayer, } + hud := NewHUD(asset, ui, hero, miniPanel, actionableRegions, mapEngine, l, gc, mapRenderer) + gc.hud = hud + + hoverLabel := hud.nameLabel + hoverLabel.SetBackgroundColor(d2util.Color(blackAlpha50percent)) + gc.heroStatsPanel.SetOnCloseCb(gc.onCloseHeroStatsPanel) gc.questLog.SetOnCloseCb(gc.onCloseQuestLog) gc.inventory.SetOnCloseCb(gc.onCloseInventory) @@ -713,6 +714,9 @@ func (g *GameControls) Load() { g.questLog.Load() g.HelpOverlay.Load() + g.loadAddButtons() + g.SetAddButtons() + miniPanelActions := &miniPanelActions{ characterToggle: g.toggleHeroStatsPanel, inventoryToggle: g.toggleInventoryPanel, @@ -1099,3 +1103,13 @@ func (g *GameControls) bindTerminalCommands(term d2interface.Terminal) error { return nil } + +func (g *GameControls) SetAddButtons() { + g.hud.addStatsButton.SetEnabled(g.hero.Stats.StatsPoints > 0) + g.hud.addSkillButton.SetEnabled(g.hero.Stats.SkillPoints > 0) +} + +func (g *GameControls) loadAddButtons() { + g.hud.addStatsButton.OnActivated(func() { g.toggleHeroStatsPanel() }) + g.hud.addSkillButton.OnActivated(func() { g.toggleSkilltreePanel() }) +} diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index 632ea227..eefb3784 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -10,7 +10,6 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2hero" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapengine" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapentity" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2maprenderer" @@ -83,7 +82,6 @@ type HUD struct { uiManager *d2ui.UIManager mapEngine *d2mapengine.MapEngine mapRenderer *d2maprenderer.MapRenderer - heroStats *d2hero.HeroStatsState lastMouseX int lastMouseY int hero *d2mapentity.Player @@ -113,6 +111,8 @@ type HUD struct { addStatsButton *d2ui.Button addSkillButton *d2ui.Button panelGroup *d2ui.WidgetGroup + gameControls *GameControls + *d2util.Logger } @@ -124,8 +124,8 @@ func NewHUD( miniPanel *miniPanel, actionableRegions []actionableRegion, mapEngine *d2mapengine.MapEngine, - heroStats *d2hero.HeroStatsState, l d2util.LogLevel, + gameControls *GameControls, mapRenderer *d2maprenderer.MapRenderer, ) *HUD { nameLabel := ui.NewLabel(d2resource.Font16, d2resource.PaletteStatic) @@ -159,7 +159,7 @@ func NewHUD( zoneChangeText: zoneLabel, healthGlobe: healthGlobe, manaGlobe: manaGlobe, - heroStats: heroStats, + gameControls: gameControls, } hud.Logger = d2util.NewLogger() @@ -199,12 +199,6 @@ func (h *HUD) Load() { h.panelGroup.AddWidget(h.addSkillButton) h.panelGroup.SetVisible(true) - h.setAddButtonsVisible() -} - -func (h *HUD) setAddButtonsVisible() { - h.addStatsButton.SetVisible(h.heroStats.StatsPoints > 0) - h.addSkillButton.SetVisible(h.heroStats.SkillPoints > 0) } func (h *HUD) loadCustomWidgets() { From be8b3e3157d8ea71aed10b51e9fbecea5b50c582 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 18:02:52 +0100 Subject: [PATCH 15/70] stats changing: hero stats panel --- d2common/d2resource/resource_paths.go | 22 ++--- d2core/d2ui/button.go | 10 ++- d2game/d2player/game_controls.go | 8 +- d2game/d2player/hero_stats_panel.go | 114 ++++++++++++++++++++++++-- 4 files changed, 130 insertions(+), 24 deletions(-) diff --git a/d2common/d2resource/resource_paths.go b/d2common/d2resource/resource_paths.go index a18a196f..dc950ebc 100644 --- a/d2common/d2resource/resource_paths.go +++ b/d2common/d2resource/resource_paths.go @@ -243,16 +243,18 @@ const ( MinipanelSmall = "/data/global/ui/PANEL/minipanel_s.dc6" MinipanelButton = "/data/global/ui/PANEL/minipanelbtn.DC6" - Frame = "/data/global/ui/PANEL/800borderframe.dc6" - InventoryCharacterPanel = "/data/global/ui/PANEL/invchar6.DC6" - InventoryWeaponsTab = "/data/global/ui/PANEL/invchar6Tab.DC6" - SkillsPanelAmazon = "/data/global/ui/SPELLS/skltree_a_back.DC6" - SkillsPanelBarbarian = "/data/global/ui/SPELLS/skltree_b_back.DC6" - SkillsPanelDruid = "/data/global/ui/SPELLS/skltree_d_back.DC6" - SkillsPanelAssassin = "/data/global/ui/SPELLS/skltree_i_back.DC6" - SkillsPanelNecromancer = "/data/global/ui/SPELLS/skltree_n_back.DC6" - SkillsPanelPaladin = "/data/global/ui/SPELLS/skltree_p_back.DC6" - SkillsPanelSorcerer = "/data/global/ui/SPELLS/skltree_s_back.DC6" + Frame = "/data/global/ui/PANEL/800borderframe.dc6" + InventoryCharacterPanel = "/data/global/ui/PANEL/invchar6.DC6" + HeroStatsPanelStatsPoints = "/data/global/ui/PANEL/skillpoints.dc6" + HeroStatsPanelSocket = "/data/global/ui/PANEL/levelsocket.dc6" + InventoryWeaponsTab = "/data/global/ui/PANEL/invchar6Tab.DC6" + SkillsPanelAmazon = "/data/global/ui/SPELLS/skltree_a_back.DC6" + SkillsPanelBarbarian = "/data/global/ui/SPELLS/skltree_b_back.DC6" + SkillsPanelDruid = "/data/global/ui/SPELLS/skltree_d_back.DC6" + SkillsPanelAssassin = "/data/global/ui/SPELLS/skltree_i_back.DC6" + SkillsPanelNecromancer = "/data/global/ui/SPELLS/skltree_n_back.DC6" + SkillsPanelPaladin = "/data/global/ui/SPELLS/skltree_p_back.DC6" + SkillsPanelSorcerer = "/data/global/ui/SPELLS/skltree_s_back.DC6" GenericSkills = "/data/global/ui/SPELLS/Skillicon.DC6" AmazonSkills = "/data/global/ui/SPELLS/AmSkillicon.DC6" diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index 03b46c8a..b558969a 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -200,6 +200,10 @@ const ( buttonGoldCoinSegmentsY = 1 buttonGoldCoinDisabledFrame = -1 + buttonAddSkillSegmentsX = 1 + buttonAddSkillSegmentsY = 1 + buttonAddSkillDisabledFrame = 2 + pressedButtonOffset = 2 ) @@ -748,9 +752,9 @@ func getButtonLayouts() map[ButtonType]ButtonLayout { LabelColor: whiteAlpha100, }, ButtonTypeAddSkill: { - XSegments: 1, - YSegments: 1, - DisabledFrame: 2, + XSegments: buttonAddSkillSegmentsX, + YSegments: buttonAddSkillSegmentsY, + DisabledFrame: buttonAddSkillDisabledFrame, DisabledColor: whiteAlpha100, ResourceName: d2resource.AddSkillButton, PaletteName: d2resource.PaletteSky, diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 98fc3d83..f9556fb7 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -715,7 +715,7 @@ func (g *GameControls) Load() { g.HelpOverlay.Load() g.loadAddButtons() - g.SetAddButtons() + g.setAddButtons() miniPanelActions := &miniPanelActions{ characterToggle: g.toggleHeroStatsPanel, @@ -737,6 +737,10 @@ func (g *GameControls) Advance(elapsed float64) error { return err } + if g.heroStatsPanel.IsOpen() || g.skilltree.IsOpen() { + g.setAddButtons() + } + return nil } @@ -1104,7 +1108,7 @@ func (g *GameControls) bindTerminalCommands(term d2interface.Terminal) error { return nil } -func (g *GameControls) SetAddButtons() { +func (g *GameControls) setAddButtons() { g.hud.addStatsButton.SetEnabled(g.hero.Stats.StatsPoints > 0) g.hud.addSkillButton.SetEnabled(g.hero.Stats.SkillPoints > 0) } diff --git a/d2game/d2player/hero_stats_panel.go b/d2game/d2player/hero_stats_panel.go index 9f9cb5c0..8bc889aa 100644 --- a/d2game/d2player/hero_stats_panel.go +++ b/d2game/d2player/hero_stats_panel.go @@ -9,6 +9,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2gui" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2hero" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2ui" ) @@ -55,6 +56,15 @@ const ( const ( heroStatsCloseButtonX, heroStatsCloseButtonY = 208, 453 + addStatSocketOffsetX, addStatSocketOffsetY = -3, 34 +) + +const ( + newStatsRemainingPointsFieldX, newStatsRemainingPointsFieldY = 83, 430 + newStatsRemainingPointsLabelX = 92 + newStatsRemainingPointsLabel1Y = 411 + newStatsRemainingPointsLabel2Y = 418 + newStatsRemainingPointsValueX, newStatsRemainingPointsValueY = 188, 411 ) // PanelText represents text on the panel @@ -113,15 +123,17 @@ func NewHeroStatsPanel(asset *d2asset.AssetManager, // HeroStatsPanel represents the hero status panel type HeroStatsPanel struct { - asset *d2asset.AssetManager - uiManager *d2ui.UIManager - panel *d2ui.Sprite - heroState *d2hero.HeroStatsState - heroName string - heroClass d2enum.Hero - labels *StatsPanelLabels - onCloseCb func() - panelGroup *d2ui.WidgetGroup + asset *d2asset.AssetManager + uiManager *d2ui.UIManager + panel *d2ui.Sprite + heroState *d2hero.HeroStatsState + heroName string + heroClass d2enum.Hero + labels *StatsPanelLabels + onCloseCb func() + panelGroup *d2ui.WidgetGroup + newStatPoints *d2ui.WidgetGroup + remainingPoints *d2ui.Label originX int originY int @@ -135,6 +147,7 @@ func (s *HeroStatsPanel) Load() { var err error s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityHeroStatsPanel) + s.newStatPoints = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityHeroStatsPanel) frame := d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameLeft) s.panelGroup.AddWidget(frame) @@ -154,10 +167,91 @@ func (s *HeroStatsPanel) Load() { closeButton.OnActivated(func() { s.Close() }) s.panelGroup.AddWidget(closeButton) + s.loadNewStatPoints() + s.setLayout() + s.initStatValueLabels() s.panelGroup.SetVisible(false) } +func (s *HeroStatsPanel) loadNewStatPoints() { + field, err := s.uiManager.NewSprite(d2resource.HeroStatsPanelStatsPoints, d2resource.PaletteSky) + if err != nil { + s.Error(err.Error()) + } + + field.SetPosition(newStatsRemainingPointsFieldX, newStatsRemainingPointsFieldY) + s.newStatPoints.AddWidget(field) + + label1 := s.uiManager.NewLabel(d2resource.Font6, d2resource.PaletteSky) + label1.SetPosition(newStatsRemainingPointsLabelX, newStatsRemainingPointsLabel1Y) + label1.SetText(s.asset.TranslateString("strchrstat")) + label1.Color[0] = d2util.Color(d2gui.ColorRed) + s.newStatPoints.AddWidget(label1) + + label2 := s.uiManager.NewLabel(d2resource.Font6, d2resource.PaletteSky) + label2.SetPosition(newStatsRemainingPointsLabelX, newStatsRemainingPointsLabel2Y) + label2.SetText(s.asset.TranslateString("strchrrema")) + label2.Color[0] = d2util.Color(d2gui.ColorRed) + s.newStatPoints.AddWidget(label2) + + s.remainingPoints = s.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteSky) + s.remainingPoints.SetText(strconv.Itoa(s.heroState.StatsPoints)) + s.remainingPoints.SetPosition(newStatsRemainingPointsValueX, newStatsRemainingPointsValueY) + s.remainingPoints.Alignment = d2ui.HorizontalAlignCenter + s.newStatPoints.AddWidget(s.remainingPoints) + + buttons := []struct { + x int + y int + cb func() + }{ + {205, 140, func() { + s.heroState.Strength++ + }}, + {205, 201, func() { + s.heroState.Dexterity++ + }}, + {205, 286, func() { + s.heroState.Vitality++ + }}, + {205, 347, func() { + s.heroState.Energy++ + }}, + } + + var socket *d2ui.Sprite + + var button *d2ui.Button + + for _, i := range buttons { + currentValue := i + + socket, err = s.uiManager.NewSprite(d2resource.HeroStatsPanelSocket, d2resource.PaletteSky) + if err != nil { + s.Error(err.Error()) + } + + socket.SetPosition(i.x+addStatSocketOffsetX, i.y+addStatSocketOffsetY) + s.newStatPoints.AddWidget(socket) + + button = s.uiManager.NewButton(d2ui.ButtonTypeAddSkill, d2resource.PaletteSky) + button.SetPosition(i.x, i.y) + button.OnActivated(func() { + currentValue.cb() + s.heroState.StatsPoints-- + s.remainingPoints.SetText(strconv.Itoa(s.heroState.StatsPoints)) + s.setStatValues() + s.setLayout() + }) + s.newStatPoints.AddWidget(button) + } +} + +func (s *HeroStatsPanel) setLayout() { + s.newStatPoints.SetVisible(s.heroState.StatsPoints > 0 && s.IsOpen()) +} + // IsOpen returns true if the hero status panel is open func (s *HeroStatsPanel) IsOpen() bool { return s.isOpen @@ -176,12 +270,14 @@ func (s *HeroStatsPanel) Toggle() { func (s *HeroStatsPanel) Open() { s.isOpen = true s.panelGroup.SetVisible(true) + s.setLayout() } // Close closed the hero status panel func (s *HeroStatsPanel) Close() { s.isOpen = false s.panelGroup.SetVisible(false) + s.setLayout() s.onCloseCb() } From cf439ede2fc6cb949c2479ae2028d5743d76c62f Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 20:03:24 +0100 Subject: [PATCH 16/70] skill tre - remaining points label --- d2game/d2player/game_controls.go | 2 +- d2game/d2player/skilltree.go | 51 +++++++++++++++++++++----------- 2 files changed, 34 insertions(+), 19 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index f9556fb7..97bd2aa7 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -214,7 +214,7 @@ func NewGameControls( return nil, err } - skilltree := newSkillTree(hero.Skills, hero.Class, asset, l, ui) + skilltree := newSkillTree(hero.Skills, hero.Class, hero.Stats, asset, l, ui) miniPanel := newMiniPanel(asset, ui, l, isSinglePlayer) diff --git a/d2game/d2player/skilltree.go b/d2game/d2player/skilltree.go index 3f5ddae0..91bceec4 100644 --- a/d2game/d2player/skilltree.go +++ b/d2game/d2player/skilltree.go @@ -3,6 +3,7 @@ package d2player import ( "errors" "fmt" + "strconv" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" @@ -56,6 +57,10 @@ const ( frameSelectedTab3Full = 13 ) +const ( + remainingPointsLabelX, remainingPointsLabelY = 677, 128 +) + const ( skillTreePanelX = 401 skillTreePanelY = 64 @@ -87,6 +92,7 @@ type skillTreeHeroTypeResources struct { func newSkillTree( skills map[int]*d2hero.HeroSkill, heroClass d2enum.Hero, + hero *d2hero.HeroStatsState, asset *d2asset.AssetManager, l d2util.LogLevel, ui *d2ui.UIManager, @@ -98,6 +104,7 @@ func newSkillTree( uiManager: ui, originX: skillTreePanelX, originY: skillTreePanelY, + stats: hero, tab: [numTabs]*skillTreeTab{ {}, {}, @@ -114,24 +121,26 @@ func newSkillTree( } type skillTree struct { - resources *skillTreeHeroTypeResources - asset *d2asset.AssetManager - uiManager *d2ui.UIManager - skills map[int]*d2hero.HeroSkill - skillIcons []*skillIcon - heroClass d2enum.Hero - frame *d2ui.UIFrame - availSPLabel *d2ui.Label - closeButton *d2ui.Button - tab [numTabs]*skillTreeTab - isOpen bool - originX int - originY int - selectedTab int - onCloseCb func() - panelGroup *d2ui.WidgetGroup - iconGroup *d2ui.WidgetGroup - panel *d2ui.CustomWidget + resources *skillTreeHeroTypeResources + asset *d2asset.AssetManager + uiManager *d2ui.UIManager + skills map[int]*d2hero.HeroSkill + skillIcons []*skillIcon + heroClass d2enum.Hero + frame *d2ui.UIFrame + availSPLabel *d2ui.Label + closeButton *d2ui.Button + tab [numTabs]*skillTreeTab + remainingPoints *d2ui.Label + isOpen bool + originX int + originY int + selectedTab int + onCloseCb func() + panelGroup *d2ui.WidgetGroup + iconGroup *d2ui.WidgetGroup + panel *d2ui.CustomWidget + stats *d2hero.HeroStatsState *d2util.Logger l d2util.LogLevel @@ -152,6 +161,12 @@ func (s *skillTree) load() { s.closeButton.OnActivated(func() { s.Close() }) s.panelGroup.AddWidget(s.closeButton) + s.remainingPoints = s.uiManager.NewLabel(d2resource.Font16, d2resource.PaletteSky) + s.remainingPoints.SetPosition(remainingPointsLabelX, remainingPointsLabelY) + s.remainingPoints.Alignment = d2ui.HorizontalAlignCenter + s.remainingPoints.SetText(strconv.Itoa(s.stats.SkillPoints)) + s.panelGroup.AddWidget(s.remainingPoints) + if err := s.setHeroTypeResourcePath(); err != nil { s.Error(err.Error()) } From 6c2e078b5ed04050fa39541a38f7e507da0a486f Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 16:55:50 +0100 Subject: [PATCH 17/70] revert:hero save file (app.go) --- d2app/app.go | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/d2app/app.go b/d2app/app.go index 272af28c..f4ae128c 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -233,12 +233,11 @@ func (a *App) parseArguments() { loggingShort = 'l' loggingDesc = "Enables verbose logging. Log levels will include those below it. " + "0 disables log messages, " + - "1 shows fatal errors, " + - "2 shows errors, " + - "3 shows warnings, " + - "4 shows info, " + - "5 shows debug" + - "6 uses value from config file (default)" + "1 shows errors, " + + "2 shows warnings, " + + "3 shows info, " + + "4 shows debug" + + "5 uses value from config file (default)" ) a.Options.profiler = kingpin.Flag(profilerArg, profilerDesc).String() @@ -316,7 +315,7 @@ func (a *App) Run() error { a.gitCommit = "build" } - a.Errorf(fmtVersion, a.gitBranch, a.gitCommit) + fmt.Printf(fmtVersion, a.gitBranch, a.gitCommit) os.Exit(0) } @@ -740,7 +739,7 @@ func (a *App) doCaptureFrame(target d2interface.Surface) error { return err } - a.Infof("saved frame to %s", a.capturePath) + a.Info(fmt.Sprintf("saved frame to %s", a.capturePath)) return nil } @@ -800,7 +799,7 @@ func (a *App) convertFramesToGif() error { return err } - a.Infof("saved animation to %s", a.capturePath) + a.Info(fmt.Sprintf("saved animation to %s", a.capturePath)) return nil } @@ -938,7 +937,7 @@ func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.Clie if err = gameClient.Open(host, filePath); err != nil { errorMessage := fmt.Sprintf("can not connect to the host: %s", host) - a.Error(errorMessage) + fmt.Println(errorMessage) a.ToMainMenu(errorMessage) } else { game, err := d2gamescreen.CreateGame( @@ -957,7 +956,7 @@ func (a *App) ToCharacterSelect(connType d2clientconnectiontype.ClientConnection characterSelect, err := d2gamescreen.CreateCharacterSelect(a, a.asset, a.renderer, a.inputManager, a.audio, a.ui, connType, a.config.LogLevel, connHost) if err != nil { - a.Errorf("unable to create character select screen: %s", err) + fmt.Printf("unable to create character select screen: %s", err) } a.screen.SetNextScreen(characterSelect) From caa4b2fc11d8bad650267187a3ea84c74be72b30 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 14 Dec 2020 19:01:27 +0100 Subject: [PATCH 18/70] escape menu hotkeys --- d2game/d2player/escape_menu.go | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/d2game/d2player/escape_menu.go b/d2game/d2player/escape_menu.go index 2609da1f..0625add1 100644 --- a/d2game/d2player/escape_menu.go +++ b/d2game/d2player/escape_menu.go @@ -398,25 +398,15 @@ func (m *EscapeMenu) OnLoad() { // OnEscKey is called when the escape key is pressed func (m *EscapeMenu) OnEscKey() { - // note: original D2 returns straight to the game from however deep in the menu we are - switch m.currentLayout { - case optionsLayoutID: - m.setLayout(mainLayoutID) - return - case soundOptionsLayoutID, - videoOptionsLayoutID, - automapOptionsLayoutID, - configureControlsLayoutID: + if m.currentLayout == configureControlsLayoutID { m.setLayout(optionsLayoutID) if err := m.keyBindingMenu.Close(); err != nil { m.Errorf("unable to close the configure controls menu: %v", err.Error()) } - - return + } else { + m.close() } - - m.close() } // SetOnCloseCb sets the callback that is run when close() is called From 69fc4d30e43a0f5c7e749616cf5f83ec54420c0a Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 15 Dec 2020 09:16:40 +0100 Subject: [PATCH 19/70] hero save file --- d2app/app.go | 21 +++++++++++---------- d2core/d2hero/hero_stats_state.go | 31 ++++++++++++++----------------- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/d2app/app.go b/d2app/app.go index f4ae128c..272af28c 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -233,11 +233,12 @@ func (a *App) parseArguments() { loggingShort = 'l' loggingDesc = "Enables verbose logging. Log levels will include those below it. " + "0 disables log messages, " + - "1 shows errors, " + - "2 shows warnings, " + - "3 shows info, " + - "4 shows debug" + - "5 uses value from config file (default)" + "1 shows fatal errors, " + + "2 shows errors, " + + "3 shows warnings, " + + "4 shows info, " + + "5 shows debug" + + "6 uses value from config file (default)" ) a.Options.profiler = kingpin.Flag(profilerArg, profilerDesc).String() @@ -315,7 +316,7 @@ func (a *App) Run() error { a.gitCommit = "build" } - fmt.Printf(fmtVersion, a.gitBranch, a.gitCommit) + a.Errorf(fmtVersion, a.gitBranch, a.gitCommit) os.Exit(0) } @@ -739,7 +740,7 @@ func (a *App) doCaptureFrame(target d2interface.Surface) error { return err } - a.Info(fmt.Sprintf("saved frame to %s", a.capturePath)) + a.Infof("saved frame to %s", a.capturePath) return nil } @@ -799,7 +800,7 @@ func (a *App) convertFramesToGif() error { return err } - a.Info(fmt.Sprintf("saved animation to %s", a.capturePath)) + a.Infof("saved animation to %s", a.capturePath) return nil } @@ -937,7 +938,7 @@ func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.Clie if err = gameClient.Open(host, filePath); err != nil { errorMessage := fmt.Sprintf("can not connect to the host: %s", host) - fmt.Println(errorMessage) + a.Error(errorMessage) a.ToMainMenu(errorMessage) } else { game, err := d2gamescreen.CreateGame( @@ -956,7 +957,7 @@ func (a *App) ToCharacterSelect(connType d2clientconnectiontype.ClientConnection characterSelect, err := d2gamescreen.CreateCharacterSelect(a, a.asset, a.renderer, a.inputManager, a.audio, a.ui, connType, a.config.LogLevel, connHost) if err != nil { - fmt.Printf("unable to create character select screen: %s", err) + a.Errorf("unable to create character select screen: %s", err) } a.screen.SetNextScreen(characterSelect) diff --git a/d2core/d2hero/hero_stats_state.go b/d2core/d2hero/hero_stats_state.go index 04ad52a4..46c32be6 100644 --- a/d2core/d2hero/hero_stats_state.go +++ b/d2core/d2hero/hero_stats_state.go @@ -10,28 +10,23 @@ type HeroStatsState struct { Level int `json:"level"` Experience int `json:"experience"` - Vitality int `json:"vitality"` - Energy int `json:"energy"` Strength int `json:"strength"` + Energy int `json:"energy"` Dexterity int `json:"dexterity"` + Vitality int `json:"vitality"` + // there are stats and skills points remaining to add. + StatPoints int `json:"statPoints"` + SkillPoints int `json:"skillPoints"` - AttackRating int `json:"attackRating"` - DefenseRating int `json:"defenseRating"` - - MaxStamina int `json:"maxStamina"` - Health int `json:"health"` - MaxHealth int `json:"maxHealth"` - Mana int `json:"mana"` - MaxMana int `json:"maxMana"` - - FireResistance int `json:"fireResistance"` - ColdResistance int `json:"coldResistance"` - LightningResistance int `json:"lightningResistance"` - PoisonResistance int `json:"poisonResistance"` + Health int `json:"health"` + MaxHealth int `json:"maxHealth"` + Mana int `json:"mana"` + MaxMana int `json:"maxMana"` + Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world + MaxStamina int `json:"maxStamina"` // values which are not saved/loaded(computed) - Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world - NextLevelExp int `json:"-"` + NextLevelExp int `json:"-"` } // CreateHeroStatsState generates a running state from a hero stats. @@ -44,6 +39,8 @@ func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStat Dexterity: classStats.InitDex, Vitality: classStats.InitVit, Energy: classStats.InitEne, + StatPoints: 0, + SkillPoints: 0, MaxHealth: classStats.InitVit * classStats.LifePerVit, MaxMana: classStats.InitEne * classStats.ManaPerEne, From dfb3e2705ab81831dc5372a876ce7619d57202b9 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 17:01:26 +0100 Subject: [PATCH 20/70] updated d2hero.HeroStatsState --- d2core/d2hero/hero_stats_state.go | 33 +++++++++++++++++-------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/d2core/d2hero/hero_stats_state.go b/d2core/d2hero/hero_stats_state.go index 46c32be6..04ad52a4 100644 --- a/d2core/d2hero/hero_stats_state.go +++ b/d2core/d2hero/hero_stats_state.go @@ -10,23 +10,28 @@ type HeroStatsState struct { Level int `json:"level"` Experience int `json:"experience"` - Strength int `json:"strength"` - Energy int `json:"energy"` - Dexterity int `json:"dexterity"` Vitality int `json:"vitality"` - // there are stats and skills points remaining to add. - StatPoints int `json:"statPoints"` - SkillPoints int `json:"skillPoints"` + Energy int `json:"energy"` + Strength int `json:"strength"` + Dexterity int `json:"dexterity"` - Health int `json:"health"` - MaxHealth int `json:"maxHealth"` - Mana int `json:"mana"` - MaxMana int `json:"maxMana"` - Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world - MaxStamina int `json:"maxStamina"` + AttackRating int `json:"attackRating"` + DefenseRating int `json:"defenseRating"` + + MaxStamina int `json:"maxStamina"` + Health int `json:"health"` + MaxHealth int `json:"maxHealth"` + Mana int `json:"mana"` + MaxMana int `json:"maxMana"` + + FireResistance int `json:"fireResistance"` + ColdResistance int `json:"coldResistance"` + LightningResistance int `json:"lightningResistance"` + PoisonResistance int `json:"poisonResistance"` // values which are not saved/loaded(computed) - NextLevelExp int `json:"-"` + Stamina float64 `json:"-"` // only MaxStamina is saved, Stamina gets reset on entering world + NextLevelExp int `json:"-"` } // CreateHeroStatsState generates a running state from a hero stats. @@ -39,8 +44,6 @@ func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStat Dexterity: classStats.InitDex, Vitality: classStats.InitVit, Energy: classStats.InitEne, - StatPoints: 0, - SkillPoints: 0, MaxHealth: classStats.InitVit * classStats.LifePerVit, MaxMana: classStats.InitEne * classStats.ManaPerEne, From e42e4fbe48659323e975538e9e9c955c970dc505 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 17:16:01 +0100 Subject: [PATCH 21/70] corrected grammar errors --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7eaf18ae..3a103eff 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ ALL OTHER TRADEMARKS ARE THE PROPERTY OF THEIR RESPECTIVE OWNERS. ## Status At the moment (december 2020) the game starts, you can select any character and run around Act1 town. -You can also open any of of the game panel. +You can also open any of the game's panels. Much work has been made in the background, but a lot of work still has to be done for the game to be playable. From 856138dacaacf83eb3b6ff5ab8d540d188a30870 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Wed, 16 Dec 2020 19:06:12 +0100 Subject: [PATCH 22/70] animation is played and last frame is completedFrame --- d2game/d2player/quest_log.go | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index 1d0eace8..960ea73d 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -374,6 +374,8 @@ func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { case d2enum.QuestStatusCompleted: err = icon.SetCurrentFrame(completedFrame) case d2enum.QuestStatusCompleting: + // animation will be played after quest-log panel is opened (see s.playQuestAnimation) + err = icon.SetCurrentFrame(0) case d2enum.QuestStatusNotStarted: err = icon.SetCurrentFrame(notStartedFrame) default: @@ -398,7 +400,6 @@ func (s *QuestLog) playQuestAnimations() { i.SetPlayLength(3) i.PlayForward() i.SetPlayLoop(false) - s.questStatus[questID] = d2enum.QuestStatusCompleted } } } @@ -521,9 +522,15 @@ func (s *QuestLog) Advance(elapsed float64) { return } - for _, i := range s.quests[s.selectedTab].icons { - if err := i.Advance(elapsed); err != nil { - s.Error(err.Error()) + for j, i := range s.quests[s.selectedTab].icons { + questID := s.cordsToQuestID(s.selectedTab+1, j) + if s.questStatus[questID] == d2enum.QuestStatusCompleting { + if err := i.Advance(elapsed); err != nil { + s.Error(err.Error()) + } + if i.GetCurrentFrame() == completedFrame { + s.questStatus[questID] = d2enum.QuestStatusCompleted + } } } } From 8a027eb48deb0736a098c53ec12edd3c7e7183fd Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Thu, 17 Dec 2020 11:02:39 +0100 Subject: [PATCH 23/70] animation stops playing, when quest log is closed & quest socket gets highlighted, when animation is playing & fixed highlight bug --- d2game/d2player/quest_log.go | 114 ++++++++++++++++++++++++++--------- 1 file changed, 86 insertions(+), 28 deletions(-) diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index 960ea73d..12bd8144 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -51,6 +51,8 @@ const ( questTabXOffset = 61 ) +const questCompleteAnimationDuration = 3 + func (s *QuestLog) getPositionForSocket(number int) (x, y int) { pos := []struct { x int @@ -80,12 +82,12 @@ func NewQuestLog(asset *d2asset.AssetManager, qs := map[int]int{ 0: -2, 1: -2, - 2: -1, + 2: -2, 3: 0, 4: 1, 5: 2, 6: 3, - 7: 0, + 7: -1, 8: 0, 9: 0, 10: 0, @@ -169,7 +171,9 @@ type QuestLog struct { type questEntire struct { *d2ui.WidgetGroup - icons []*d2ui.Sprite + icons []*d2ui.Sprite + buttons []*d2ui.Button + sockets []*d2ui.Sprite } /* questIconTab returns path to quest animation using its @@ -185,6 +189,11 @@ const ( notStartedFrame = 26 ) +const ( + socketNormalFrame = 0 + socketHighlightedFrame = 1 +) + const questDescriptionLenght = 30 type questLogTab struct { @@ -197,6 +206,9 @@ func (s *QuestLog) Load() { var err error s.completeSound, err = s.audioProvider.LoadSound(d2resource.QuestLogDoneSfx, false, false) + if err != nil { + s.Error(err.Error()) + } s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) @@ -238,9 +250,10 @@ func (s *QuestLog) Load() { s.loadTabs() + // creates quest boards for each act for i := 0; i < d2enum.ActsNumber; i++ { - item, icons := s.loadQuestIconsForAct(i + 1) - s.quests[i] = &questEntire{item, icons} + item, icons, buttons, sockets := s.loadQuestBoard(i + 1) + s.quests[i] = &questEntire{item, icons, buttons, sockets} } s.panelGroup.SetVisible(false) @@ -280,7 +293,8 @@ func (s *QuestLog) loadTabs() { s.setTab(s.act - 1) } -func (s *QuestLog) loadQuestIconsForAct(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite) { +// loadQuestBoard creates quest fields (socket, button, icon) for specified act +func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, []*d2ui.Button, []*d2ui.Sprite) { wg := s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) var questsInAct int @@ -307,62 +321,68 @@ func (s *QuestLog) loadQuestIconsForAct(act int) (*d2ui.WidgetGroup, []*d2ui.Spr s.Error(err.Error()) } - socket.SetPosition(x+questOffsetX, y+iconOffsetY+2*questOffsetY) + socket.SetPosition(x, y+iconOffsetY+questOffsetY) sockets = append(sockets, socket) + icon, err = s.makeQuestIconForAct(act, n, x, y) + if err != nil { + s.Error(err.Error()) + } + + icons = append(icons, icon) + button := s.uiManager.NewButton(d2ui.ButtonTypeBlankQuestBtn, "") button.SetPosition(x+questOffsetX, y+questOffsetY) button.SetEnabled(s.questStatus[s.cordsToQuestID(act, cw)] != d2enum.QuestStatusNotStarted) buttons = append(buttons, button) - icon, err = s.makeQuestIconForAct(act, n) - if err != nil { - s.Error(err.Error()) - } - - icon.SetPosition(x+questOffsetX, y+questOffsetY+iconOffsetY) - - icons = append(icons, icon) } for i := 0; i < questsInAct; i++ { currentQuest := i + // creates callback for quest button buttons[i].OnActivated(func() { var err error + + // set normal (not-highlighted) frame for each quest socket for j := 0; j < questsInAct; j++ { - err = sockets[j].SetCurrentFrame(0) + err = sockets[j].SetCurrentFrame(socketNormalFrame) if err != nil { s.Error(err.Error()) } } - if act-1 == s.selectedTab { - err = sockets[currentQuest].SetCurrentFrame(1) - if err != nil { - s.Error(err.Error()) - } + + // highlights appropiate socket + err = sockets[currentQuest].SetCurrentFrame(socketHighlightedFrame) + if err != nil { + s.Error(err.Error()) } + s.onQuestClicked(currentQuest + 1) }) } + // adds sockets to widget group for _, s := range sockets { wg.AddWidget(s) } + // adds buttons to widget group for _, b := range buttons { wg.AddWidget(b) } + // adds icons to widget group for _, i := range icons { wg.AddWidget(i) } wg.SetVisible(false) - return wg, icons + return wg, icons, buttons, sockets } -func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { +func (s *QuestLog) makeQuestIconForAct(act, n int, x, y int) (*d2ui.Sprite, error) { iconResource := s.questIconsTable(act, n) icon, err := s.uiManager.NewSprite(iconResource, d2resource.PaletteSky) @@ -382,9 +402,12 @@ func (s *QuestLog) makeQuestIconForAct(act, n int) (*d2ui.Sprite, error) { err = icon.SetCurrentFrame(inProgresFrame) } + icon.SetPosition(x+questOffsetX, y+questOffsetY+iconOffsetY) + return icon, err } +// playQuestAnimations plays animations for quests (when status=questStatusCompleting) func (s *QuestLog) playQuestAnimations() { var err error @@ -392,20 +415,25 @@ func (s *QuestLog) playQuestAnimations() { questID := s.cordsToQuestID(s.selectedTab+1, j) if s.questStatus[questID] == d2enum.QuestStatusCompleting { s.completeSound.Play() + + // quest should be highlighted and it's label should be displayed + s.quests[s.selectedTab].buttons[j].Activate() + err = i.SetCurrentFrame(0) if err != nil { s.Error(err.Error()) } - i.SetPlayLength(3) + i.SetPlayLength(questCompleteAnimationDuration) i.PlayForward() i.SetPlayLoop(false) } } } +// setQuestLabel loads quest labels text (title and description) func (s *QuestLog) setQuestLabel() { - if s.selectedQuest == 0 { + if s.selectedQuest == d2enum.QuestNone { s.questName.SetText("") s.questDescr.SetText("") @@ -416,7 +444,7 @@ func (s *QuestLog) setQuestLabel() { status := s.questStatus[s.cordsToQuestID(s.selectedTab+1, s.selectedQuest)-1] switch status { - case d2enum.QuestStatusCompleted: + case d2enum.QuestStatusCompleted, d2enum.QuestStatusCompleting: s.questDescr.SetText( strings.Join( d2util.SplitIntoLinesWithMaxWidth( @@ -424,8 +452,6 @@ func (s *QuestLog) setQuestLabel() { questDescriptionLenght), "\n"), ) - case d2enum.QuestStatusCompleting: - s.questDescr.SetText("") case d2enum.QuestStatusNotStarted: s.questDescr.SetText("") default: @@ -440,12 +466,26 @@ func (s *QuestLog) setQuestLabel() { } } +func (s *QuestLog) clearHighlightment() { + for _, i := range s.quests[s.selectedTab].sockets { + err := i.SetCurrentFrame(socketNormalFrame) + if err != nil { + s.Error(err.Error()) + } + } +} + func (s *QuestLog) setTab(tab int) { var mod int + // before we leafe current tab, we need to switch highlighted + // quest socket to normal frame + s.clearHighlightment() + s.selectedTab = tab s.selectedQuest = d2enum.QuestNone s.setQuestLabel() + s.playQuestAnimations() for i := 0; i < s.maxPlayersAct; i++ { s.quests[i].SetVisible(tab == i) @@ -508,9 +548,26 @@ func (s *QuestLog) Close() { s.quests[i].SetVisible(false) } + s.stopPlayedAnimations() + s.onCloseCb() } +func (s *QuestLog) stopPlayedAnimations() { + // stops all played animations + for j, i := range s.quests[s.selectedTab].icons { + questID := s.cordsToQuestID(s.selectedTab+1, j) + if s.questStatus[questID] == d2enum.QuestStatusCompleting { + s.questStatus[questID] = d2enum.QuestStatusCompleted + + err := i.SetCurrentFrame(completedFrame) + if err != nil { + s.Error(err.Error()) + } + } + } +} + // SetOnCloseCb the callback run on closing the HeroStatsPanel func (s *QuestLog) SetOnCloseCb(cb func()) { s.onCloseCb = cb @@ -528,6 +585,7 @@ func (s *QuestLog) Advance(elapsed float64) { if err := i.Advance(elapsed); err != nil { s.Error(err.Error()) } + if i.GetCurrentFrame() == completedFrame { s.questStatus[questID] = d2enum.QuestStatusCompleted } From d58ed6202f99e138a6b19ef99664c56e39a5f324 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Thu, 17 Dec 2020 12:04:37 +0100 Subject: [PATCH 24/70] fixed quest descr bug & added code description --- d2game/d2player/quest_log.go | 131 +++++++++++++++-------------------- 1 file changed, 55 insertions(+), 76 deletions(-) diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index 12bd8144..1c1ab5c5 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -85,7 +85,7 @@ func NewQuestLog(asset *d2asset.AssetManager, 2: -2, 3: 0, 4: 1, - 5: 2, + 5: 4, 6: 3, 7: -1, 8: 0, @@ -205,13 +205,14 @@ type questLogTab struct { func (s *QuestLog) Load() { var err error + s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) + + // quest completion sound. s.completeSound, err = s.audioProvider.LoadSound(d2resource.QuestLogDoneSfx, false, false) if err != nil { s.Error(err.Error()) } - s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) - frame := d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameLeft) s.panelGroup.AddWidget(frame) @@ -221,7 +222,7 @@ func (s *QuestLog) Load() { } w, h := frame.GetSize() - staticPanel := s.uiManager.NewCustomWidgetCached(s.renderStaticMenu, w, h) + staticPanel := s.uiManager.NewCustomWidgetCached(s.renderStaticPanelFrames, w, h) s.panelGroup.AddWidget(staticPanel) closeButton := s.uiManager.NewButton(d2ui.ButtonTypeSquareClose, "") @@ -259,11 +260,13 @@ func (s *QuestLog) Load() { s.panelGroup.SetVisible(false) } +// loadTabs loads quest log tabs func (s *QuestLog) loadTabs() { var err error tabsResource := d2resource.WPTabs + // create tabs only for 'discovered' acts for i := 0; i < s.maxPlayersAct; i++ { currentValue := i @@ -272,7 +275,8 @@ func (s *QuestLog) loadTabs() { s.Error(err.Error()) } - // nolint:gomnd // it's constant + // nolint:gomnd // it's constant. + // each tab has two frames (active / inactive) frame := 2 * currentValue err := s.tab[i].sprite.SetCurrentFrame(frame) @@ -290,13 +294,15 @@ func (s *QuestLog) loadTabs() { s.panelGroup.AddWidget(s.tab[i].invisibleButton) } + // sets tab to current player's act. s.setTab(s.act - 1) } // loadQuestBoard creates quest fields (socket, button, icon) for specified act -func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, []*d2ui.Button, []*d2ui.Sprite) { - wg := s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) +func (s *QuestLog) loadQuestBoard(act int) (wg *d2ui.WidgetGroup, icons []*d2ui.Sprite, buttons []*d2ui.Button, sockets []*d2ui.Sprite) { + wg = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityQuestLog) + // sets number of quests in act (for act 4 it's only 3, else 6) var questsInAct int if act == d2enum.Act4 { questsInAct = d2enum.HalfQuestsNumber @@ -304,14 +310,6 @@ func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, [ questsInAct = d2enum.NormalActQuestsNumber } - var sockets []*d2ui.Sprite - - var buttons []*d2ui.Button - - var icons []*d2ui.Sprite - - var icon *d2ui.Sprite - for n := 0; n < questsInAct; n++ { cw := n x, y := s.getPositionForSocket(n) @@ -324,7 +322,7 @@ func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, [ socket.SetPosition(x, y+iconOffsetY+questOffsetY) sockets = append(sockets, socket) - icon, err = s.makeQuestIconForAct(act, n, x, y) + icon, err := s.makeQuestIconForAct(act, n, x, y) if err != nil { s.Error(err.Error()) } @@ -335,11 +333,11 @@ func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, [ button.SetPosition(x+questOffsetX, y+questOffsetY) button.SetEnabled(s.questStatus[s.cordsToQuestID(act, cw)] != d2enum.QuestStatusNotStarted) buttons = append(buttons, button) - } for i := 0; i < questsInAct; i++ { currentQuest := i + // creates callback for quest button buttons[i].OnActivated(func() { var err error @@ -352,12 +350,13 @@ func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, [ } } - // highlights appropiate socket + // highlights appropriate socket err = sockets[currentQuest].SetCurrentFrame(socketHighlightedFrame) if err != nil { s.Error(err.Error()) } + // sets quest labels s.onQuestClicked(currentQuest + 1) }) } @@ -382,7 +381,7 @@ func (s *QuestLog) loadQuestBoard(act int) (*d2ui.WidgetGroup, []*d2ui.Sprite, [ return wg, icons, buttons, sockets } -func (s *QuestLog) makeQuestIconForAct(act, n int, x, y int) (*d2ui.Sprite, error) { +func (s *QuestLog) makeQuestIconForAct(act, n, x, y int) (*d2ui.Sprite, error) { iconResource := s.questIconsTable(act, n) icon, err := s.uiManager.NewSprite(iconResource, d2resource.PaletteSky) @@ -409,8 +408,6 @@ func (s *QuestLog) makeQuestIconForAct(act, n int, x, y int) (*d2ui.Sprite, erro // playQuestAnimations plays animations for quests (when status=questStatusCompleting) func (s *QuestLog) playQuestAnimations() { - var err error - for j, i := range s.quests[s.selectedTab].icons { questID := s.cordsToQuestID(s.selectedTab+1, j) if s.questStatus[questID] == d2enum.QuestStatusCompleting { @@ -419,11 +416,6 @@ func (s *QuestLog) playQuestAnimations() { // quest should be highlighted and it's label should be displayed s.quests[s.selectedTab].buttons[j].Activate() - err = i.SetCurrentFrame(0) - if err != nil { - s.Error(err.Error()) - } - i.SetPlayLength(questCompleteAnimationDuration) i.PlayForward() i.SetPlayLoop(false) @@ -431,6 +423,23 @@ func (s *QuestLog) playQuestAnimations() { } } +// stopPlayedAnimation stops currently played animations and sets quests in +// completing state to completed (should be used, when quest log is closing) +func (s *QuestLog) stopPlayedAnimations() { + // stops all played animations + for j, i := range s.quests[s.selectedTab].icons { + questID := s.cordsToQuestID(s.selectedTab+1, j) + if s.questStatus[questID] == d2enum.QuestStatusCompleting { + s.questStatus[questID] = d2enum.QuestStatusCompleted + + err := i.SetCurrentFrame(completedFrame) + if err != nil { + s.Error(err.Error()) + } + } + } +} + // setQuestLabel loads quest labels text (title and description) func (s *QuestLog) setQuestLabel() { if s.selectedQuest == d2enum.QuestNone { @@ -455,17 +464,23 @@ func (s *QuestLog) setQuestLabel() { case d2enum.QuestStatusNotStarted: s.questDescr.SetText("") default: - s.questDescr.SetText(strings.Join( - d2util.SplitIntoLinesWithMaxWidth( - s.asset.TranslateString( - fmt.Sprintf("qstsa%dq%d%d", s.selectedTab+1, s.selectedQuest, status), - ), - questDescriptionLenght), - "\n"), - ) + str := fmt.Sprintf("qstsa%dq%d%d", s.selectedTab+1, s.selectedQuest, status) + descr := s.asset.TranslateString(str) + + // if description not found + if str == descr { + s.questDescr.SetText("") + } else { + s.questDescr.SetText(strings.Join( + d2util.SplitIntoLinesWithMaxWidth( + descr, questDescriptionLenght), + "\n"), + ) + } } } +// switch all socket (in current tab) to normal state func (s *QuestLog) clearHighlightment() { for _, i := range s.quests[s.selectedTab].sockets { err := i.SetCurrentFrame(socketNormalFrame) @@ -487,19 +502,23 @@ func (s *QuestLog) setTab(tab int) { s.setQuestLabel() s.playQuestAnimations() + // displays appropriate quests board for i := 0; i < s.maxPlayersAct; i++ { s.quests[i].SetVisible(tab == i) } + // "highlights" appropriate tab for i := 0; i < s.maxPlayersAct; i++ { cv := i + // converts bool to 1/0 if cv == s.selectedTab { mod = 0 } else { mod = 1 } + // sets tab sprite to highlighted/non-highlighted err := s.tab[cv].sprite.SetCurrentFrame(2*cv + mod) if err != nil { s.Error(err.Error()) @@ -513,8 +532,9 @@ func (s *QuestLog) onQuestClicked(number int) { s.Infof("Quest number %d in tab %d clicked", number, s.selectedTab) } +// func (s *QuestLog) onDescrClicked() { - // + s.Info("Quest description button clicked") } // IsOpen returns true if the hero status panel is open @@ -553,21 +573,6 @@ func (s *QuestLog) Close() { s.onCloseCb() } -func (s *QuestLog) stopPlayedAnimations() { - // stops all played animations - for j, i := range s.quests[s.selectedTab].icons { - questID := s.cordsToQuestID(s.selectedTab+1, j) - if s.questStatus[questID] == d2enum.QuestStatusCompleting { - s.questStatus[questID] = d2enum.QuestStatusCompleted - - err := i.SetCurrentFrame(completedFrame) - if err != nil { - s.Error(err.Error()) - } - } - } -} - // SetOnCloseCb the callback run on closing the HeroStatsPanel func (s *QuestLog) SetOnCloseCb(cb func()) { s.onCloseCb = cb @@ -593,10 +598,6 @@ func (s *QuestLog) Advance(elapsed float64) { } } -func (s *QuestLog) renderStaticMenu(target d2interface.Surface) { - s.renderStaticPanelFrames(target) -} - // nolint:dupl // I think it is OK, to duplicate this function func (s *QuestLog) renderStaticPanelFrames(target d2interface.Surface) { frames := []int{ @@ -641,25 +642,3 @@ func (s *QuestLog) cordsToQuestID(act, number int) int { return key } - -//nolint:deadcode,unused // I think, it will be used, if not, we can just remove it -func (s *QuestLog) questIDToCords(id int) (act, number int) { - act = 1 - - for i := 0; i < d2enum.ActsNumber; i++ { - if id < d2enum.NormalActQuestsNumber { - break - } - - act++ - - id -= d2enum.NormalActQuestsNumber - } - - number = id - if act > d2enum.Act4 { - number -= d2enum.HalfQuestsNumber - } - - return act, number -} From 178703f2809aa6dbbdedd37c823641e141a66880 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Thu, 17 Dec 2020 18:58:12 +0100 Subject: [PATCH 25/70] level-up buttons tooltips --- d2core/d2ui/tooltip.go | 2 ++ d2game/d2player/hud.go | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/d2core/d2ui/tooltip.go b/d2core/d2ui/tooltip.go index 281d0765..732efc63 100644 --- a/d2core/d2ui/tooltip.go +++ b/d2core/d2ui/tooltip.go @@ -69,6 +69,8 @@ func (ui *UIManager) NewTooltip(font, boxEnabled: true, } res.manager = ui + // cannot use ui.addWidget, because + // some tooltips could be covered by another widgets ui.addTooltip(res) return res diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index eefb3784..caa2b44e 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -188,14 +188,25 @@ func (h *HUD) Load() { h.loadCustomWidgets() h.loadUIButtons() + // nolint:gomnd // dividing by 2 (const) h.addStatsButton = h.uiManager.NewButton(d2ui.ButtonTypeAddSkill, "") h.addStatsButton.SetPosition(addStatsButtonX, addStatsButtonY) h.addStatsButton.SetVisible(false) + bw, bh := h.addStatsButton.GetSize() + statsTooltip := h.uiManager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, d2ui.TooltipXCenter, d2ui.TooltipYTop) + statsTooltip.SetPosition(addStatsButtonX+bw/2, addStatsButtonY-bh/2) + statsTooltip.SetText(h.asset.TranslateString("strlvlup")) + h.addStatsButton.SetTooltip(statsTooltip) h.panelGroup.AddWidget(h.addStatsButton) h.addSkillButton = h.uiManager.NewButton(d2ui.ButtonTypeAddSkill, "") h.addSkillButton.SetPosition(addSkillButtonX, addSkillButtonY) h.addSkillButton.SetVisible(false) + bw, bh = h.addSkillButton.GetSize() + skillTooltip := h.uiManager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, d2ui.TooltipXCenter, d2ui.TooltipYTop) + skillTooltip.SetPosition(addSkillButtonX+bw/2, addSkillButtonY-bh/2) + skillTooltip.SetText(h.asset.TranslateString("strnewskl")) + h.addSkillButton.SetTooltip(skillTooltip) h.panelGroup.AddWidget(h.addSkillButton) h.panelGroup.SetVisible(true) From add41494be8579c55690b17aad64020a4e59c3e8 Mon Sep 17 00:00:00 2001 From: Intyre Date: Wed, 16 Dec 2020 08:11:28 +0100 Subject: [PATCH 26/70] Replaced kingping with flag package --- d2app/app.go | 164 ++++++++++++++---------------------- d2core/d2asset/d2asset.go | 14 +-- d2core/d2config/d2config.go | 3 - d2core/d2config/defaults.go | 5 +- go.mod | 1 - go.sum | 2 - main.go | 5 +- 7 files changed, 75 insertions(+), 119 deletions(-) diff --git a/d2app/app.go b/d2app/app.go index 272af28c..fcb743b5 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -6,6 +6,7 @@ import ( "container/ring" "encoding/json" "errors" + "flag" "fmt" "image" "image/gif" @@ -24,7 +25,6 @@ import ( "github.com/pkg/profile" "golang.org/x/image/colornames" - "gopkg.in/alecthomas/kingpin.v2" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" @@ -85,11 +85,10 @@ type App struct { // Options is used to store all of the app options that can be set with arguments type Options struct { - printVersion *bool - Debug *bool - profiler *string - Server *d2networking.ServerOptions - LogLevel *d2util.LogLevel + Debug *bool + profiler *string + Server *d2networking.ServerOptions + LogLevel *d2util.LogLevel } type bindTerminalEntry struct { @@ -110,21 +109,24 @@ 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) app := &App{ + Logger: logger, gitBranch: gitBranch, gitCommit: gitCommit, - asset: assetManager, Options: &Options{ Server: &d2networking.ServerOptions{}, }, - errorMessage: assetError, } + app.Infof("OpenDiablo2 - Open source Diablo 2 engine") - app.Logger = d2util.NewLogger() - app.Logger.SetPrefix(appLoggerPrefix) - app.Logger.SetLevel(d2util.LogLevelDefault) + app.parseArguments() + + app.SetLevel(*app.Options.LogLevel) + + app.asset, app.errorMessage = d2asset.NewAssetManager(*app.Options.LogLevel) return app } @@ -140,7 +142,7 @@ func (a *App) startDedicatedServer() error { srvChanIn := make(chan int) srvChanLog := make(chan string) - srvErr := d2networking.StartDedicatedServer(a.asset, srvChanIn, srvChanLog, a.config.LogLevel, maxPlayers) + srvErr := d2networking.StartDedicatedServer(a.asset, srvChanIn, srvChanLog, *a.Options.LogLevel, maxPlayers) if srvErr != nil { return srvErr } @@ -173,15 +175,7 @@ func (a *App) loadEngine() error { return a.renderer.Run(a.updateInitError, updateNOOP, 800, 600, "OpenDiablo2") } - // if the log level was specified at the command line, use it - logLevel := *a.Options.LogLevel - if logLevel == d2util.LogLevelUnspecified { - logLevel = a.config.LogLevel - } - - a.asset.SetLogLevel(logLevel) - - audio := ebiten2.CreateAudio(a.config.LogLevel, a.asset) + audio := ebiten2.CreateAudio(*a.Options.LogLevel, a.asset) inputManager := d2input.NewInputManager() @@ -197,7 +191,7 @@ func (a *App) loadEngine() error { scriptEngine := d2script.CreateScriptEngine() - uiManager := d2ui.NewUIManager(a.asset, renderer, inputManager, a.config.LogLevel, audio) + uiManager := d2ui.NewUIManager(a.asset, renderer, inputManager, *a.Options.LogLevel, audio) a.inputManager = inputManager a.terminal = term @@ -206,51 +200,48 @@ func (a *App) loadEngine() error { a.ui = uiManager a.tAllocSamples = createZeroedRing(nSamplesTAlloc) - if a.gitBranch == "" { - a.gitBranch = "Local Build" - } - return nil } func (a *App) parseArguments() { const ( - versionArg = "version" - versionShort = 'v' - versionDesc = "Prints the version of the app" - - profilerArg = "profile" - profilerDesc = "Profiles the program, one of (cpu, mem, block, goroutine, trace, thread, mutex)" - - serverArg = "dedicated" - serverShort = 'd' - serverDesc = "Starts a dedicated server" - - playersArg = "players" - playersDesc = "Sets the number of max players for the dedicated server" - - loggingArg = "loglevel" - loggingShort = 'l' - loggingDesc = "Enables verbose logging. Log levels will include those below it. " + - "0 disables log messages, " + - "1 shows fatal errors, " + - "2 shows errors, " + - "3 shows warnings, " + - "4 shows info, " + - "5 shows debug" + - "6 uses value from config file (default)" + descProfile = "Profiles the program,\none of (cpu, mem, block, goroutine, trace, thread, mutex)" + descPlayers = "Sets the number of max players for the dedicated server" + descLogging = "Enables verbose logging. Log levels will include those below it.\n" + + " 0 disables log messages\n" + + " 1 shows fatal\n" + + " 2 shows error\n" + + " 3 shows warning\n" + + " 4 shows info\n" + + " 5 shows debug\n" ) - a.Options.profiler = kingpin.Flag(profilerArg, profilerDesc).String() - a.Options.Server.Dedicated = kingpin.Flag(serverArg, serverDesc).Short(serverShort).Bool() - a.Options.printVersion = kingpin.Flag(versionArg, versionDesc).Short(versionShort).Bool() - a.Options.Server.MaxPlayers = kingpin.Flag(playersArg, playersDesc).Int() - a.Options.LogLevel = kingpin.Flag(loggingArg, loggingDesc). - Short(loggingShort). - Default(strconv.Itoa(d2util.LogLevelUnspecified)). - Int() + a.Options.profiler = flag.String("profile", "", descProfile) + a.Options.Server.Dedicated = flag.Bool("dedicated", false, "Starts a dedicated server") + a.Options.Server.MaxPlayers = flag.Int("players", 0, descPlayers) + a.Options.LogLevel = flag.Int("l", d2util.LogLevelDefault, descLogging) + showVersion := flag.Bool("v", false, "Show version") + showHelp := flag.Bool("h", false, "Show help") - kingpin.Parse() + flag.Usage = func() { + fmt.Printf("usage: %s []\n\nFlags:\n", os.Args[0]) + flag.PrintDefaults() + } + flag.Parse() + + if *a.Options.LogLevel >= d2util.LogLevelUnspecified { + *a.Options.LogLevel = d2util.LogLevelDefault + } + + if *showVersion { + a.Infof("version: OpenDiablo2 (%s %s)", a.gitBranch, a.gitCommit) + os.Exit(0) + } + + if *showHelp { + flag.Usage() + os.Exit(0) + } } // LoadConfig loads the OpenDiablo2 config file @@ -288,42 +279,15 @@ func (a *App) LoadConfig() (*d2config.Configuration, error) { } // Run executes the application and kicks off the entire game process -func (a *App) Run() error { - a.parseArguments() - +func (a *App) Run() (err error) { // add our possible config directories _, _ = a.asset.AddSource(filepath.Dir(d2config.LocalConfigPath())) _, _ = a.asset.AddSource(filepath.Dir(d2config.DefaultConfigPath())) - config, err := a.LoadConfig() - if err != nil { + if a.config, err = a.LoadConfig(); err != nil { return err } - a.config = config - - a.asset.SetLogLevel(config.LogLevel) - - // print version and exit if `--version` was supplied - if *a.Options.printVersion { - fmtVersion := "OpenDiablo2 (%s %s)" - - if a.gitBranch == "" { - a.gitBranch = "local" - } - - if a.gitCommit == "" { - a.gitCommit = "build" - } - - a.Errorf(fmtVersion, a.gitBranch, a.gitCommit) - os.Exit(0) - } - - logLevel := *a.Options.LogLevel - - a.asset.SetLogLevel(logLevel) - // start profiler if argument was supplied if len(*a.Options.profiler) > 0 { profiler := enableProfiler(*a.Options.profiler, a) @@ -409,14 +373,14 @@ func (a *App) initialize() error { } } - gui, err := d2gui.CreateGuiManager(a.asset, a.config.LogLevel, a.inputManager) + gui, err := d2gui.CreateGuiManager(a.asset, *a.Options.LogLevel, a.inputManager) if err != nil { return err } a.guiManager = gui - a.screen = d2screen.NewScreenManager(a.ui, a.config.LogLevel, a.guiManager) + a.screen = d2screen.NewScreenManager(a.ui, *a.Options.LogLevel, a.guiManager) a.audio.SetVolumes(a.config.BgmVolume, a.config.SfxVolume) @@ -840,7 +804,7 @@ func (a *App) quitGame() { } func (a *App) enterGuiPlayground() { - a.screen.SetNextScreen(d2gamescreen.CreateGuiTestMain(a.renderer, a.guiManager, a.config.LogLevel, a.asset)) + a.screen.SetNextScreen(d2gamescreen.CreateGuiTestMain(a.renderer, a.guiManager, *a.Options.LogLevel, a.asset)) } func createZeroedRing(n int) *ring.Ring { @@ -909,7 +873,7 @@ func (a *App) ToMainMenu(errorMessageOptional ...string) { buildInfo := d2gamescreen.BuildInfo{Branch: a.gitBranch, Commit: a.gitCommit} mainMenu, err := d2gamescreen.CreateMainMenu(a, a.asset, a.renderer, a.inputManager, a.audio, a.ui, buildInfo, - a.config.LogLevel, errorMessageOptional...) + *a.Options.LogLevel, errorMessageOptional...) if err != nil { a.Error(err.Error()) return @@ -920,7 +884,7 @@ func (a *App) ToMainMenu(errorMessageOptional ...string) { // ToSelectHero forces the game to transition to the Select Hero (create character) screen 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) + selectHero, err := d2gamescreen.CreateSelectHeroClass(a, a.asset, a.renderer, a.audio, a.ui, connType, *a.Options.LogLevel, host) if err != nil { a.Error(err.Error()) return @@ -931,7 +895,7 @@ func (a *App) ToSelectHero(connType d2clientconnectiontype.ClientConnectionType, // ToCreateGame forces the game to transition to the Create Game screen func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.ClientConnectionType, host string) { - gameClient, err := d2client.Create(connType, a.asset, a.config.LogLevel, a.scriptEngine) + gameClient, err := d2client.Create(connType, a.asset, *a.Options.LogLevel, a.scriptEngine) if err != nil { a.Error(err.Error()) } @@ -942,7 +906,7 @@ func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.Clie a.ToMainMenu(errorMessage) } else { game, err := d2gamescreen.CreateGame( - a, a.asset, a.ui, a.renderer, a.inputManager, a.audio, gameClient, a.terminal, a.config.LogLevel, a.guiManager, + a, a.asset, a.ui, a.renderer, a.inputManager, a.audio, gameClient, a.terminal, *a.Options.LogLevel, a.guiManager, ) if err != nil { a.Error(err.Error()) @@ -955,7 +919,7 @@ func (a *App) ToCreateGame(filePath string, connType d2clientconnectiontype.Clie // ToCharacterSelect forces the game to transition to the Character Select (load character) screen func (a *App) ToCharacterSelect(connType d2clientconnectiontype.ClientConnectionType, connHost string) { characterSelect, err := d2gamescreen.CreateCharacterSelect(a, a.asset, a.renderer, a.inputManager, - a.audio, a.ui, connType, a.config.LogLevel, connHost) + a.audio, a.ui, connType, *a.Options.LogLevel, connHost) if err != nil { a.Errorf("unable to create character select screen: %s", err) } @@ -966,7 +930,7 @@ func (a *App) ToCharacterSelect(connType d2clientconnectiontype.ClientConnection // ToMapEngineTest forces the game to transition to the map engine test screen 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) + *a.Options.LogLevel, a.screen) if err != nil { a.Error(err.Error()) return @@ -977,10 +941,10 @@ func (a *App) ToMapEngineTest(region, level int) { // ToCredits forces the game to transition to the credits screen func (a *App) ToCredits() { - a.screen.SetNextScreen(d2gamescreen.CreateCredits(a, a.asset, a.renderer, a.config.LogLevel, a.ui)) + a.screen.SetNextScreen(d2gamescreen.CreateCredits(a, a.asset, a.renderer, *a.Options.LogLevel, a.ui)) } // ToCinematics forces the game to transition to the cinematics menu func (a *App) ToCinematics() { - a.screen.SetNextScreen(d2gamescreen.CreateCinematics(a, a.asset, a.renderer, a.audio, a.config.LogLevel, a.ui)) + a.screen.SetNextScreen(d2gamescreen.CreateCinematics(a, a.asset, a.renderer, a.audio, *a.Options.LogLevel, a.ui)) } diff --git a/d2core/d2asset/d2asset.go b/d2core/d2asset/d2asset.go index 9abd6605..0e721554 100644 --- a/d2core/d2asset/d2asset.go +++ b/d2core/d2asset/d2asset.go @@ -9,19 +9,23 @@ import ( ) // NewAssetManager creates and assigns all necessary dependencies for the AssetManager top-level functions to work correctly -func NewAssetManager() (*AssetManager, error) { - loader, err := d2loader.NewLoader(d2util.LogLevelDefault) +func NewAssetManager(logLevel d2util.LogLevel) (*AssetManager, error) { + loader, err := d2loader.NewLoader(logLevel) if err != nil { return nil, err } - records, err := d2records.NewRecordManager(d2util.LogLevelDebug) + records, err := d2records.NewRecordManager(logLevel) if err != nil { return nil, err } + logger := d2util.NewLogger() + logger.SetPrefix(logPrefix) + logger.SetLevel(logLevel) + manager := &AssetManager{ - Logger: d2util.NewLogger(), + Logger: logger, Loader: loader, tables: make([]d2tbl.TextDictionary, 0), animations: d2cache.CreateCache(animationBudget), @@ -31,7 +35,5 @@ func NewAssetManager() (*AssetManager, error) { Records: records, } - manager.SetPrefix(logPrefix) - return manager, err } diff --git a/d2core/d2config/d2config.go b/d2core/d2config/d2config.go index 3d57e753..de17fc27 100644 --- a/d2core/d2config/d2config.go +++ b/d2core/d2config/d2config.go @@ -5,8 +5,6 @@ import ( "os" "path" "path/filepath" - - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) // Configuration defines the configuration for the engine, loaded from config.json @@ -21,7 +19,6 @@ type Configuration struct { RunInBackground bool VsyncEnabled bool Backend string - LogLevel d2util.LogLevel path string } diff --git a/d2core/d2config/defaults.go b/d2core/d2config/defaults.go index a717005d..7e8a539b 100644 --- a/d2core/d2config/defaults.go +++ b/d2core/d2config/defaults.go @@ -4,8 +4,6 @@ import ( "os/user" "path" "runtime" - - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) // DefaultConfig creates and returns a default configuration @@ -37,8 +35,7 @@ func DefaultConfig() *Configuration { "d2video.mpq", "d2speech.mpq", }, - LogLevel: d2util.LogLevelDefault, - path: DefaultConfigPath(), + path: DefaultConfigPath(), } switch runtime.GOOS { diff --git a/go.mod b/go.mod index 77b9967c..30f191ca 100644 --- a/go.mod +++ b/go.mod @@ -17,6 +17,5 @@ require ( golang.org/x/exp v0.0.0-20201008143054-e3b2a7f2fdc7 // indirect golang.org/x/image v0.0.0-20200927104501-e162460cd6b5 golang.org/x/sys v0.0.0-20201028215240-c5abc1b1d397 // indirect - gopkg.in/alecthomas/kingpin.v2 v2.2.6 gopkg.in/sourcemap.v1 v1.0.5 // indirect ) diff --git a/go.sum b/go.sum index 22724eaa..305000e3 100644 --- a/go.sum +++ b/go.sum @@ -99,8 +99,6 @@ golang.org/x/tools v0.0.0-20201009162240-fcf82128ed91/go.mod h1:z6u4i615ZeAfBE4X golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b h1:QRR6H1YWRnHb4Y/HeNFCTJLFVxaq6wH4YuVdsUOr75U= gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/main.go b/main.go index 1aa178fd..25bb43a7 100644 --- a/main.go +++ b/main.go @@ -8,15 +8,14 @@ import ( // GitBranch is set by the CI build process to the name of the branch //nolint:gochecknoglobals // This is filled in by the build system -var GitBranch string +var GitBranch string = "local" // GitCommit is set by the CI build process to the commit hash //nolint:gochecknoglobals // This is filled in by the build system -var GitCommit string +var GitCommit string = "build" func main() { log.SetFlags(log.Lshortfile) - log.Println("OpenDiablo2 - Open source Diablo 2 engine") instance := d2app.Create(GitBranch, GitCommit) From c7288eec388b3b9923d25752cf19e877ce0ef81f Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 07:40:54 +0100 Subject: [PATCH 27/70] Cleanup d2records logging --- d2core/d2records/armor_type_loader.go | 2 +- d2core/d2records/automagic_loader.go | 2 +- d2core/d2records/automap_loader.go | 2 +- d2core/d2records/belts_loader.go | 2 +- d2core/d2records/body_locations_loader.go | 2 +- d2core/d2records/books_loader.go | 4 ++-- d2core/d2records/books_record.go | 8 ++++---- d2core/d2records/calculations_loader.go | 12 ++++-------- d2core/d2records/charstats_loader.go | 2 +- d2core/d2records/color_loader.go | 2 +- d2core/d2records/component_codes_loader.go | 2 +- d2core/d2records/composite_type_loader.go | 2 +- d2core/d2records/cube_modifier_loader.go | 2 +- d2core/d2records/cube_type_loader.go | 2 +- d2core/d2records/cubemain_loader.go | 2 +- d2core/d2records/difficultylevels_loader.go | 2 +- d2core/d2records/elemtype_loader.go | 2 +- d2core/d2records/events_loader.go | 2 +- d2core/d2records/experience_loader.go | 4 ++-- d2core/d2records/experience_record.go | 6 +++--- d2core/d2records/gamble_loader.go | 2 +- d2core/d2records/gems_loader.go | 6 +++--- d2core/d2records/gems_record.go | 8 ++++---- d2core/d2records/hireling_description_loader.go | 2 +- d2core/d2records/hireling_loader.go | 2 +- d2core/d2records/hit_class_loader.go | 2 +- d2core/d2records/inventory_loader.go | 2 +- d2core/d2records/item_affix_loader.go | 2 +- d2core/d2records/item_armor_loader.go | 2 +- d2core/d2records/item_low_quality_loader.go | 2 +- d2core/d2records/item_misc_loader.go | 2 +- d2core/d2records/item_quality_loader.go | 2 +- d2core/d2records/item_ratio_loader.go | 2 +- d2core/d2records/item_types_loader.go | 2 +- d2core/d2records/item_weapons_loader.go | 2 +- d2core/d2records/itemstatcost_loader.go | 2 +- d2core/d2records/level_details_loader.go | 4 ++-- d2core/d2records/level_details_record.go | 8 ++++---- d2core/d2records/level_maze_loader.go | 4 ++-- d2core/d2records/level_maze_record.go | 8 ++++---- d2core/d2records/level_presets_loader.go | 2 +- d2core/d2records/level_substitutions_loader.go | 2 +- d2core/d2records/level_types_loader.go | 2 +- d2core/d2records/level_warp_loader.go | 2 +- d2core/d2records/missiles_loader.go | 2 +- d2core/d2records/monster_ai_loader.go | 2 +- d2core/d2records/monster_equipment_loader.go | 2 +- d2core/d2records/monster_levels_record.go | 2 +- d2core/d2records/monster_mode_loader.go | 2 +- d2core/d2records/monster_mode_record.go | 2 +- d2core/d2records/monster_placement_loader.go | 2 +- d2core/d2records/monster_preset_loader.go | 2 +- d2core/d2records/monster_property_loader.go | 2 +- d2core/d2records/monster_sequence_loader.go | 2 +- d2core/d2records/monster_sound_loader.go | 2 +- d2core/d2records/monster_stats2_loader.go | 2 +- d2core/d2records/monster_stats_loader.go | 2 +- d2core/d2records/monster_super_unique_loader.go | 2 +- d2core/d2records/monster_type_loader.go | 2 +- d2core/d2records/monster_unique_affix_loader.go | 4 ++-- d2core/d2records/monster_unique_modifiers_loader.go | 2 +- d2core/d2records/npc_loader.go | 2 +- d2core/d2records/object_details_loader.go | 2 +- d2core/d2records/object_groups_loader.go | 2 +- d2core/d2records/object_mode_loader.go | 2 +- d2core/d2records/object_types_loader.go | 2 +- d2core/d2records/overlays_loader.go | 2 +- d2core/d2records/pet_type_loader.go | 2 +- d2core/d2records/player_class_loader.go | 2 +- d2core/d2records/player_mode_loader.go | 2 +- d2core/d2records/player_type_loader.go | 2 +- d2core/d2records/property_loader.go | 2 +- d2core/d2records/rare_prefix_loader.go | 2 +- d2core/d2records/rare_suffix_loader.go | 2 +- d2core/d2records/record_manager.go | 4 ++-- d2core/d2records/runeword_loader.go | 8 ++++---- d2core/d2records/runeword_record.go | 8 ++++---- d2core/d2records/set_item_loader.go | 2 +- d2core/d2records/set_loader.go | 2 +- d2core/d2records/shrine_loader.go | 2 +- d2core/d2records/skill_description_loader.go | 2 +- d2core/d2records/skill_details_loader.go | 2 +- d2core/d2records/sound_details_loader.go | 2 +- d2core/d2records/sound_environment_loader.go | 2 +- d2core/d2records/states_loader.go | 2 +- d2core/d2records/storepage_loader.go | 2 +- d2core/d2records/treasure_class_loader.go | 4 ++-- d2core/d2records/unique_appellation_loader.go | 2 +- d2core/d2records/unique_items_loader.go | 2 +- d2core/d2records/weapon_class_loader.go | 2 +- 90 files changed, 122 insertions(+), 126 deletions(-) diff --git a/d2core/d2records/armor_type_loader.go b/d2core/d2records/armor_type_loader.go index 612e0481..30a2b0fc 100644 --- a/d2core/d2records/armor_type_loader.go +++ b/d2core/d2records/armor_type_loader.go @@ -22,7 +22,7 @@ func armorTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Animation.Token.Armor = records - r.Logger.Infof("Loaded %d ArmorType records", len(records)) + r.Debugf("Loaded %d ArmorType records", len(records)) return nil } diff --git a/d2core/d2records/automagic_loader.go b/d2core/d2records/automagic_loader.go index b666c96a..cb66cef8 100644 --- a/d2core/d2records/automagic_loader.go +++ b/d2core/d2records/automagic_loader.go @@ -79,7 +79,7 @@ func autoMagicLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d AutoMagic records", len(records)) + r.Debugf("Loaded %d AutoMagic records", len(records)) r.Item.AutoMagic = records diff --git a/d2core/d2records/automap_loader.go b/d2core/d2records/automap_loader.go index fe33002c..69f26ad5 100644 --- a/d2core/d2records/automap_loader.go +++ b/d2core/d2records/automap_loader.go @@ -37,7 +37,7 @@ func autoMapLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d AutoMapRecord records", len(records)) + r.Debugf("Loaded %d AutoMap records", len(records)) r.Level.AutoMaps = records diff --git a/d2core/d2records/belts_loader.go b/d2core/d2records/belts_loader.go index ba954718..622f8dec 100644 --- a/d2core/d2records/belts_loader.go +++ b/d2core/d2records/belts_loader.go @@ -102,7 +102,7 @@ func beltsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d belts", len(records)) + r.Debugf("Loaded %d Belt records", len(records)) r.Item.Belts = records diff --git a/d2core/d2records/body_locations_loader.go b/d2core/d2records/body_locations_loader.go index 70c9855e..6b660c74 100644 --- a/d2core/d2records/body_locations_loader.go +++ b/d2core/d2records/body_locations_loader.go @@ -19,7 +19,7 @@ func bodyLocationsLoader(r *RecordManager, d *d2txt.DataDictionary) error { panic(d.Err) } - r.Logger.Infof("Loaded %d Body Location records", len(records)) + r.Debugf("Loaded %d BodyLocation records", len(records)) r.BodyLocations = records diff --git a/d2core/d2records/books_loader.go b/d2core/d2records/books_loader.go index 9b8c46fa..866f3228 100644 --- a/d2core/d2records/books_loader.go +++ b/d2core/d2records/books_loader.go @@ -8,7 +8,7 @@ func booksLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(Books) for d.Next() { - record := &BooksRecord{ + record := &BookRecord{ Name: d.String("Name"), Namco: d.String("Namco"), Completed: d.String("Completed"), @@ -28,7 +28,7 @@ func booksLoader(r *RecordManager, d *d2txt.DataDictionary) error { panic(d.Err) } - r.Logger.Infof("Loaded %d book items", len(records)) + r.Debugf("Loaded %d Book records", len(records)) r.Item.Books = records diff --git a/d2core/d2records/books_record.go b/d2core/d2records/books_record.go index 119185d7..472179ea 100644 --- a/d2core/d2records/books_record.go +++ b/d2core/d2records/books_record.go @@ -1,10 +1,10 @@ package d2records -// Books stores all of the BooksRecords -type Books map[string]*BooksRecord +// Books stores all of the BookRecords +type Books map[string]*BookRecord -// BooksRecord is a representation of a row from books.txt -type BooksRecord struct { +// BookRecord is a representation of a row from books.txt +type BookRecord struct { Name string Namco string // The displayed name, where the string prefix is "Tome" Completed string diff --git a/d2core/d2records/calculations_loader.go b/d2core/d2records/calculations_loader.go index bc3330cb..3a07677f 100644 --- a/d2core/d2records/calculations_loader.go +++ b/d2core/d2records/calculations_loader.go @@ -5,32 +5,28 @@ import ( ) func skillCalcLoader(r *RecordManager, d *d2txt.DataDictionary) error { - records, err := loadCalculations(r, d) + records, err := loadCalculations(r, d, "Skill") if err != nil { return err } - r.Logger.Infof("Loaded %d Skill Calculation records", len(records)) - r.Calculation.Skills = records return nil } func missileCalcLoader(r *RecordManager, d *d2txt.DataDictionary) error { - records, err := loadCalculations(r, d) + records, err := loadCalculations(r, d, "Missile") if err != nil { return err } - r.Logger.Infof("Loaded %d Missile Calculation records", len(records)) - r.Calculation.Missiles = records return nil } -func loadCalculations(r *RecordManager, d *d2txt.DataDictionary) (Calculations, error) { +func loadCalculations(r *RecordManager, d *d2txt.DataDictionary, name string) (Calculations, error) { records := make(Calculations) for d.Next() { @@ -45,7 +41,7 @@ func loadCalculations(r *RecordManager, d *d2txt.DataDictionary) (Calculations, return nil, d.Err } - r.Logger.Infof("Loaded %d Skill Calculation records", len(records)) + r.Debugf("Loaded %d %s Calculation records", len(records), name) return records, nil } diff --git a/d2core/d2records/charstats_loader.go b/d2core/d2records/charstats_loader.go index b5af365d..2fd0b78f 100644 --- a/d2core/d2records/charstats_loader.go +++ b/d2core/d2records/charstats_loader.go @@ -136,7 +136,7 @@ func charStatsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d CharStats records", len(records)) + r.Debugf("Loaded %d CharStat records", len(records)) r.Character.Stats = records diff --git a/d2core/d2records/color_loader.go b/d2core/d2records/color_loader.go index 1f2c502a..2adb67cc 100644 --- a/d2core/d2records/color_loader.go +++ b/d2core/d2records/color_loader.go @@ -22,7 +22,7 @@ func colorsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Colors = records - r.Logger.Infof("Loaded %d Color records", len(records)) + r.Debugf("Loaded %d Color records", len(records)) return nil } diff --git a/d2core/d2records/component_codes_loader.go b/d2core/d2records/component_codes_loader.go index 6a840f4b..af02f09d 100644 --- a/d2core/d2records/component_codes_loader.go +++ b/d2core/d2records/component_codes_loader.go @@ -19,7 +19,7 @@ func componentCodesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ComponentCode records", len(records)) + r.Debugf("Loaded %d ComponentCode records", len(records)) r.ComponentCodes = records diff --git a/d2core/d2records/composite_type_loader.go b/d2core/d2records/composite_type_loader.go index c60ed58c..ecb5c4ea 100644 --- a/d2core/d2records/composite_type_loader.go +++ b/d2core/d2records/composite_type_loader.go @@ -22,7 +22,7 @@ func compositeTypeLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Animation.Token.Composite = records - r.Logger.Infof("Loaded %d Composite Type records", len(records)) + r.Debugf("Loaded %d CompositeType records", len(records)) return nil } diff --git a/d2core/d2records/cube_modifier_loader.go b/d2core/d2records/cube_modifier_loader.go index f9ddc7fa..18e25847 100644 --- a/d2core/d2records/cube_modifier_loader.go +++ b/d2core/d2records/cube_modifier_loader.go @@ -22,7 +22,7 @@ func cubeModifierLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Cube.Modifiers = records - r.Logger.Infof("Loaded %d Cube Modifier records", len(records)) + r.Debugf("Loaded %d CubeModifier records", len(records)) return nil } diff --git a/d2core/d2records/cube_type_loader.go b/d2core/d2records/cube_type_loader.go index 18bbf171..b79551f6 100644 --- a/d2core/d2records/cube_type_loader.go +++ b/d2core/d2records/cube_type_loader.go @@ -22,7 +22,7 @@ func cubeTypeLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Cube.Types = records - r.Logger.Infof("Loaded %d Cube Type records", len(records)) + r.Debugf("Loaded %d CubeType records", len(records)) return nil } diff --git a/d2core/d2records/cubemain_loader.go b/d2core/d2records/cubemain_loader.go index 76692521..01d61e40 100644 --- a/d2core/d2records/cubemain_loader.go +++ b/d2core/d2records/cubemain_loader.go @@ -96,7 +96,7 @@ func cubeRecipeLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d CubeMainRecord records", len(records)) + r.Debugf("Loaded %d CubeRecipe records", len(records)) r.Item.Cube.Recipes = records diff --git a/d2core/d2records/difficultylevels_loader.go b/d2core/d2records/difficultylevels_loader.go index c880e1e5..c048b2cd 100644 --- a/d2core/d2records/difficultylevels_loader.go +++ b/d2core/d2records/difficultylevels_loader.go @@ -42,7 +42,7 @@ func difficultyLevelsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d DifficultyLevel records", len(records)) + r.Debugf("Loaded %d DifficultyLevel records", len(records)) r.DifficultyLevels = records diff --git a/d2core/d2records/elemtype_loader.go b/d2core/d2records/elemtype_loader.go index 7142a0ac..863dd712 100644 --- a/d2core/d2records/elemtype_loader.go +++ b/d2core/d2records/elemtype_loader.go @@ -20,7 +20,7 @@ func elemTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ElemType records", len(records)) + r.Debugf("Loaded %d ElemType records", len(records)) r.ElemTypes = records diff --git a/d2core/d2records/events_loader.go b/d2core/d2records/events_loader.go index 08db2485..4af88bbc 100644 --- a/d2core/d2records/events_loader.go +++ b/d2core/d2records/events_loader.go @@ -20,7 +20,7 @@ func eventsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Event records", len(records)) + r.Debugf("Loaded %d Event records", len(records)) r.Character.Events = records diff --git a/d2core/d2records/experience_loader.go b/d2core/d2records/experience_loader.go index 7380420f..5ef9b922 100644 --- a/d2core/d2records/experience_loader.go +++ b/d2core/d2records/experience_loader.go @@ -48,7 +48,7 @@ func experienceLoader(r *RecordManager, d *d2txt.DataDictionary) error { } for d.Next() { - record := &ExperienceBreakpointsRecord{ + record := &ExperienceBreakpointRecord{ Level: d.Number("Level"), HeroBreakpoints: map[d2enum.Hero]int{ d2enum.HeroAmazon: d.Number("Amazon"), @@ -68,7 +68,7 @@ func experienceLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Experience Breakpoint records", len(breakpoints)) + r.Debugf("Loaded %d ExperienceBreakpoint records", len(breakpoints)) r.Character.MaxLevel = maxLevels r.Character.Experience = breakpoints diff --git a/d2core/d2records/experience_record.go b/d2core/d2records/experience_record.go index 9b80b0e4..821122a5 100644 --- a/d2core/d2records/experience_record.go +++ b/d2core/d2records/experience_record.go @@ -4,14 +4,14 @@ import "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" // ExperienceBreakpoints describes the required experience // for each level for each character class -type ExperienceBreakpoints map[int]*ExperienceBreakpointsRecord +type ExperienceBreakpoints map[int]*ExperienceBreakpointRecord // ExperienceMaxLevels defines the max character levels type ExperienceMaxLevels map[d2enum.Hero]int -// ExperienceBreakpointsRecord describes the experience points required to +// ExperienceBreakpointRecord describes the experience points required to // gain a level for all character classes -type ExperienceBreakpointsRecord struct { +type ExperienceBreakpointRecord struct { Level int HeroBreakpoints map[d2enum.Hero]int Ratio int diff --git a/d2core/d2records/gamble_loader.go b/d2core/d2records/gamble_loader.go index dda7ac08..7fce2967 100644 --- a/d2core/d2records/gamble_loader.go +++ b/d2core/d2records/gamble_loader.go @@ -19,7 +19,7 @@ func gambleLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d gamble records", len(records)) + r.Debugf("Loaded %d Gamble records", len(records)) r.Gamble = records diff --git a/d2core/d2records/gems_loader.go b/d2core/d2records/gems_loader.go index bc71b23a..5db90827 100644 --- a/d2core/d2records/gems_loader.go +++ b/d2core/d2records/gems_loader.go @@ -4,12 +4,12 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2txt" ) -// LoadGems loads gem records into a map[string]*GemsRecord +// LoadGems loads gem records into a map[string]*GemRecord func gemsLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(Gems) for d.Next() { - gem := &GemsRecord{ + gem := &GemRecord{ Name: d.String("name"), Letter: d.String("letter"), Transform: d.Number("transform"), @@ -60,7 +60,7 @@ func gemsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Gems records", len(records)) + r.Debugf("Loaded %d Gem records", len(records)) r.Item.Gems = records diff --git a/d2core/d2records/gems_record.go b/d2core/d2records/gems_record.go index 62879a00..cbb69e76 100644 --- a/d2core/d2records/gems_record.go +++ b/d2core/d2records/gems_record.go @@ -1,11 +1,11 @@ package d2records -// Gems stores all of the GemsRecords -type Gems map[string]*GemsRecord +// Gems stores all of the GemRecords +type Gems map[string]*GemRecord -// GemsRecord is a representation of a single row of gems.txt +// GemRecord is a representation of a single row of gems.txt // it describes the properties of socketable items -type GemsRecord struct { +type GemRecord struct { Name string Letter string Transform int diff --git a/d2core/d2records/hireling_description_loader.go b/d2core/d2records/hireling_description_loader.go index fa6c7d0c..e289f9d2 100644 --- a/d2core/d2records/hireling_description_loader.go +++ b/d2core/d2records/hireling_description_loader.go @@ -22,7 +22,7 @@ func hirelingDescriptionLoader(r *RecordManager, d *d2txt.DataDictionary) error r.Hireling.Descriptions = records - r.Logger.Infof("Loaded %d Hireling Descriptions records", len(records)) + r.Debugf("Loaded %d HirelingDescription records", len(records)) return nil } diff --git a/d2core/d2records/hireling_loader.go b/d2core/d2records/hireling_loader.go index c1262988..785d7f76 100644 --- a/d2core/d2records/hireling_loader.go +++ b/d2core/d2records/hireling_loader.go @@ -90,7 +90,7 @@ func hirelingLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Hireling records", len(records)) + r.Debugf("Loaded %d Hireling records", len(records)) r.Hireling.Details = records diff --git a/d2core/d2records/hit_class_loader.go b/d2core/d2records/hit_class_loader.go index 0c265066..68c98d47 100644 --- a/d2core/d2records/hit_class_loader.go +++ b/d2core/d2records/hit_class_loader.go @@ -22,7 +22,7 @@ func hitClassLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Animation.Token.HitClass = records - r.Logger.Infof("Loaded %d HitClass records", len(records)) + r.Debugf("Loaded %d HitClass records", len(records)) return nil } diff --git a/d2core/d2records/inventory_loader.go b/d2core/d2records/inventory_loader.go index cbe0974c..931c81fe 100644 --- a/d2core/d2records/inventory_loader.go +++ b/d2core/d2records/inventory_loader.go @@ -130,7 +130,7 @@ func inventoryLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Inventory Panel records", len(records)) + r.Debugf("Loaded %d Inventory records", len(records)) r.Layout.Inventory = records diff --git a/d2core/d2records/item_affix_loader.go b/d2core/d2records/item_affix_loader.go index 2b0f7999..09f1608d 100644 --- a/d2core/d2records/item_affix_loader.go +++ b/d2core/d2records/item_affix_loader.go @@ -70,7 +70,7 @@ func loadAffixDictionary( } name := getAffixString(superType, subType) - r.Logger.Infof("Loaded %d %s records", len(records), name) + r.Debugf("Loaded %d %s records", len(records), name) return records, groups, nil } diff --git a/d2core/d2records/item_armor_loader.go b/d2core/d2records/item_armor_loader.go index 2023f7fd..d910e964 100644 --- a/d2core/d2records/item_armor_loader.go +++ b/d2core/d2records/item_armor_loader.go @@ -16,7 +16,7 @@ func armorLoader(r *RecordManager, d *d2txt.DataDictionary) error { return err } - r.Logger.Infof("Loaded %d armors", len(records)) + r.Debugf("Loaded %d Armor Item records", len(records)) r.Item.Armors = records diff --git a/d2core/d2records/item_low_quality_loader.go b/d2core/d2records/item_low_quality_loader.go index eb8b99bf..ec491780 100644 --- a/d2core/d2records/item_low_quality_loader.go +++ b/d2core/d2records/item_low_quality_loader.go @@ -21,7 +21,7 @@ func lowQualityLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.LowQualityPrefixes = records - r.Logger.Infof("Loaded %d Low Item Quality records", len(records)) + r.Debugf("Loaded %d LowQuality records", len(records)) return nil } diff --git a/d2core/d2records/item_misc_loader.go b/d2core/d2records/item_misc_loader.go index 0851fd08..957abeaa 100644 --- a/d2core/d2records/item_misc_loader.go +++ b/d2core/d2records/item_misc_loader.go @@ -13,7 +13,7 @@ func miscItemsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return err } - r.Logger.Infof("Loaded %d misc items", len(records)) + r.Debugf("Loaded %d Misc Item records", len(records)) r.Item.Misc = records diff --git a/d2core/d2records/item_quality_loader.go b/d2core/d2records/item_quality_loader.go index f3d92e74..e497376d 100644 --- a/d2core/d2records/item_quality_loader.go +++ b/d2core/d2records/item_quality_loader.go @@ -45,7 +45,7 @@ func itemQualityLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Quality = records - r.Logger.Infof("Loaded %d ItemQualities records", len(records)) + r.Debugf("Loaded %d ItemQuality records", len(records)) return nil } diff --git a/d2core/d2records/item_ratio_loader.go b/d2core/d2records/item_ratio_loader.go index 06e460b7..bc47202f 100644 --- a/d2core/d2records/item_ratio_loader.go +++ b/d2core/d2records/item_ratio_loader.go @@ -55,7 +55,7 @@ func itemRatioLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ItemRatio records", len(records)) + r.Debugf("Loaded %d ItemRatio records", len(records)) r.Item.Ratios = records diff --git a/d2core/d2records/item_types_loader.go b/d2core/d2records/item_types_loader.go index 258791f3..e278e0b6 100644 --- a/d2core/d2records/item_types_loader.go +++ b/d2core/d2records/item_types_loader.go @@ -76,7 +76,7 @@ func itemTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ItemType records", len(records)) + r.Debugf("Loaded %d ItemType records", len(records)) r.Item.Types = records r.Item.Equivalency = equivMap diff --git a/d2core/d2records/item_weapons_loader.go b/d2core/d2records/item_weapons_loader.go index dfd9e2cd..cbc12d56 100644 --- a/d2core/d2records/item_weapons_loader.go +++ b/d2core/d2records/item_weapons_loader.go @@ -13,7 +13,7 @@ func weaponsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return err } - r.Logger.Infof("Loaded %d weapons", len(records)) + r.Debugf("Loaded %d Weapon records", len(records)) r.Item.Weapons = records diff --git a/d2core/d2records/itemstatcost_loader.go b/d2core/d2records/itemstatcost_loader.go index ed4c328a..e4f38f76 100644 --- a/d2core/d2records/itemstatcost_loader.go +++ b/d2core/d2records/itemstatcost_loader.go @@ -95,7 +95,7 @@ func itemStatCostLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ItemStatCost records", len(records)) + r.Debugf("Loaded %d ItemStatCost records", len(records)) r.Item.Stats = records diff --git a/d2core/d2records/level_details_loader.go b/d2core/d2records/level_details_loader.go index e53722ff..5591523b 100644 --- a/d2core/d2records/level_details_loader.go +++ b/d2core/d2records/level_details_loader.go @@ -11,7 +11,7 @@ func levelDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(LevelDetails) for d.Next() { - record := &LevelDetailsRecord{ + record := &LevelDetailRecord{ Name: d.String("Name "), ID: d.Number("Id"), Palette: d.Number("Pal"), @@ -165,7 +165,7 @@ func levelDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d LevelDetails records", len(records)) + r.Debugf("Loaded %d LevelDetail records", len(records)) r.Level.Details = records diff --git a/d2core/d2records/level_details_record.go b/d2core/d2records/level_details_record.go index db9430b2..386882e5 100644 --- a/d2core/d2records/level_details_record.go +++ b/d2core/d2records/level_details_record.go @@ -2,13 +2,13 @@ package d2records import "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" -// LevelDetails has all of the LevelDetailsRecords -type LevelDetails map[int]*LevelDetailsRecord +// LevelDetails has all of the LevelDetailRecords +type LevelDetails map[int]*LevelDetailRecord -// LevelDetailsRecord is a representation of a row from levels.txt +// LevelDetailRecord is a representation of a row from levels.txt // it describes lots of things about the levels, like where they are connected, // what kinds of monsters spawn, the level generator type, and lots of other stuff. -type LevelDetailsRecord struct { +type LevelDetailRecord struct { // Name // This column has no function, it only serves as a comment field to make it diff --git a/d2core/d2records/level_maze_loader.go b/d2core/d2records/level_maze_loader.go index 8c592922..0b6edd6a 100644 --- a/d2core/d2records/level_maze_loader.go +++ b/d2core/d2records/level_maze_loader.go @@ -8,7 +8,7 @@ func levelMazeDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(LevelMazeDetails) for d.Next() { - record := &LevelMazeDetailsRecord{ + record := &LevelMazeDetailRecord{ Name: d.String("Name"), LevelID: d.Number("Level"), NumRoomsNormal: d.Number("Rooms"), @@ -24,7 +24,7 @@ func levelMazeDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d LevelMazeDetails records", len(records)) + r.Debugf("Loaded %d LevelMazeDetail records", len(records)) r.Level.Maze = records diff --git a/d2core/d2records/level_maze_record.go b/d2core/d2records/level_maze_record.go index 61877e5b..b47dfee3 100644 --- a/d2core/d2records/level_maze_record.go +++ b/d2core/d2records/level_maze_record.go @@ -1,11 +1,11 @@ package d2records -// LevelMazeDetails stores all of the LevelMazeDetailsRecords -type LevelMazeDetails map[int]*LevelMazeDetailsRecord +// LevelMazeDetails stores all of the LevelMazeDetailRecords +type LevelMazeDetails map[int]*LevelMazeDetailRecord -// LevelMazeDetailsRecord is a representation of a row from lvlmaze.txt +// LevelMazeDetailRecord is a representation of a row from lvlmaze.txt // these records define the parameters passed to the maze level generator -type LevelMazeDetailsRecord struct { +type LevelMazeDetailRecord struct { // descriptive, not loaded in game. Corresponds with Name field in // Levels.txt Name string // Name diff --git a/d2core/d2records/level_presets_loader.go b/d2core/d2records/level_presets_loader.go index 8cd32ea6..39847d6b 100644 --- a/d2core/d2records/level_presets_loader.go +++ b/d2core/d2records/level_presets_loader.go @@ -42,7 +42,7 @@ func levelPresetLoader(r *RecordManager, d *d2txt.DataDictionary) error { records[record.DefinitionID] = record } - r.Logger.Infof("Loaded %d level presets", len(records)) + r.Debugf("Loaded %d LevelPresets records", len(records)) if d.Err != nil { return d.Err diff --git a/d2core/d2records/level_substitutions_loader.go b/d2core/d2records/level_substitutions_loader.go index 3eacde9c..0b0059a8 100644 --- a/d2core/d2records/level_substitutions_loader.go +++ b/d2core/d2records/level_substitutions_loader.go @@ -40,7 +40,7 @@ func levelSubstitutionsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d LevelSubstitution records", len(records)) + r.Debugf("Loaded %d LevelSubstitution records", len(records)) r.Level.Sub = records diff --git a/d2core/d2records/level_types_loader.go b/d2core/d2records/level_types_loader.go index 160a621c..8ff4cabd 100644 --- a/d2core/d2records/level_types_loader.go +++ b/d2core/d2records/level_types_loader.go @@ -58,7 +58,7 @@ func levelTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d LevelType records", len(records)) + r.Debugf("Loaded %d LevelType records", len(records)) r.Level.Types = records diff --git a/d2core/d2records/level_warp_loader.go b/d2core/d2records/level_warp_loader.go index f474f94a..84bc6964 100644 --- a/d2core/d2records/level_warp_loader.go +++ b/d2core/d2records/level_warp_loader.go @@ -30,7 +30,7 @@ func levelWarpsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d level warps", len(records)) + r.Debugf("Loaded %d LevelWarp records", len(records)) r.Level.Warp = records diff --git a/d2core/d2records/missiles_loader.go b/d2core/d2records/missiles_loader.go index 6183c2fb..807e88e5 100644 --- a/d2core/d2records/missiles_loader.go +++ b/d2core/d2records/missiles_loader.go @@ -304,7 +304,7 @@ func missilesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Missile Records", len(records)) + r.Debugf("Loaded %d Missile records", len(records)) r.Missiles = records diff --git a/d2core/d2records/monster_ai_loader.go b/d2core/d2records/monster_ai_loader.go index 5f89565e..47841eea 100644 --- a/d2core/d2records/monster_ai_loader.go +++ b/d2core/d2records/monster_ai_loader.go @@ -19,7 +19,7 @@ func monsterAiLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonsterAI records", len(records)) + r.Debugf("Loaded %d MonsterAI records", len(records)) r.Monster.AI = records diff --git a/d2core/d2records/monster_equipment_loader.go b/d2core/d2records/monster_equipment_loader.go index 5639649a..0e4b800a 100644 --- a/d2core/d2records/monster_equipment_loader.go +++ b/d2core/d2records/monster_equipment_loader.go @@ -49,7 +49,7 @@ func monsterEquipmentLoader(r *RecordManager, d *d2txt.DataDictionary) error { length += len(records[k]) } - r.Logger.Infof("Loaded %d MonsterEquipment records", length) + r.Debugf("Loaded %d MonsterEquipment records", length) r.Monster.Equipment = records diff --git a/d2core/d2records/monster_levels_record.go b/d2core/d2records/monster_levels_record.go index 89bb71f9..6b71e601 100644 --- a/d2core/d2records/monster_levels_record.go +++ b/d2core/d2records/monster_levels_record.go @@ -52,7 +52,7 @@ func monsterLevelsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonsterLevel records", len(records)) + r.Debugf("Loaded %d MonsterLevel records", len(records)) r.Monster.Levels = records diff --git a/d2core/d2records/monster_mode_loader.go b/d2core/d2records/monster_mode_loader.go index 23e512fb..41cb4adf 100644 --- a/d2core/d2records/monster_mode_loader.go +++ b/d2core/d2records/monster_mode_loader.go @@ -21,7 +21,7 @@ func monsterModeLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonMode records", len(records)) + r.Debugf("Loaded %d MonMode records", len(records)) r.Monster.Modes = records diff --git a/d2core/d2records/monster_mode_record.go b/d2core/d2records/monster_mode_record.go index 7a36ff05..9df79421 100644 --- a/d2core/d2records/monster_mode_record.go +++ b/d2core/d2records/monster_mode_record.go @@ -1,6 +1,6 @@ package d2records -// MonModes stores all of the GemsRecords +// MonModes stores all of the MonModeRecords type MonModes map[string]*MonModeRecord // MonModeRecord is a representation of a single row of Monmode.txt diff --git a/d2core/d2records/monster_placement_loader.go b/d2core/d2records/monster_placement_loader.go index a1e56df0..adfbb8e4 100644 --- a/d2core/d2records/monster_placement_loader.go +++ b/d2core/d2records/monster_placement_loader.go @@ -18,7 +18,7 @@ func monsterPlacementsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Monster.Placements = records - r.Logger.Infof("Loaded %d MonsterPlacement records", len(records)) + r.Debugf("Loaded %d MonsterPlacement records", len(records)) return nil } diff --git a/d2core/d2records/monster_preset_loader.go b/d2core/d2records/monster_preset_loader.go index c2e84ea3..d9380549 100644 --- a/d2core/d2records/monster_preset_loader.go +++ b/d2core/d2records/monster_preset_loader.go @@ -21,7 +21,7 @@ func monsterPresetLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonPreset records", len(records)) + r.Debugf("Loaded %d MonPreset records", len(records)) r.Monster.Presets = records diff --git a/d2core/d2records/monster_property_loader.go b/d2core/d2records/monster_property_loader.go index 0662c40d..b3e63c3c 100644 --- a/d2core/d2records/monster_property_loader.go +++ b/d2core/d2records/monster_property_loader.go @@ -57,7 +57,7 @@ func monsterPropertiesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonProp records", len(records)) + r.Debugf("Loaded %d MonProp records", len(records)) r.Monster.Props = records diff --git a/d2core/d2records/monster_sequence_loader.go b/d2core/d2records/monster_sequence_loader.go index 449c6b3e..e168fe1d 100644 --- a/d2core/d2records/monster_sequence_loader.go +++ b/d2core/d2records/monster_sequence_loader.go @@ -31,7 +31,7 @@ func monsterSequencesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonsterSequence records", len(records)) + r.Debugf("Loaded %d MonsterSequence records", len(records)) r.Monster.Sequences = records diff --git a/d2core/d2records/monster_sound_loader.go b/d2core/d2records/monster_sound_loader.go index 96b6909c..3f8aa3f2 100644 --- a/d2core/d2records/monster_sound_loader.go +++ b/d2core/d2records/monster_sound_loader.go @@ -57,7 +57,7 @@ func monsterSoundsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Monster Sound records", len(records)) + r.Debugf("Loaded %d MonsterSound records", len(records)) r.Monster.Sounds = records diff --git a/d2core/d2records/monster_stats2_loader.go b/d2core/d2records/monster_stats2_loader.go index 51981d27..8d092ac5 100644 --- a/d2core/d2records/monster_stats2_loader.go +++ b/d2core/d2records/monster_stats2_loader.go @@ -161,7 +161,7 @@ func monsterStats2Loader(r *RecordManager, d *d2txt.DataDictionary) error { panic(d.Err) } - r.Logger.Infof("Loaded %d MonStats2 records", len(records)) + r.Debugf("Loaded %d MonStat2 records", len(records)) r.Monster.Stats2 = records diff --git a/d2core/d2records/monster_stats_loader.go b/d2core/d2records/monster_stats_loader.go index a6b8c6a9..e2c7cf14 100644 --- a/d2core/d2records/monster_stats_loader.go +++ b/d2core/d2records/monster_stats_loader.go @@ -272,7 +272,7 @@ func monsterStatsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d MonStats records", len(records)) + r.Debugf("Loaded %d MonStat records", len(records)) r.Monster.Stats = records diff --git a/d2core/d2records/monster_super_unique_loader.go b/d2core/d2records/monster_super_unique_loader.go index 774bb77a..852c0f25 100644 --- a/d2core/d2records/monster_super_unique_loader.go +++ b/d2core/d2records/monster_super_unique_loader.go @@ -40,7 +40,7 @@ func monsterSuperUniqeLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Monster.Unique.Super = records - r.Logger.Infof("Loaded %d SuperUnique records", len(records)) + r.Debugf("Loaded %d SuperUnique records", len(records)) return nil } diff --git a/d2core/d2records/monster_type_loader.go b/d2core/d2records/monster_type_loader.go index 75f2fd0d..d4635af9 100644 --- a/d2core/d2records/monster_type_loader.go +++ b/d2core/d2records/monster_type_loader.go @@ -23,7 +23,7 @@ func monsterTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { panic(d.Err) } - r.Logger.Infof("Loaded %d MonType records", len(records)) + r.Debugf("Loaded %d MonType records", len(records)) r.Monster.Types = records diff --git a/d2core/d2records/monster_unique_affix_loader.go b/d2core/d2records/monster_unique_affix_loader.go index cfe6f497..0061926a 100644 --- a/d2core/d2records/monster_unique_affix_loader.go +++ b/d2core/d2records/monster_unique_affix_loader.go @@ -59,7 +59,7 @@ func uniqueMonsterPrefixLoader(r *RecordManager, d *d2txt.DataDictionary) error r.Monster.Name.Prefix = records - r.Logger.Infof("Loaded %d unique monster prefix records", len(records)) + r.Debugf("Loaded %d UniqueMonsterPrefix records", len(records)) return nil } @@ -72,7 +72,7 @@ func uniqueMonsterSuffixLoader(r *RecordManager, d *d2txt.DataDictionary) error r.Monster.Name.Suffix = records - r.Logger.Infof("Loaded %d unique monster suffix records", len(records)) + r.Debugf("Loaded %d UniqueMonsterSuffix records", len(records)) return nil } diff --git a/d2core/d2records/monster_unique_modifiers_loader.go b/d2core/d2records/monster_unique_modifiers_loader.go index 949d0ef4..3da4aec3 100644 --- a/d2core/d2records/monster_unique_modifiers_loader.go +++ b/d2core/d2records/monster_unique_modifiers_loader.go @@ -48,7 +48,7 @@ func monsterUniqModifiersLoader(r *RecordManager, d *d2txt.DataDictionary) error return d.Err } - r.Logger.Infof("Loaded %d MonsterUniqueModifier records", len(records)) + r.Debugf("Loaded %d MonsterUniqueModifier records", len(records)) r.Monster.Unique.Mods = records r.Monster.Unique.Constants = constants diff --git a/d2core/d2records/npc_loader.go b/d2core/d2records/npc_loader.go index 685a3a5c..ebf9a590 100644 --- a/d2core/d2records/npc_loader.go +++ b/d2core/d2records/npc_loader.go @@ -64,7 +64,7 @@ func npcLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.NPCs = records - r.Logger.Infof("Loaded %d NPC records", len(records)) + r.Debugf("Loaded %d NPC records", len(records)) return nil } diff --git a/d2core/d2records/object_details_loader.go b/d2core/d2records/object_details_loader.go index c7dca4c6..1e4bb850 100644 --- a/d2core/d2records/object_details_loader.go +++ b/d2core/d2records/object_details_loader.go @@ -225,7 +225,7 @@ func objectDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d objects", len(records)) + r.Debugf("Loaded %d ObjectDetail records", len(records)) r.Object.Details = records diff --git a/d2core/d2records/object_groups_loader.go b/d2core/d2records/object_groups_loader.go index 8a4ee9c7..ed109cfd 100644 --- a/d2core/d2records/object_groups_loader.go +++ b/d2core/d2records/object_groups_loader.go @@ -32,7 +32,7 @@ func objectGroupsLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d ObjectGroup records", len(records)) + r.Debugf("Loaded %d ObjectGroup records", len(records)) return nil } diff --git a/d2core/d2records/object_mode_loader.go b/d2core/d2records/object_mode_loader.go index dc544360..39c40ae2 100644 --- a/d2core/d2records/object_mode_loader.go +++ b/d2core/d2records/object_mode_loader.go @@ -22,7 +22,7 @@ func objectModesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Object.Modes = records - r.Logger.Infof("Loaded %d ObjectMode records", len(records)) + r.Debugf("Loaded %d ObjectMode records", len(records)) return nil } diff --git a/d2core/d2records/object_types_loader.go b/d2core/d2records/object_types_loader.go index fdb9f7bd..aa855a96 100644 --- a/d2core/d2records/object_types_loader.go +++ b/d2core/d2records/object_types_loader.go @@ -23,7 +23,7 @@ func objectTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d object types", len(records)) + r.Debugf("Loaded %d ObjectType records", len(records)) r.Object.Types = records diff --git a/d2core/d2records/overlays_loader.go b/d2core/d2records/overlays_loader.go index aed7a028..a10344ab 100644 --- a/d2core/d2records/overlays_loader.go +++ b/d2core/d2records/overlays_loader.go @@ -35,7 +35,7 @@ func overlaysLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d Overlay records", len(records)) + r.Debugf("Loaded %d Overlay records", len(records)) r.Layout.Overlays = records diff --git a/d2core/d2records/pet_type_loader.go b/d2core/d2records/pet_type_loader.go index 59d9f4a9..b8000f1d 100644 --- a/d2core/d2records/pet_type_loader.go +++ b/d2core/d2records/pet_type_loader.go @@ -39,7 +39,7 @@ func petTypesLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d PetType records", len(records)) + r.Debugf("Loaded %d PetType records", len(records)) r.PetTypes = records diff --git a/d2core/d2records/player_class_loader.go b/d2core/d2records/player_class_loader.go index df6321ce..3eff68be 100644 --- a/d2core/d2records/player_class_loader.go +++ b/d2core/d2records/player_class_loader.go @@ -29,7 +29,7 @@ func playerClassLoader(r *RecordManager, d *d2txt.DataDictionary) error { return d.Err } - r.Logger.Infof("Loaded %d PlayerClass records", len(records)) + r.Debugf("Loaded %d PlayerClass records", len(records)) r.Character.Classes = records diff --git a/d2core/d2records/player_mode_loader.go b/d2core/d2records/player_mode_loader.go index 9274759f..010876c1 100644 --- a/d2core/d2records/player_mode_loader.go +++ b/d2core/d2records/player_mode_loader.go @@ -23,7 +23,7 @@ func playerModesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Character.Modes = records - r.Logger.Infof("Loaded %d PlayerMode records", len(records)) + r.Debugf("Loaded %d PlayerMode records", len(records)) return nil } diff --git a/d2core/d2records/player_type_loader.go b/d2core/d2records/player_type_loader.go index e383df9a..60b7e2c3 100644 --- a/d2core/d2records/player_type_loader.go +++ b/d2core/d2records/player_type_loader.go @@ -24,7 +24,7 @@ func playerTypeLoader(r *RecordManager, d *d2txt.DataDictionary) error { panic(d.Err) } - r.Logger.Infof("Loaded %d PlayerType records", len(records)) + r.Debugf("Loaded %d PlayerType records", len(records)) r.Animation.Token.Player = records diff --git a/d2core/d2records/property_loader.go b/d2core/d2records/property_loader.go index db718319..e68b1708 100644 --- a/d2core/d2records/property_loader.go +++ b/d2core/d2records/property_loader.go @@ -67,7 +67,7 @@ func propertyLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Properties = records - r.Logger.Infof("Loaded %d Property records", len(records)) + r.Debugf("Loaded %d Property records", len(records)) return nil } diff --git a/d2core/d2records/rare_prefix_loader.go b/d2core/d2records/rare_prefix_loader.go index 290eccf4..65512d0f 100644 --- a/d2core/d2records/rare_prefix_loader.go +++ b/d2core/d2records/rare_prefix_loader.go @@ -12,7 +12,7 @@ func rareItemPrefixLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Rare.Prefix = records - r.Logger.Infof("Loaded %d RarePrefix records", len(records)) + r.Debugf("Loaded %d RarePrefix records", len(records)) return nil } diff --git a/d2core/d2records/rare_suffix_loader.go b/d2core/d2records/rare_suffix_loader.go index fb158cb7..94123695 100644 --- a/d2core/d2records/rare_suffix_loader.go +++ b/d2core/d2records/rare_suffix_loader.go @@ -10,7 +10,7 @@ func rareItemSuffixLoader(r *RecordManager, d *d2txt.DataDictionary) error { return err } - r.Logger.Infof("Loaded %d RareSuffix records", len(records)) + r.Debugf("Loaded %d RareSuffix records", len(records)) r.Item.Rare.Suffix = records diff --git a/d2core/d2records/record_manager.go b/d2core/d2records/record_manager.go index 716a4f4d..adf342a0 100644 --- a/d2core/d2records/record_manager.go +++ b/d2core/d2records/record_manager.go @@ -334,8 +334,8 @@ func (r *RecordManager) GetExperienceBreakpoint(heroType d2enum.Hero, level int) return r.Character.Experience[level].HeroBreakpoints[heroType] } -// GetLevelDetails gets a LevelDetailsRecord by the record Id -func (r *RecordManager) GetLevelDetails(id int) *LevelDetailsRecord { +// GetLevelDetails gets a LevelDetailRecord by the record Id +func (r *RecordManager) GetLevelDetails(id int) *LevelDetailRecord { for i := 0; i < len(r.Level.Details); i++ { if r.Level.Details[i].ID == id { return r.Level.Details[i] diff --git a/d2core/d2records/runeword_loader.go b/d2core/d2records/runeword_loader.go index e498fe2d..a367d9d2 100644 --- a/d2core/d2records/runeword_loader.go +++ b/d2core/d2records/runeword_loader.go @@ -24,12 +24,12 @@ const ( fmtRunewordPropMax = "T1Max%d" ) -// Loadrecords loads runes records into a map[string]*RunesRecord +// Loadrecords loads runes records into a map[string]*RuneRecord func runewordLoader(r *RecordManager, d *d2txt.DataDictionary) error { - records := make(map[string]*RunesRecord) + records := make(map[string]*RuneRecord) for d.Next() { - record := &RunesRecord{ + record := &RuneRecord{ Name: d.String("name"), RuneName: d.String("Rune Name"), Complete: d.Bool("complete"), @@ -89,7 +89,7 @@ func runewordLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Runewords = records - r.Logger.Infof("Loaded %d records records", len(records)) + r.Debugf("Loaded %d Rune records", len(records)) return nil } diff --git a/d2core/d2records/runeword_record.go b/d2core/d2records/runeword_record.go index cfd63461..7041a018 100644 --- a/d2core/d2records/runeword_record.go +++ b/d2core/d2records/runeword_record.go @@ -1,11 +1,11 @@ package d2records -// Runewords stores all of the RunesRecords -type Runewords map[string]*RunesRecord +// Runewords stores all of the RuneRecords +type Runewords map[string]*RuneRecord -// RunesRecord is a representation of a single row of runes.txt. It defines +// RuneRecord is a representation of a single row of runes.txt. It defines // runewords available in the game. -type RunesRecord struct { +type RuneRecord struct { Name string RuneName string // More of a note - the actual name should be read from the TBL files. Complete bool // An enabled/disabled flag. Only "Complete" runewords work in game. diff --git a/d2core/d2records/set_item_loader.go b/d2core/d2records/set_item_loader.go index e1dfff03..88021cbf 100644 --- a/d2core/d2records/set_item_loader.go +++ b/d2core/d2records/set_item_loader.go @@ -94,7 +94,7 @@ func setItemLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.SetItems = records - r.Logger.Infof("Loaded %d SetItem records", len(records)) + r.Debugf("Loaded %d SetItem records", len(records)) return nil } diff --git a/d2core/d2records/set_loader.go b/d2core/d2records/set_loader.go index 8babd544..5ac03637 100644 --- a/d2core/d2records/set_loader.go +++ b/d2core/d2records/set_loader.go @@ -107,7 +107,7 @@ func setLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Sets = records - r.Logger.Infof("Loaded %d records records", len(records)) + r.Debugf("Loaded %d Set records", len(records)) return nil } diff --git a/d2core/d2records/shrine_loader.go b/d2core/d2records/shrine_loader.go index 7d143032..2aedf9bc 100644 --- a/d2core/d2records/shrine_loader.go +++ b/d2core/d2records/shrine_loader.go @@ -31,7 +31,7 @@ func shrineLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Object.Shrines = records - r.Logger.Infof("Loaded %d shrines", len(records)) + r.Debugf("Loaded %d Shrine records", len(records)) return nil } diff --git a/d2core/d2records/skill_description_loader.go b/d2core/d2records/skill_description_loader.go index 5eb1b96e..f579a8d5 100644 --- a/d2core/d2records/skill_description_loader.go +++ b/d2core/d2records/skill_description_loader.go @@ -139,7 +139,7 @@ func skillDescriptionLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Skill.Descriptions = records - r.Logger.Infof("Loaded %d Skill Description records", len(records)) + r.Debugf("Loaded %d SkillDescription records", len(records)) return nil } diff --git a/d2core/d2records/skill_details_loader.go b/d2core/d2records/skill_details_loader.go index da790eed..6067cc4c 100644 --- a/d2core/d2records/skill_details_loader.go +++ b/d2core/d2records/skill_details_loader.go @@ -277,7 +277,7 @@ func skillDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Skill.Details = records - r.Logger.Infof("Loaded %d Skill records", len(records)) + r.Debugf("Loaded %d Skill records", len(records)) return nil } diff --git a/d2core/d2records/sound_details_loader.go b/d2core/d2records/sound_details_loader.go index ff62077f..77f9330f 100644 --- a/d2core/d2records/sound_details_loader.go +++ b/d2core/d2records/sound_details_loader.go @@ -46,7 +46,7 @@ func soundDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Sound.Details = records - r.Logger.Infof("Loaded %d sound definitions", len(records)) + r.Debugf("Loaded %d SoundDetail records", len(records)) return nil } diff --git a/d2core/d2records/sound_environment_loader.go b/d2core/d2records/sound_environment_loader.go index 98c6bdea..68562ccc 100644 --- a/d2core/d2records/sound_environment_loader.go +++ b/d2core/d2records/sound_environment_loader.go @@ -44,7 +44,7 @@ func soundEnvironmentLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Sound.Environment = records - r.Logger.Infof("Loaded %d SoundEnviron records", len(records)) + r.Debugf("Loaded %d SoundEnviron records", len(records)) return nil } diff --git a/d2core/d2records/states_loader.go b/d2core/d2records/states_loader.go index 21798f82..b7724b3a 100644 --- a/d2core/d2records/states_loader.go +++ b/d2core/d2records/states_loader.go @@ -89,7 +89,7 @@ func statesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.States = records - r.Logger.Infof("Loaded %d State records", len(records)) + r.Debugf("Loaded %d State records", len(records)) return nil } diff --git a/d2core/d2records/storepage_loader.go b/d2core/d2records/storepage_loader.go index 67655354..f66a422b 100644 --- a/d2core/d2records/storepage_loader.go +++ b/d2core/d2records/storepage_loader.go @@ -21,7 +21,7 @@ func storePagesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.StorePages = records - r.Logger.Infof("Loaded %d StorePage records", len(records)) + r.Debugf("Loaded %d StorePage records", len(records)) return nil } diff --git a/d2core/d2records/treasure_class_loader.go b/d2core/d2records/treasure_class_loader.go index 8f858a96..e8fdbe7a 100644 --- a/d2core/d2records/treasure_class_loader.go +++ b/d2core/d2records/treasure_class_loader.go @@ -20,7 +20,7 @@ func treasureClassLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Treasure.Normal = records - r.Logger.Infof("Loaded %d treasure class (normal) records", len(records)) + r.Debugf("Loaded %d TreasureClass (normal) records", len(records)) return nil } @@ -33,7 +33,7 @@ func treasureClassExLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Treasure.Expansion = records - r.Logger.Infof("Loaded %d treasure class (expansion) records", len(records)) + r.Debugf("Loaded %d TreasureClass (expansion) records", len(records)) return nil } diff --git a/d2core/d2records/unique_appellation_loader.go b/d2core/d2records/unique_appellation_loader.go index e551f901..c6d3c614 100644 --- a/d2core/d2records/unique_appellation_loader.go +++ b/d2core/d2records/unique_appellation_loader.go @@ -21,7 +21,7 @@ func uniqueAppellationsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Monster.Unique.Appellations = records - r.Logger.Infof("Loaded %d UniqueAppellation records", len(records)) + r.Debugf("Loaded %d UniqueAppellation records", len(records)) return nil } diff --git a/d2core/d2records/unique_items_loader.go b/d2core/d2records/unique_items_loader.go index a9ae79e6..639d2dbd 100644 --- a/d2core/d2records/unique_items_loader.go +++ b/d2core/d2records/unique_items_loader.go @@ -128,7 +128,7 @@ func uniqueItemsLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Item.Unique = records - r.Logger.Infof("Loaded %d unique items", len(records)) + r.Debugf("Loaded %d UniqueItem records", len(records)) return nil } diff --git a/d2core/d2records/weapon_class_loader.go b/d2core/d2records/weapon_class_loader.go index 76154b1e..84c0b569 100644 --- a/d2core/d2records/weapon_class_loader.go +++ b/d2core/d2records/weapon_class_loader.go @@ -22,7 +22,7 @@ func weaponClassesLoader(r *RecordManager, d *d2txt.DataDictionary) error { r.Animation.Token.Weapon = records - r.Logger.Infof("Loaded %d WeaponClass records", len(records)) + r.Debugf("Loaded %d WeaponClass records", len(records)) return nil } From a62e21a5724a49e0fb716e38af9f3649dbd30ed8 Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 18:50:42 +0100 Subject: [PATCH 28/70] Renamed CharStatRecord --- d2core/d2hero/hero_state_factory.go | 2 +- d2core/d2hero/hero_stats_state.go | 2 +- d2core/d2item/diablo2item/item_property_test.go | 2 +- d2core/d2records/charstats_loader.go | 2 +- d2core/d2records/charstats_record.go | 8 ++++---- d2core/d2stats/diablo2stats/stat_test.go | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/d2core/d2hero/hero_state_factory.go b/d2core/d2hero/hero_state_factory.go index 43ba461e..10ad1bd2 100644 --- a/d2core/d2hero/hero_state_factory.go +++ b/d2core/d2hero/hero_state_factory.go @@ -110,7 +110,7 @@ func (f *HeroStateFactory) GetAllHeroStates() ([]*HeroState, error) { } // CreateHeroSkillsState will assemble the hero skills from the class stats record. -func (f *HeroStateFactory) CreateHeroSkillsState(classStats *d2records.CharStatsRecord, heroType d2enum.Hero) (map[int]*HeroSkill, error) { +func (f *HeroStateFactory) CreateHeroSkillsState(classStats *d2records.CharStatRecord, heroType d2enum.Hero) (map[int]*HeroSkill, error) { baseSkills := map[int]*HeroSkill{} for idx := range classStats.BaseSkill { diff --git a/d2core/d2hero/hero_stats_state.go b/d2core/d2hero/hero_stats_state.go index 96400b2f..4a3f1e99 100644 --- a/d2core/d2hero/hero_stats_state.go +++ b/d2core/d2hero/hero_stats_state.go @@ -30,7 +30,7 @@ type HeroStatsState struct { } // CreateHeroStatsState generates a running state from a hero stats. -func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStats *d2records.CharStatsRecord) *HeroStatsState { +func (f *HeroStateFactory) CreateHeroStatsState(heroClass d2enum.Hero, classStats *d2records.CharStatRecord) *HeroStatsState { result := HeroStatsState{ Level: 1, Experience: 0, diff --git a/d2core/d2item/diablo2item/item_property_test.go b/d2core/d2item/diablo2item/item_property_test.go index ec932ff5..30c1d5b4 100644 --- a/d2core/d2item/diablo2item/item_property_test.go +++ b/d2core/d2item/diablo2item/item_property_test.go @@ -277,7 +277,7 @@ var itemStatCosts = map[string]*d2records.ItemStatCostRecord{ } // nolint:gochecknoglobals // just a test -var charStats = map[d2enum.Hero]*d2records.CharStatsRecord{ +var charStats = map[d2enum.Hero]*d2records.CharStatRecord{ d2enum.HeroPaladin: { Class: d2enum.HeroPaladin, SkillStrAll: "to Paladin Skill Levels", diff --git a/d2core/d2records/charstats_loader.go b/d2core/d2records/charstats_loader.go index 2fd0b78f..86f1d30a 100644 --- a/d2core/d2records/charstats_loader.go +++ b/d2core/d2records/charstats_loader.go @@ -38,7 +38,7 @@ func charStatsLoader(r *RecordManager, d *d2txt.DataDictionary) error { } for d.Next() { - record := &CharStatsRecord{ + record := &CharStatRecord{ Class: stringMap[d.String("class")], InitStr: d.Number("str"), diff --git a/d2core/d2records/charstats_record.go b/d2core/d2records/charstats_record.go index 5d7bd35d..c7717ac1 100644 --- a/d2core/d2records/charstats_record.go +++ b/d2core/d2records/charstats_record.go @@ -2,11 +2,11 @@ package d2records import "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" -// CharStats holds all of the CharStatsRecords -type CharStats map[d2enum.Hero]*CharStatsRecord +// CharStats holds all of the CharStatRecords +type CharStats map[d2enum.Hero]*CharStatRecord -// CharStatsRecord is a struct that represents a single row from charstats.txt -type CharStatsRecord struct { +// CharStatRecord is a struct that represents a single row from charstats.txt +type CharStatRecord struct { Class d2enum.Hero // the initial stats at character level 1 diff --git a/d2core/d2stats/diablo2stats/stat_test.go b/d2core/d2stats/diablo2stats/stat_test.go index cd54927c..e6ae66e2 100644 --- a/d2core/d2stats/diablo2stats/stat_test.go +++ b/d2core/d2stats/diablo2stats/stat_test.go @@ -238,12 +238,12 @@ var skillDetails = map[int]*d2records.SkillRecord{ } // nolint:gochecknoglobals // just a test -var monStats = map[string]*d2records.MonStatsRecord{ +var monStats = map[string]*d2records.MonStatRecord{ "Specter": {NameString: "Specter", ID: 40}, } // nolint:gochecknoglobals // just a test -var charStats = map[d2enum.Hero]*d2records.CharStatsRecord{ +var charStats = map[d2enum.Hero]*d2records.CharStatRecord{ d2enum.HeroPaladin: { Class: d2enum.HeroPaladin, SkillStrAll: "to Paladin Skill Levels", From af6a8272ddfb355a598a1da2b892b43a6d297339 Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 18:51:41 +0100 Subject: [PATCH 29/70] Renamed SoundDetailRecord --- d2core/d2audio/sound_engine.go | 2 +- d2core/d2records/record_manager.go | 2 +- d2core/d2records/sound_details_loader.go | 2 +- d2core/d2records/sound_details_record.go | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/d2core/d2audio/sound_engine.go b/d2core/d2audio/sound_engine.go index f811c1f8..ee907af0 100644 --- a/d2core/d2audio/sound_engine.go +++ b/d2core/d2audio/sound_engine.go @@ -31,7 +31,7 @@ const originalFPS float64 = 25 // A Sound that can be started and stopped type Sound struct { effect d2interface.SoundEffect - entry *d2records.SoundDetailsRecord + entry *d2records.SoundDetailRecord volume float64 vTarget float64 vRate float64 diff --git a/d2core/d2records/record_manager.go b/d2core/d2records/record_manager.go index adf342a0..8afba41c 100644 --- a/d2core/d2records/record_manager.go +++ b/d2core/d2records/record_manager.go @@ -433,7 +433,7 @@ func (r *RecordManager) lookupObject(act, typ, id int) *ObjectLookupRecord { } // SelectSoundByIndex selects a sound by its ID -func (r *RecordManager) SelectSoundByIndex(index int) *SoundDetailsRecord { +func (r *RecordManager) SelectSoundByIndex(index int) *SoundDetailRecord { for idx := range r.Sound.Details { if r.Sound.Details[idx].Index == index { return r.Sound.Details[idx] diff --git a/d2core/d2records/sound_details_loader.go b/d2core/d2records/sound_details_loader.go index 77f9330f..b3436f0d 100644 --- a/d2core/d2records/sound_details_loader.go +++ b/d2core/d2records/sound_details_loader.go @@ -9,7 +9,7 @@ func soundDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(SoundDetails) for d.Next() { - entry := &SoundDetailsRecord{ + entry := &SoundDetailRecord{ Handle: d.String("Sound"), Index: d.Number("Index"), FileName: d.String("FileName"), diff --git a/d2core/d2records/sound_details_record.go b/d2core/d2records/sound_details_record.go index 56de22c5..4365998a 100644 --- a/d2core/d2records/sound_details_record.go +++ b/d2core/d2records/sound_details_record.go @@ -1,10 +1,10 @@ package d2records // SoundDetails is a map of the SoundEntries -type SoundDetails map[string]*SoundDetailsRecord +type SoundDetails map[string]*SoundDetailRecord -// SoundDetailsRecord represents a sound entry -type SoundDetailsRecord struct { +// SoundDetailRecord represents a sound entry +type SoundDetailRecord struct { Handle string FileName string Index int From 2dc490b152df4a4561beae23ec8ba463dca30dc5 Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 18:59:29 +0100 Subject: [PATCH 30/70] Renamed MonStatRecord --- d2core/d2item/diablo2item/item_property_test.go | 2 +- d2core/d2map/d2mapentity/factory.go | 2 +- d2core/d2map/d2mapentity/npc.go | 2 +- d2core/d2records/monster_stats_loader.go | 2 +- d2core/d2records/monster_stats_record.go | 8 ++++---- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/d2core/d2item/diablo2item/item_property_test.go b/d2core/d2item/diablo2item/item_property_test.go index 30c1d5b4..bb98f697 100644 --- a/d2core/d2item/diablo2item/item_property_test.go +++ b/d2core/d2item/diablo2item/item_property_test.go @@ -297,7 +297,7 @@ var skillDetails = map[int]*d2records.SkillRecord{ } // nolint:gochecknoglobals // just a test -var monStats = map[string]*d2records.MonStatsRecord{ +var monStats = map[string]*d2records.MonStatRecord{ "Specter": {NameString: "Specter", ID: 40}, } diff --git a/d2core/d2map/d2mapentity/factory.go b/d2core/d2map/d2mapentity/factory.go index 3d42c753..527adfc6 100644 --- a/d2core/d2map/d2mapentity/factory.go +++ b/d2core/d2map/d2mapentity/factory.go @@ -180,7 +180,7 @@ func (f *MapEntityFactory) NewItem(x, y int, codes ...string) (*Item, error) { } // NewNPC creates a new NPC and returns a pointer to it. -func (f *MapEntityFactory) NewNPC(x, y int, monstat *d2records.MonStatsRecord, direction int) (*NPC, error) { +func (f *MapEntityFactory) NewNPC(x, y int, monstat *d2records.MonStatRecord, direction int) (*NPC, error) { // https://github.com/OpenDiablo2/OpenDiablo2/issues/803 result := &NPC{ mapEntity: newMapEntity(x, y), diff --git a/d2core/d2map/d2mapentity/npc.go b/d2core/d2map/d2mapentity/npc.go index 663401e0..311e7dba 100644 --- a/d2core/d2map/d2mapentity/npc.go +++ b/d2core/d2map/d2mapentity/npc.go @@ -22,8 +22,8 @@ type NPC struct { action int path int repetitions int - monstatRecord *d2records.MonStatsRecord monstatEx *d2records.MonStats2Record + monstatRecord *d2records.MonStatRecord HasPaths bool isDone bool } diff --git a/d2core/d2records/monster_stats_loader.go b/d2core/d2records/monster_stats_loader.go index e2c7cf14..e9675623 100644 --- a/d2core/d2records/monster_stats_loader.go +++ b/d2core/d2records/monster_stats_loader.go @@ -10,7 +10,7 @@ func monsterStatsLoader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(MonStats) for d.Next() { - record := &MonStatsRecord{ + record := &MonStatRecord{ Key: d.String("Id"), ID: d.Number("hcIdx"), BaseKey: d.String("BaseId"), diff --git a/d2core/d2records/monster_stats_record.go b/d2core/d2records/monster_stats_record.go index 2469299a..191bb62c 100644 --- a/d2core/d2records/monster_stats_record.go +++ b/d2core/d2records/monster_stats_record.go @@ -4,13 +4,13 @@ import "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" // https://d2mods.info/forum/kb/viewarticle?a=360 -// MonStats stores all of the MonStat Records -type MonStats map[string]*MonStatsRecord +// MonStats stores all of the MonStatRecords +type MonStats map[string]*MonStatRecord type ( - // MonStatsRecord represents a single row from `data/global/excel/monstats.txt` in the MPQ files. + // MonStatRecord represents a single row from `data/global/excel/monstats.txt` in the MPQ files. // These records are used for creating monsters. - MonStatsRecord struct { + MonStatRecord struct { // Key contains the pointer that will be used in other txt files // such as levels.txt and superuniques.txt. From 05e9f34765d78487e7bae5b47da00bc160137204 Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 19:02:34 +0100 Subject: [PATCH 31/70] Renamed ObjectDetailRecord --- d2core/d2map/d2mapentity/factory.go | 2 +- d2core/d2map/d2mapentity/object.go | 2 +- d2core/d2records/object_details_loader.go | 2 +- d2core/d2records/object_details_record.go | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/d2core/d2map/d2mapentity/factory.go b/d2core/d2map/d2mapentity/factory.go index 527adfc6..2b400b3f 100644 --- a/d2core/d2map/d2mapentity/factory.go +++ b/d2core/d2map/d2mapentity/factory.go @@ -263,7 +263,7 @@ func (f *MapEntityFactory) NewCastOverlay(x, y int, overlayRecord *d2records.Ove } // NewObject creates an instance of AnimatedComposite -func (f *MapEntityFactory) NewObject(x, y int, objectRec *d2records.ObjectDetailsRecord, +func (f *MapEntityFactory) NewObject(x, y int, objectRec *d2records.ObjectDetailRecord, palettePath string) (*Object, error) { locX, locY := float64(x), float64(y) entity := &Object{ diff --git a/d2core/d2map/d2mapentity/object.go b/d2core/d2map/d2mapentity/object.go index 71dbaf1e..314e9e04 100644 --- a/d2core/d2map/d2mapentity/object.go +++ b/d2core/d2map/d2mapentity/object.go @@ -20,7 +20,7 @@ type Object struct { composite *d2asset.Composite highlight bool // nameLabel d2ui.Label - objectRecord *d2records.ObjectDetailsRecord + objectRecord *d2records.ObjectDetailRecord drawLayer int name string } diff --git a/d2core/d2records/object_details_loader.go b/d2core/d2records/object_details_loader.go index 1e4bb850..2dcbf43d 100644 --- a/d2core/d2records/object_details_loader.go +++ b/d2core/d2records/object_details_loader.go @@ -11,7 +11,7 @@ func objectDetailsLoader(r *RecordManager, d *d2txt.DataDictionary) error { i := 0 for d.Next() { - record := &ObjectDetailsRecord{ + record := &ObjectDetailRecord{ Index: i, Name: d.String("Name"), Description: d.String("description - not loaded"), diff --git a/d2core/d2records/object_details_record.go b/d2core/d2records/object_details_record.go index ee56249a..7137cf63 100644 --- a/d2core/d2records/object_details_record.go +++ b/d2core/d2records/object_details_record.go @@ -1,10 +1,10 @@ package d2records // ObjectDetails stores all of the ObjectDetailRecords -type ObjectDetails map[int]*ObjectDetailsRecord +type ObjectDetails map[int]*ObjectDetailRecord -// ObjectDetailsRecord represents the settings for one type of object from objects.txt -type ObjectDetailsRecord struct { +// ObjectDetailRecord represents the settings for one type of object from objects.txt +type ObjectDetailRecord struct { Index int // Line number in file, this is the actual index used for objects FrameCount [8]int // how many frames does this mode have, 0 = skip FrameDelta [8]int // what rate is the animation played at (256 = 100% speed) From ec91203782900437fe2201c61b400b4ad5f1310b Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 18 Dec 2020 19:03:13 +0100 Subject: [PATCH 32/70] Renamed MonStat2Record --- d2core/d2map/d2mapentity/npc.go | 2 +- d2core/d2records/monster_stats2_loader.go | 4 ++-- d2core/d2records/monster_stats2_record.go | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/d2core/d2map/d2mapentity/npc.go b/d2core/d2map/d2mapentity/npc.go index 311e7dba..66284092 100644 --- a/d2core/d2map/d2mapentity/npc.go +++ b/d2core/d2map/d2mapentity/npc.go @@ -22,8 +22,8 @@ type NPC struct { action int path int repetitions int - monstatEx *d2records.MonStats2Record monstatRecord *d2records.MonStatRecord + monstatEx *d2records.MonStat2Record HasPaths bool isDone bool } diff --git a/d2core/d2records/monster_stats2_loader.go b/d2core/d2records/monster_stats2_loader.go index 8d092ac5..91fc7ca0 100644 --- a/d2core/d2records/monster_stats2_loader.go +++ b/d2core/d2records/monster_stats2_loader.go @@ -7,7 +7,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2txt" ) -// LoadMonStats2 loads MonStats2Records from monstats2.txt +// LoadMonStats2 loads MonStat2Records from monstats2.txt //nolint:funlen //just a big data loader func monsterStats2Loader(r *RecordManager, d *d2txt.DataDictionary) error { records := make(MonStats2) @@ -18,7 +18,7 @@ func monsterStats2Loader(r *RecordManager, d *d2txt.DataDictionary) error { return err } - record := &MonStats2Record{ + record := &MonStat2Record{ Key: d.String("Id"), Height: d.Number("Height"), OverlayHeight: d.Number("OverlayHeight"), diff --git a/d2core/d2records/monster_stats2_record.go b/d2core/d2records/monster_stats2_record.go index 306ea1e4..914b1c61 100644 --- a/d2core/d2records/monster_stats2_record.go +++ b/d2core/d2records/monster_stats2_record.go @@ -2,11 +2,11 @@ package d2records import "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" -// MonStats2 stores all of the MonStats2Records -type MonStats2 map[string]*MonStats2Record +// MonStats2 stores all of the MonStat2Records +type MonStats2 map[string]*MonStat2Record -// MonStats2Record is a representation of a row from monstats2.txt -type MonStats2Record struct { +// MonStat2Record is a representation of a row from monstats2.txt +type MonStat2Record struct { // Available options for equipment // randomly selected from EquipmentOptions [16][]string From 540f285468e5a05d5815e79b85c3bff1b920493f Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Sat, 19 Dec 2020 21:05:41 +0100 Subject: [PATCH 33/70] fixed onHover bug in d2ui.Sprite (#992) Co-authored-by: M. Sz --- d2core/d2ui/sprite.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/d2core/d2ui/sprite.go b/d2core/d2ui/sprite.go index 7c66e1fd..ba2a369d 100644 --- a/d2core/d2ui/sprite.go +++ b/d2core/d2ui/sprite.go @@ -34,17 +34,25 @@ func (ui *UIManager) NewSprite(animationPath, palettePath string) (*Sprite, erro base := NewBaseWidget(ui) - return &Sprite{ + sprite := &Sprite{ BaseWidget: base, animation: animation, Logger: ui.Logger, - }, nil + } + + sprite.SetVisible(false) + + ui.addWidget(sprite) + + return sprite, nil } // Render renders the sprite on the given surface func (s *Sprite) Render(target d2interface.Surface) { _, frameHeight := s.animation.GetCurrentFrameSize() + s.width, s.height = s.animation.GetCurrentFrameSize() + target.PushTranslation(s.x, s.y-frameHeight) defer target.Pop() @@ -90,11 +98,6 @@ func (s *Sprite) RenderSegmented(target d2interface.Surface, segmentsX, segments } } -// GetSize returns the size of the current frame -func (s *Sprite) GetSize() (width, height int) { - return s.GetCurrentFrameSize() -} - // GetFrameSize gets the Size(width, height) of a indexed frame. func (s *Sprite) GetFrameSize(frameIndex int) (x, y int, err error) { return s.animation.GetFrameSize(frameIndex) From fbfea917cb5d30695c530c8f5dde68c282339720 Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Sat, 19 Dec 2020 21:28:07 +0100 Subject: [PATCH 34/70] added static checks to d2ui (#990) Co-authored-by: M. Sz --- d2core/d2ui/button.go | 3 ++- d2core/d2ui/checkbox.go | 4 ++-- d2core/d2ui/label.go | 3 +++ d2core/d2ui/scrollbar.go | 4 ++-- d2core/d2ui/sprite.go | 3 +++ d2core/d2ui/textbox.go | 4 ++-- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index b558969a..91bd8437 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -768,7 +768,8 @@ func getButtonLayouts() map[ButtonType]ButtonLayout { } } -var _ Widget = &Button{} // static check to ensure button implements widget +// static check to ensure button implements clickable widget +var _ ClickableWidget = &Button{} // Button defines a standard wide UI button type Button struct { diff --git a/d2core/d2ui/checkbox.go b/d2core/d2ui/checkbox.go index c91bccbe..84984764 100644 --- a/d2core/d2ui/checkbox.go +++ b/d2core/d2ui/checkbox.go @@ -6,8 +6,8 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" ) -// static check that Checkbox implements Widget -var _ Widget = &Checkbox{} +// static check that Checkbox implements ClickableWidget +var _ ClickableWidget = &Checkbox{} // Checkbox represents a checkbox UI element type Checkbox struct { diff --git a/d2core/d2ui/label.go b/d2core/d2ui/label.go index 9c5c53dd..3dda47fd 100644 --- a/d2core/d2ui/label.go +++ b/d2core/d2ui/label.go @@ -11,6 +11,9 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) +// static check if Label implemented Widget +var _ Widget = &Label{} + // Label represents a user interface label type Label struct { *BaseWidget diff --git a/d2core/d2ui/scrollbar.go b/d2core/d2ui/scrollbar.go index db41da5d..ba832019 100644 --- a/d2core/d2ui/scrollbar.go +++ b/d2core/d2ui/scrollbar.go @@ -13,8 +13,8 @@ const ( scrollbarWidth = 10 ) -// static check that Scrollbar implements widget -var _ Widget = &Scrollbar{} +// static check that Scrollbar implements clickable widget +var _ ClickableWidget = &Scrollbar{} // Scrollbar is a vertical slider ui element type Scrollbar struct { diff --git a/d2core/d2ui/sprite.go b/d2core/d2ui/sprite.go index ba2a369d..ed382ec8 100644 --- a/d2core/d2ui/sprite.go +++ b/d2core/d2ui/sprite.go @@ -11,6 +11,9 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) +// static check if Sprite implemented Widget +var _ Widget = &Sprite{} + // Sprite is a positioned visual object. type Sprite struct { *BaseWidget diff --git a/d2core/d2ui/textbox.go b/d2core/d2ui/textbox.go index 9a874024..20ab092b 100644 --- a/d2core/d2ui/textbox.go +++ b/d2core/d2ui/textbox.go @@ -11,8 +11,8 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) -// static check that TextBox implements widget -var _ Widget = &TextBox{} +// static check that TextBox implements clickable widget +var _ ClickableWidget = &TextBox{} // TextBox represents a text input box type TextBox struct { From 5409dc4ef266ba2edce3186923219b704a880b7c Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Sat, 19 Dec 2020 21:28:40 +0100 Subject: [PATCH 35/70] fixed onHover bug in d2ui.Label (#991) Co-authored-by: M. Sz --- d2core/d2ui/label.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/d2core/d2ui/label.go b/d2core/d2ui/label.go index 3dda47fd..4a09a322 100644 --- a/d2core/d2ui/label.go +++ b/d2core/d2ui/label.go @@ -46,6 +46,10 @@ func (ui *UIManager) NewLabel(fontPath, palettePath string) *Label { result.bindManager(ui) + result.SetVisible(false) + + ui.addWidget(result) + return result } @@ -96,11 +100,6 @@ func (v *Label) Render(target d2interface.Surface) { target.Pop() } -// GetSize returns the size of the label -func (v *Label) GetSize() (width, height int) { - return v.font.GetTextMetrics(v.text) -} - // GetTextMetrics returns the width and height of the enclosing rectangle in Pixels. func (v *Label) GetTextMetrics(text string) (width, height int) { return v.font.GetTextMetrics(text) @@ -109,6 +108,7 @@ func (v *Label) GetTextMetrics(text string) (width, height int) { // SetText sets the label's text func (v *Label) SetText(newText string) { v.text = v.processColorTokens(newText) + v.BaseWidget.width, v.BaseWidget.height = v.font.GetTextMetrics(v.text) } // GetText returns label text From 40c2fac4f85daf8e201d0928536fedb3110aad25 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Sun, 20 Dec 2020 13:50:18 +0100 Subject: [PATCH 36/70] Revert "fixed onHover bug in d2ui.Sprite" This reverts commit 8b557062fbee330c0806dfa76979d4ad985cc8d5. --- d2core/d2ui/sprite.go | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/d2core/d2ui/sprite.go b/d2core/d2ui/sprite.go index ed382ec8..4a904add 100644 --- a/d2core/d2ui/sprite.go +++ b/d2core/d2ui/sprite.go @@ -37,25 +37,17 @@ func (ui *UIManager) NewSprite(animationPath, palettePath string) (*Sprite, erro base := NewBaseWidget(ui) - sprite := &Sprite{ + return &Sprite{ BaseWidget: base, animation: animation, Logger: ui.Logger, - } - - sprite.SetVisible(false) - - ui.addWidget(sprite) - - return sprite, nil + }, nil } // Render renders the sprite on the given surface func (s *Sprite) Render(target d2interface.Surface) { _, frameHeight := s.animation.GetCurrentFrameSize() - s.width, s.height = s.animation.GetCurrentFrameSize() - target.PushTranslation(s.x, s.y-frameHeight) defer target.Pop() @@ -101,6 +93,11 @@ func (s *Sprite) RenderSegmented(target d2interface.Surface, segmentsX, segments } } +// GetSize returns the size of the current frame +func (s *Sprite) GetSize() (width, height int) { + return s.GetCurrentFrameSize() +} + // GetFrameSize gets the Size(width, height) of a indexed frame. func (s *Sprite) GetFrameSize(frameIndex int) (x, y int, err error) { return s.animation.GetFrameSize(frameIndex) From 2869aea4f5b25d86f8c9852d7831041925a152b2 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 21 Dec 2020 12:48:59 +0100 Subject: [PATCH 37/70] tip-labels in tcpip menu --- d2game/d2gamescreen/main_menu.go | 47 ++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/d2game/d2gamescreen/main_menu.go b/d2game/d2gamescreen/main_menu.go index 8330973e..c11f8e09 100644 --- a/d2game/d2gamescreen/main_menu.go +++ b/d2game/d2gamescreen/main_menu.go @@ -62,6 +62,7 @@ const ( tcpJoinBtnX, tcpJoinBtnY = 264, 240 errorLabelX, errorLabelY = 400, 250 machineIPX, machineIPY = 400, 90 + tipX, tipY = 400, 300 ) const ( @@ -159,6 +160,8 @@ type MainMenu struct { tcpJoinGameLabel *d2ui.Label machineIP *d2ui.Label errorLabel *d2ui.Label + joinTipLabel *d2ui.Label + hostTipLabel *d2ui.Label tcpJoinGameEntry *d2ui.TextBox screenMode mainMenuScreenMode leftButtonHeld bool @@ -182,10 +185,12 @@ func (v *MainMenu) OnLoad(loading d2screen.LoadingState) { v.audioProvider.PlayBGM(d2resource.BGMTitle) loading.Progress(twentyPercent) - v.createLabels(loading) + v.createMainMenuLabels(loading) + v.createMultiplayerLabels() v.loadBackgroundSprites() v.createLogos(loading) - v.createButtons(loading) + v.createMainMenuButtons(loading) + v.createMultiplayerMenuButtons() v.tcpJoinGameEntry = v.uiManager.NewTextbox() v.tcpJoinGameEntry.SetPosition(joinGameDialogX, joinGameDialogY) @@ -235,7 +240,7 @@ func (v *MainMenu) loadBackgroundSprites() { v.serverIPBackground.SetPosition(serverIPbackgroundX, serverIPbackgroundY) } -func (v *MainMenu) createLabels(loading d2screen.LoadingState) { +func (v *MainMenu) createMainMenuLabels(loading d2screen.LoadingState) { v.versionLabel = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteStatic) v.versionLabel.Alignment = d2ui.HorizontalAlignRight v.versionLabel.SetText("OpenDiablo2 - " + v.buildInfo.Branch) @@ -268,6 +273,14 @@ func (v *MainMenu) createLabels(loading d2screen.LoadingState) { v.openDiabloLabel.SetPosition(od2LabelX, od2LabelY) loading.Progress(fiftyPercent) + if v.errorLabel != nil { + v.errorLabel.SetPosition(errorLabelX, errorLabelY) + v.errorLabel.Alignment = d2ui.HorizontalAlignCenter + v.errorLabel.Color[0] = d2util.Color(red) + } +} + +func (v *MainMenu) createMultiplayerLabels() { v.tcpIPOptionsLabel = v.uiManager.NewLabel(d2resource.Font42, d2resource.PaletteUnits) v.tcpIPOptionsLabel.SetPosition(tcpOptionsX, tcpOptionsY) v.tcpIPOptionsLabel.Alignment = d2ui.HorizontalAlignCenter @@ -285,11 +298,21 @@ func (v *MainMenu) createLabels(loading d2screen.LoadingState) { v.machineIP.Color[0] = d2util.Color(lightYellow) v.machineIP.SetPosition(machineIPX, machineIPY) - if v.errorLabel != nil { - v.errorLabel.SetPosition(errorLabelX, errorLabelY) - v.errorLabel.Alignment = d2ui.HorizontalAlignCenter - v.errorLabel.Color[0] = d2util.Color(red) - } + v.hostTipLabel = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteUnits) + v.hostTipLabel.Alignment = d2ui.HorizontalAlignCenter + v.hostTipLabel.SetText(d2ui.ColorTokenize(strings.Join(d2util.SplitIntoLinesWithMaxWidth( + v.asset.TranslateLabel(d2enum.TipHostLabel), 36), + "\n"), d2ui.ColorTokenGold)) + v.hostTipLabel.SetPosition(tipX, tipY) + v.hostTipLabel.SetVisible(false) + + v.joinTipLabel = v.uiManager.NewLabel(d2resource.FontFormal12, d2resource.PaletteUnits) + v.joinTipLabel.Alignment = d2ui.HorizontalAlignCenter + v.joinTipLabel.SetText(d2ui.ColorTokenize(strings.Join(d2util.SplitIntoLinesWithMaxWidth( + v.asset.TranslateLabel(d2enum.TipJoinLabel), 36), + "\n"), d2ui.ColorTokenGold)) + v.joinTipLabel.SetPosition(tipX, tipY) + v.joinTipLabel.SetVisible(false) } func (v *MainMenu) createLogos(loading d2screen.LoadingState) { @@ -329,7 +352,7 @@ func (v *MainMenu) createLogos(loading d2screen.LoadingState) { v.diabloLogoRightBack.SetPosition(diabloLogoX, diabloLogoY) } -func (v *MainMenu) createButtons(loading d2screen.LoadingState) { +func (v *MainMenu) createMainMenuButtons(loading d2screen.LoadingState) { v.exitDiabloButton = v.uiManager.NewButton(d2ui.ButtonTypeWide, v.asset.TranslateLabel(d2enum.ExitGameLabel)) v.exitDiabloButton.SetPosition(exitDiabloBtnX, exitDiabloBtnY) v.exitDiabloButton.OnActivated(func() { v.onExitButtonClicked() }) @@ -367,8 +390,6 @@ func (v *MainMenu) createButtons(loading d2screen.LoadingState) { v.btnServerIPOk = v.uiManager.NewButton(d2ui.ButtonTypeOkCancel, v.asset.TranslateString(d2enum.OKLabel)) v.btnServerIPOk.SetPosition(srvOkBtnX, srvOkBtnY) v.btnServerIPOk.OnActivated(func() { v.onBtnTCPIPOkClicked() }) - - v.createMultiplayerMenuButtons() loading.Progress(eightyPercent) } @@ -390,10 +411,14 @@ func (v *MainMenu) createMultiplayerMenuButtons() { v.btnTCPIPHostGame = v.uiManager.NewButton(d2ui.ButtonTypeWide, v.asset.TranslateLabel(d2enum.TCPIPHostGameLabel)) v.btnTCPIPHostGame.SetPosition(tcpHostBtnX, tcpHostBtnY) v.btnTCPIPHostGame.OnActivated(func() { v.onTCPIPHostGameClicked() }) + v.btnTCPIPHostGame.OnHoverStart(func() { v.hostTipLabel.SetVisible(true) }) + v.btnTCPIPHostGame.OnHoverEnd(func() { v.hostTipLabel.SetVisible(false) }) v.btnTCPIPJoinGame = v.uiManager.NewButton(d2ui.ButtonTypeWide, v.asset.TranslateLabel(d2enum.TCPIPJoinGameLabel)) v.btnTCPIPJoinGame.SetPosition(tcpJoinBtnX, tcpJoinBtnY) v.btnTCPIPJoinGame.OnActivated(func() { v.onTCPIPJoinGameClicked() }) + v.btnTCPIPJoinGame.OnHoverStart(func() { v.joinTipLabel.SetVisible(true) }) + v.btnTCPIPJoinGame.OnHoverEnd(func() { v.joinTipLabel.SetVisible(false) }) } func (v *MainMenu) onMapTestClicked() { From 0c04e9b3d551c181c6479bb15a4772309a27fe30 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Mon, 21 Dec 2020 17:37:59 +0100 Subject: [PATCH 38/70] skill select menu dependencies (when we open skillselect menu, other panels are closed) --- d2common/d2resource/languages_map.go | 2 +- d2game/d2player/game_controls.go | 34 ++++++++++++++++++++++++++-- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/d2common/d2resource/languages_map.go b/d2common/d2resource/languages_map.go index 44045a17..22beae97 100644 --- a/d2common/d2resource/languages_map.go +++ b/d2common/d2resource/languages_map.go @@ -62,7 +62,7 @@ key | value key | value So, GetLabelModifier returns value of offset in locale languages table */ // some of values need to be set up. For now values with "checked" comment -// was tested and works fine in main menu. +// was tested and works fine. func GetLabelModifier(language string) int { modifiers := map[string]int{ "ENG": 0, // (English) // checked diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 01fc1cd3..6729fb23 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -633,6 +633,8 @@ func (g *GameControls) OnMouseButtonDown(event d2interface.MouseEvent) bool { func (g *GameControls) toggleHeroStatsPanel() { if !g.HelpOverlay.IsOpen() { + g.hud.skillSelectMenu.LeftPanel.Close() + g.hud.skillSelectMenu.RightPanel.Close() g.questLog.Close() g.heroStatsPanel.Toggle() g.hud.miniPanel.SetMovedRight(g.heroStatsPanel.IsOpen()) @@ -645,9 +647,31 @@ func (g *GameControls) onCloseHeroStatsPanel() { g.updateLayout() } +func (g *GameControls) toggleLeftSkillPanel() { + if !g.HelpOverlay.IsOpen() { + g.inventory.Close() + g.skilltree.Close() + g.questLog.Close() + g.heroStatsPanel.Close() + g.hud.skillSelectMenu.ToggleLeftPanel() + } +} + +func (g *GameControls) toggleRightSkillPanel() { + if !g.HelpOverlay.IsOpen() { + g.inventory.Close() + g.skilltree.Close() + g.questLog.Close() + g.heroStatsPanel.Close() + g.hud.skillSelectMenu.ToggleRightPanel() + } +} + func (g *GameControls) toggleQuestLog() { if !g.HelpOverlay.IsOpen() { g.heroStatsPanel.Close() + g.hud.skillSelectMenu.LeftPanel.Close() + g.hud.skillSelectMenu.RightPanel.Close() g.questLog.Toggle() g.hud.miniPanel.SetMovedRight(g.questLog.IsOpen()) g.updateLayout() @@ -662,6 +686,8 @@ func (g *GameControls) onCloseQuestLog() { func (g *GameControls) toggleHelpOverlay() { if !g.inventory.IsOpen() && !g.skilltree.IsOpen() && !g.heroStatsPanel.IsOpen() && !g.questLog.IsOpen() { g.HelpOverlay.updateKeyMap(g.keyMap) + g.hud.skillSelectMenu.LeftPanel.Close() + g.hud.skillSelectMenu.RightPanel.Close() g.hud.miniPanel.openDisabled() g.HelpOverlay.Toggle() g.updateLayout() @@ -670,6 +696,8 @@ func (g *GameControls) toggleHelpOverlay() { func (g *GameControls) toggleInventoryPanel() { if !g.HelpOverlay.IsOpen() { + g.hud.skillSelectMenu.LeftPanel.Close() + g.hud.skillSelectMenu.RightPanel.Close() g.skilltree.Close() g.inventory.Toggle() g.hud.miniPanel.SetMovedLeft(g.inventory.IsOpen()) @@ -685,6 +713,8 @@ func (g *GameControls) onCloseInventory() { func (g *GameControls) toggleSkilltreePanel() { if !g.HelpOverlay.IsOpen() { g.inventory.Close() + g.hud.skillSelectMenu.LeftPanel.Close() + g.hud.skillSelectMenu.RightPanel.Close() g.skilltree.Toggle() g.hud.miniPanel.SetMovedLeft(g.skilltree.IsOpen()) g.updateLayout() @@ -888,7 +918,7 @@ func (g *GameControls) onHoverActionable(item actionableType) { func (g *GameControls) onClickActionable(item actionableType) { actionMap := map[actionableType]func(){ leftSkill: func() { - g.hud.skillSelectMenu.ToggleLeftPanel() + g.toggleLeftSkillPanel() }, newStats: func() { @@ -912,7 +942,7 @@ func (g *GameControls) onClickActionable(item actionableType) { }, rightSkill: func() { - g.hud.skillSelectMenu.ToggleRightPanel() + g.toggleRightSkillPanel() }, hpGlobe: func() { From 04ec879035616aa28cffd0c59c034cd415e0fe28 Mon Sep 17 00:00:00 2001 From: Intyre Date: Mon, 21 Dec 2020 21:46:58 +0100 Subject: [PATCH 39/70] Cleaned up d2term --- d2app/app.go | 132 +++++---- d2common/d2interface/terminal.go | 18 +- d2core/d2asset/asset_manager.go | 70 +++-- d2core/d2audio/sound_engine.go | 83 ++++-- d2core/d2map/d2maprenderer/renderer.go | 42 ++- d2core/d2term/commmand.go | 33 +++ d2core/d2term/d2term.go | 4 +- d2core/d2term/terminal.go | 372 ++++++++++--------------- d2core/d2term/terminal_logger.go | 10 +- d2core/d2term/terminal_test.go | 71 +++++ d2game/d2gamescreen/game.go | 127 +++++---- d2game/d2player/game_controls.go | 217 ++++++++------- 12 files changed, 673 insertions(+), 506 deletions(-) create mode 100644 d2core/d2term/commmand.go create mode 100644 d2core/d2term/terminal_test.go diff --git a/d2app/app.go b/d2app/app.go index fcb743b5..afdf3ced 100644 --- a/d2app/app.go +++ b/d2app/app.go @@ -91,12 +91,6 @@ type Options struct { LogLevel *d2util.LogLevel } -type bindTerminalEntry struct { - name string - description string - action interface{} -} - const ( bytesToMegabyte = 1024 * 1024 nSamplesTAlloc = 100 @@ -184,11 +178,6 @@ func (a *App) loadEngine() error { return err } - err = a.asset.BindTerminalCommands(term) - if err != nil { - return err - } - scriptEngine := d2script.CreateScriptEngine() uiManager := d2ui.NewUIManager(a.asset, renderer, inputManager, *a.Options.LogLevel, audio) @@ -351,25 +340,28 @@ func (a *App) initialize() error { a.renderer.SetWindowIcon("d2logo.png") a.terminal.BindLogger() - terminalActions := [...]bindTerminalEntry{ - {"dumpheap", "dumps the heap to pprof/heap.pprof", a.dumpHeap}, - {"fullscreen", "toggles fullscreen", a.toggleFullScreen}, - {"capframe", "captures a still frame", a.setupCaptureFrame}, - {"capgifstart", "captures an animation (start)", a.startAnimationCapture}, - {"capgifstop", "captures an animation (stop)", a.stopAnimationCapture}, - {"vsync", "toggles vsync", a.toggleVsync}, - {"fps", "toggle fps counter", a.toggleFpsCounter}, - {"timescale", "set scalar for elapsed time", a.setTimeScale}, - {"quit", "exits the game", a.quitGame}, - {"screen-gui", "enters the gui playground screen", a.enterGuiPlayground}, - {"js", "eval JS scripts", a.evalJS}, + terminalCommands := []struct { + name string + desc string + args []string + fn func(args []string) error + }{ + {"dumpheap", "dumps the heap to pprof/heap.pprof", nil, a.dumpHeap}, + {"fullscreen", "toggles fullscreen", nil, a.toggleFullScreen}, + {"capframe", "captures a still frame", []string{"filename"}, a.setupCaptureFrame}, + {"capgifstart", "captures an animation (start)", []string{"filename"}, a.startAnimationCapture}, + {"capgifstop", "captures an animation (stop)", nil, a.stopAnimationCapture}, + {"vsync", "toggles vsync", nil, a.toggleVsync}, + {"fps", "toggle fps counter", nil, a.toggleFpsCounter}, + {"timescale", "set scalar for elapsed time", []string{"float"}, a.setTimeScale}, + {"quit", "exits the game", nil, a.quitGame}, + {"screen-gui", "enters the gui playground screen", nil, a.enterGuiPlayground}, + {"js", "eval JS scripts", []string{"code"}, a.evalJS}, } - for idx := range terminalActions { - action := &terminalActions[idx] - - if err := a.terminal.BindAction(action.name, action.description, action.action); err != nil { - a.Fatal(err.Error()) + for _, cmd := range terminalCommands { + if err := a.terminal.Bind(cmd.name, cmd.desc, cmd.args, cmd.fn); err != nil { + a.Fatalf("failed to bind action %q: %v", cmd.name, err.Error()) } } @@ -644,7 +636,7 @@ func (a *App) allocRate(totalAlloc uint64, fps float64) float64 { return deltaAllocPerFrame * fps / bytesToMegabyte } -func (a *App) dumpHeap() { +func (a *App) dumpHeap([]string) error { if _, err := os.Stat("./pprof/"); os.IsNotExist(err) { if err := os.Mkdir("./pprof/", 0750); err != nil { a.Fatal(err.Error()) @@ -663,48 +655,56 @@ func (a *App) dumpHeap() { if err := fileOut.Close(); err != nil { a.Fatal(err.Error()) } + + return nil } -func (a *App) evalJS(code string) { - val, err := a.scriptEngine.Eval(code) +func (a *App) evalJS(args []string) error { + val, err := a.scriptEngine.Eval(args[0]) if err != nil { - a.terminal.OutputErrorf("%s", err) - return + a.terminal.Errorf(err.Error()) + return nil } a.Info("%s" + val) + + return nil } -func (a *App) toggleFullScreen() { +func (a *App) toggleFullScreen([]string) error { fullscreen := !a.renderer.IsFullScreen() a.renderer.SetFullScreen(fullscreen) - a.terminal.OutputInfof("fullscreen is now: %v", fullscreen) + a.terminal.Infof("fullscreen is now: %v", fullscreen) + + return nil } -func (a *App) setupCaptureFrame(path string) { +func (a *App) setupCaptureFrame(args []string) error { a.captureState = captureStateFrame - a.capturePath = path + a.capturePath = args[0] a.captureFrames = nil + + return nil } func (a *App) doCaptureFrame(target d2interface.Surface) error { fp, err := os.Create(a.capturePath) if err != nil { + a.terminal.Errorf("failed to create %q", a.capturePath) return err } - defer func() { - if err := fp.Close(); err != nil { - a.Fatal(err.Error()) - } - }() - screenshot := target.Screenshot() if err := png.Encode(fp, screenshot); err != nil { return err } - a.Infof("saved frame to %s", a.capturePath) + if err := fp.Close(); err != nil { + a.terminal.Errorf("failed to create %q", a.capturePath) + return nil + } + + a.terminal.Infof("saved frame to %s", a.capturePath) return nil } @@ -769,42 +769,56 @@ func (a *App) convertFramesToGif() error { return nil } -func (a *App) startAnimationCapture(path string) { +func (a *App) startAnimationCapture(args []string) error { a.captureState = captureStateGif - a.capturePath = path + a.capturePath = args[0] a.captureFrames = nil + + return nil } -func (a *App) stopAnimationCapture() { +func (a *App) stopAnimationCapture([]string) error { a.captureState = captureStateNone + + return nil } -func (a *App) toggleVsync() { +func (a *App) toggleVsync([]string) error { vsync := !a.renderer.GetVSyncEnabled() a.renderer.SetVSyncEnabled(vsync) - a.terminal.OutputInfof("vsync is now: %v", vsync) + a.terminal.Infof("vsync is now: %v", vsync) + + return nil } -func (a *App) toggleFpsCounter() { +func (a *App) toggleFpsCounter([]string) error { a.showFPS = !a.showFPS - a.terminal.OutputInfof("fps counter is now: %v", a.showFPS) + a.terminal.Infof("fps counter is now: %v", a.showFPS) + + return nil } -func (a *App) setTimeScale(timeScale float64) { - if timeScale <= 0 { - a.terminal.OutputErrorf("invalid time scale value") - } else { - a.terminal.OutputInfof("timescale changed from %f to %f", a.timeScale, timeScale) - a.timeScale = timeScale +func (a *App) setTimeScale(args []string) error { + timeScale, err := strconv.ParseFloat(args[0], 64) + if err != nil || timeScale <= 0 { + a.terminal.Errorf("invalid time scale value") + return nil } + + a.terminal.Infof("timescale changed from %f to %f", a.timeScale, timeScale) + a.timeScale = timeScale + + return nil } -func (a *App) quitGame() { +func (a *App) quitGame([]string) error { os.Exit(0) + return nil } -func (a *App) enterGuiPlayground() { +func (a *App) enterGuiPlayground([]string) error { a.screen.SetNextScreen(d2gamescreen.CreateGuiTestMain(a.renderer, a.guiManager, *a.Options.LogLevel, a.asset)) + return nil } func createZeroedRing(n int) *ring.Ring { diff --git a/d2common/d2interface/terminal.go b/d2common/d2interface/terminal.go index c6496437..be3bd31c 100644 --- a/d2common/d2interface/terminal.go +++ b/d2common/d2interface/terminal.go @@ -13,17 +13,17 @@ type Terminal interface { OnKeyChars(event KeyCharsEvent) bool Render(surface Surface) error Execute(command string) error - OutputRaw(text string, category d2enum.TermCategory) - Outputf(format string, params ...interface{}) - OutputInfof(format string, params ...interface{}) - OutputWarningf(format string, params ...interface{}) - OutputErrorf(format string, params ...interface{}) - OutputClear() - IsVisible() bool + Rawf(category d2enum.TermCategory, format string, params ...interface{}) + Printf(format string, params ...interface{}) + Infof(format string, params ...interface{}) + Warningf(format string, params ...interface{}) + Errorf(format string, params ...interface{}) + Clear() + Visible() bool Hide() Show() - BindAction(name, description string, action interface{}) error - UnbindAction(name string) error + Bind(name, description string, arguments []string, fn func(args []string) error) error + Unbind(name ...string) error } // TerminalLogger is used tomake the Terminal write out diff --git a/d2core/d2asset/asset_manager.go b/d2core/d2asset/asset_manager.go index 0146170f..359befa0 100644 --- a/d2core/d2asset/asset_manager.go +++ b/d2core/d2asset/asset_manager.go @@ -3,6 +3,7 @@ package d2asset import ( "fmt" "image/color" + "strconv" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" @@ -409,43 +410,70 @@ func (am *AssetManager) loadDCC(path string, // BindTerminalCommands binds the in-game terminal comands for the asset manager. func (am *AssetManager) BindTerminalCommands(term d2interface.Terminal) error { - if err := term.BindAction("assetspam", "display verbose asset manager logs", func(verbose bool) { + if err := term.Bind("assetspam", "display verbose asset manager logs", nil, am.commandAssetSpam(term)); err != nil { + return err + } + + if err := term.Bind("assetstat", "display asset manager cache statistics", nil, am.commandAssetStat(term)); err != nil { + return err + } + + if err := term.Bind("assetclear", "clear asset manager cache", nil, am.commandAssetClear); err != nil { + return err + } + + return nil +} + +// UnbindTerminalCommands unbinds commands from the terminal +func (am *AssetManager) UnbindTerminalCommands(term d2interface.Terminal) error { + return term.Unbind("assetspam", "assetstat", "assetclear") +} + +func (am *AssetManager) commandAssetSpam(term d2interface.Terminal) func([]string) error { + return func(args []string) error { + verbose, err := strconv.ParseBool(args[0]) + if err != nil { + term.Errorf("asset manager verbose invalid argument") + return nil + } + if verbose { - term.OutputInfof("asset manager verbose logging enabled") + term.Infof("asset manager verbose logging enabled") } else { - term.OutputInfof("asset manager verbose logging disabled") + term.Infof("asset manager verbose logging disabled") } am.palettes.SetVerbose(verbose) am.fonts.SetVerbose(verbose) am.transforms.SetVerbose(verbose) am.animations.SetVerbose(verbose) - }); err != nil { - return err - } - if err := term.BindAction("assetstat", "display asset manager cache statistics", func() { + return nil + } +} + +func (am *AssetManager) commandAssetStat(term d2interface.Terminal) func([]string) error { + return func([]string) error { var cacheStatistics = func(c d2interface.Cache) float64 { const percent = 100.0 return float64(c.GetWeight()) / float64(c.GetBudget()) * percent } - term.OutputInfof("palette cache: %f", cacheStatistics(am.palettes)) - term.OutputInfof("palette transform cache: %f", cacheStatistics(am.transforms)) - term.OutputInfof("Animation cache: %f", cacheStatistics(am.animations)) - term.OutputInfof("font cache: %f", cacheStatistics(am.fonts)) - }); err != nil { - return err - } + term.Infof("palette cache: %f", cacheStatistics(am.palettes)) + term.Infof("palette transform cache: %f", cacheStatistics(am.transforms)) + term.Infof("Animation cache: %f", cacheStatistics(am.animations)) + term.Infof("font cache: %f", cacheStatistics(am.fonts)) - if err := term.BindAction("assetclear", "clear asset manager cache", func() { - am.palettes.Clear() - am.transforms.Clear() - am.animations.Clear() - am.fonts.Clear() - }); err != nil { - return err + return nil } +} + +func (am *AssetManager) commandAssetClear([]string) error { + am.palettes.Clear() + am.transforms.Clear() + am.animations.Clear() + am.fonts.Clear() return nil } diff --git a/d2core/d2audio/sound_engine.go b/d2core/d2audio/sound_engine.go index ee907af0..4ef91f57 100644 --- a/d2core/d2audio/sound_engine.go +++ b/d2core/d2audio/sound_engine.go @@ -3,6 +3,7 @@ package d2audio import ( "fmt" "math/rand" + "strconv" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" @@ -73,7 +74,7 @@ func (s *Sound) SetPan(pan float64) { // Play the sound func (s *Sound) Play() { - s.Info("starting sound" + s.entry.Handle) + s.Info("starting sound " + s.entry.Handle) s.effect.Play() if s.entry.FadeIn != 0 { @@ -103,6 +104,11 @@ func (s *Sound) Stop() { } } +// String returns the sound filename +func (s *Sound) String() string { + return s.entry.Handle +} + // SoundEngine provides functions for playing sounds type SoundEngine struct { asset *d2asset.AssetManager @@ -128,43 +134,25 @@ func NewSoundEngine(provider d2interface.AudioProvider, r.Logger.SetPrefix(logPrefix) r.Logger.SetLevel(l) - err := term.BindAction("playsoundid", "plays the sound for a given id", func(id int) { - r.PlaySoundID(id) - }) - if err != nil { + if err := term.Bind("playsoundid", "plays the sound for a given id", []string{"id"}, r.commandPlaySoundID); err != nil { r.Error(err.Error()) return nil } - err = term.BindAction("playsound", "plays the sound for a given handle string", func(handle string) { - r.PlaySoundHandle(handle) - }) - if err != nil { + if err := term.Bind("playsound", "plays the sound for a given handle string", []string{"name"}, r.commandPlaySound); err != nil { r.Error(err.Error()) return nil } - err = term.BindAction("activesounds", "list currently active sounds", func() { - for s := range r.sounds { - if err != nil { - r.Error(err.Error()) - return - } + if err := term.Bind("activesounds", "list currently active sounds", nil, r.commandActiveSounds); err != nil { + r.Error(err.Error()) + return nil + } - r.Info(fmt.Sprint(s)) - } - }) - - err = term.BindAction("killsounds", "kill active sounds", func() { - for s := range r.sounds { - if err != nil { - r.Error(err.Error()) - return - } - - s.Stop() - } - }) + if err := term.Bind("killsounds", "kill active sounds", nil, r.commandKillSounds); err != nil { + r.Error(err.Error()) + return nil + } return &r } @@ -194,6 +182,11 @@ func (s *SoundEngine) Advance(elapsed float64) { } } +// UnbindTerminalCommands unbinds commands from the terminal +func (s *SoundEngine) UnbindTerminalCommands(term d2interface.Terminal) error { + return term.Unbind("playsoundid", "playsound", "activesounds", "killsounds") +} + // Reset stop all sounds and reset state func (s *SoundEngine) Reset() { for snd := range s.sounds { @@ -242,3 +235,35 @@ func (s *SoundEngine) PlaySoundHandle(handle string) *Sound { sound := s.asset.Records.Sound.Details[handle].Index return s.PlaySoundID(sound) } + +func (s *SoundEngine) commandPlaySoundID(args []string) error { + id, err := strconv.Atoi(args[0]) + if err != nil { + return fmt.Errorf("invalid argument") + } + + s.PlaySoundID(id) + + return nil +} + +func (s *SoundEngine) commandPlaySound(args []string) error { + s.PlaySoundHandle(args[0]) + + return nil +} + +func (s *SoundEngine) commandActiveSounds([]string) error { + for sound := range s.sounds { + s.Info(sound.String()) + } + + return nil +} +func (s *SoundEngine) commandKillSounds([]string) error { + for sound := range s.sounds { + sound.Stop() + } + + return nil +} diff --git a/d2core/d2map/d2maprenderer/renderer.go b/d2core/d2map/d2maprenderer/renderer.go index ab0be25a..e4abd367 100644 --- a/d2core/d2map/d2maprenderer/renderer.go +++ b/d2core/d2map/d2maprenderer/renderer.go @@ -2,8 +2,10 @@ package d2maprenderer import ( "errors" + "fmt" "image/color" "math" + "strconv" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2ds1" @@ -86,20 +88,11 @@ func CreateMapRenderer(asset *d2asset.AssetManager, renderer d2interface.Rendere result.Camera.position = &startPosition result.viewport.SetCamera(&result.Camera) - var err error - err = term.BindAction("mapdebugvis", "set map debug visualization level", func(level int) { - result.mapDebugVisLevel = level - }) - - if err != nil { + if err := term.Bind("mapdebugvis", "set map debug visualization level", nil, result.commandMapDebugVis); err != nil { result.Errorf("could not bind the mapdebugvis action, err: %v", err) } - err = term.BindAction("entitydebugvis", "set entity debug visualization level", func(level int) { - result.entityDebugVisLevel = level - }) - - if err != nil { + if err := term.Bind("entitydebugvis", "set entity debug visualization level", nil, result.commandEntityDebugVis); err != nil { result.Errorf("could not bind the entitydebugvis action, err: %v", err) } @@ -110,6 +103,33 @@ func CreateMapRenderer(asset *d2asset.AssetManager, renderer d2interface.Rendere return result } +// UnbindTerminalCommands unbinds commands from the terminal +func (mr *MapRenderer) UnbindTerminalCommands(term d2interface.Terminal) error { + return term.Unbind("mapdebugvis", "entitydebugvis") +} + +func (mr *MapRenderer) commandMapDebugVis(args []string) error { + level, err := strconv.Atoi(args[0]) + if err != nil { + return fmt.Errorf("invalid argument supplied") + } + + mr.mapDebugVisLevel = level + + return nil +} + +func (mr *MapRenderer) commandEntityDebugVis(args []string) error { + level, err := strconv.Atoi(args[0]) + if err != nil { + return fmt.Errorf("invalid argument supplied") + } + + mr.entityDebugVisLevel = level + + return nil +} + // RegenerateTileCache calls MapRenderer.generateTileCache(). func (mr *MapRenderer) RegenerateTileCache() { mr.generateTileCache() diff --git a/d2core/d2term/commmand.go b/d2core/d2term/commmand.go new file mode 100644 index 00000000..d72a121d --- /dev/null +++ b/d2core/d2term/commmand.go @@ -0,0 +1,33 @@ +package d2term + +import ( + "sort" +) + +func (t *Terminal) commandList([]string) error { + names := make([]string, 0, len(t.commands)) + for name := range t.commands { + names = append(names, name) + } + + sort.Strings(names) + t.Infof("available actions (%d):", len(names)) + + for _, name := range names { + entry := t.commands[name] + if entry.arguments != nil { + t.Infof("%s: %s; %v", name, entry.description, entry.arguments) + continue + } + + t.Infof("%s: %s", name, entry.description) + } + + return nil +} + +func (t *Terminal) commandClear([]string) error { + t.Clear() + + return nil +} diff --git a/d2core/d2term/d2term.go b/d2core/d2term/d2term.go index 561b144b..4e478784 100644 --- a/d2core/d2term/d2term.go +++ b/d2core/d2term/d2term.go @@ -6,8 +6,8 @@ import ( ) // New creates and initializes the terminal -func New(inputManager d2interface.InputManager) (d2interface.Terminal, error) { - term, err := createTerminal() +func New(inputManager d2interface.InputManager) (*Terminal, error) { + term, err := NewTerminal() if err != nil { return nil, err } diff --git a/d2core/d2term/terminal.go b/d2core/d2term/terminal.go index be345220..4e30e478 100644 --- a/d2core/d2term/terminal.go +++ b/d2core/d2term/terminal.go @@ -6,9 +6,6 @@ import ( "image/color" "log" "math" - "reflect" - "sort" - "strconv" "strings" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" @@ -18,13 +15,13 @@ import ( ) const ( - termCharWidth = 6 - termCharHeight = 16 - termCharDoubleWidth = termCharWidth * 2 - termRowCount = 24 - termRowCountMax = 32 - termColCountMax = 128 - termAnimLength = 0.5 + charWidth = 6 + charHeight = 16 + charDoubleWidth = charWidth * 2 + rowCount = 24 + rowCountMax = 32 + colCountMax = 128 + animLength = 0.5 ) const ( @@ -35,13 +32,13 @@ const ( red = 0xcc0000b0 ) -type termVis int +type visibility int const ( - termVisHidden termVis = iota - termVisShowing - termVisShown - termVisHiding + visHidden visibility = iota + visShowing + visShown + visHiding ) const ( @@ -49,18 +46,22 @@ const ( minVisAnim = 0.0 ) -type termHistoryEntry struct { +type historyEntry struct { text string category d2enum.TermCategory } -type termActionEntry struct { - action interface{} +type commandEntry struct { description string + arguments []string + fn func([]string) error } -type terminal struct { - outputHistory []termHistoryEntry +} + +// Terminal handles the in-game terminal +type Terminal struct { + outputHistory []historyEntry outputIndex int command string @@ -68,7 +69,7 @@ type terminal struct { commandIndex int lineCount int - visState termVis + visState visibility visAnim float64 bgColor color.RGBA @@ -77,36 +78,88 @@ type terminal struct { warningColor color.RGBA errorColor color.RGBA - actions map[string]termActionEntry + commands map[string]commandEntry } -func (t *terminal) Advance(elapsed float64) error { +// NewTerminal creates and returns a terminal +func NewTerminal() (*Terminal, error) { + term := &Terminal{ + lineCount: rowCount, + bgColor: d2util.Color(darkGrey), + fgColor: d2util.Color(lightGrey), + infoColor: d2util.Color(lightBlue), + warningColor: d2util.Color(yellow), + errorColor: d2util.Color(red), + commands: make(map[string]commandEntry), + } + + term.Infof("::: OpenDiablo2 Terminal :::") + term.Infof("type \"ls\" for a list of commands") + + if err := term.Bind("ls", "list available commands", nil, term.commandList); err != nil { + return nil, err + } + + if err := term.Bind("clear", "clear terminal", nil, term.commandClear); err != nil { + return nil, err + } + + return term, nil +} + +// Bind binds commands to the terminal +func (t *Terminal) Bind(name, description string, arguments []string, fn func(args []string) error) error { + if name == "" || description == "" { + return fmt.Errorf("missing name or description") + } + + if _, ok := t.commands[name]; ok { + t.Warningf("rebinding command with name: %s", name) + } + + t.commands[name] = commandEntry{description, arguments, fn} + + return nil +} + +// Unbind unbinds commands from the terminal +func (t *Terminal) Unbind(names ...string) error { + for _, name := range names { + delete(t.commands, name) + } + + return nil +} + +// Advance advances the terminal animation +func (t *Terminal) Advance(elapsed float64) error { switch t.visState { - case termVisShowing: - t.visAnim = math.Min(maxVisAnim, t.visAnim+elapsed/termAnimLength) + case visShowing: + t.visAnim = math.Min(maxVisAnim, t.visAnim+elapsed/animLength) if t.visAnim == maxVisAnim { - t.visState = termVisShown + t.visState = visShown } - case termVisHiding: - t.visAnim = math.Max(minVisAnim, t.visAnim-elapsed/termAnimLength) + case visHiding: + t.visAnim = math.Max(minVisAnim, t.visAnim-elapsed/animLength) if t.visAnim == minVisAnim { - t.visState = termVisHidden + t.visState = visHidden } } - if !t.IsVisible() { + if !t.Visible() { return nil } return nil } -func (t *terminal) OnKeyDown(event d2interface.KeyEvent) bool { +// OnKeyDown handles key down in the terminal +func (t *Terminal) OnKeyDown(event d2interface.KeyEvent) bool { if event.Key() == d2enum.KeyGraveAccent { - t.toggleTerminal() + t.toggle() } - if !t.IsVisible() { + if !t.Visible() { return false } @@ -139,7 +192,7 @@ func (t *terminal) OnKeyDown(event d2interface.KeyEvent) bool { return true } -func (t *terminal) processCommand() { +func (t *Terminal) processCommand() { if t.command == "" { return } @@ -156,17 +209,17 @@ func (t *terminal) processCommand() { t.commandHistory = t.commandHistory[:n] t.commandHistory = append(t.commandHistory, t.command) - t.Outputf(t.command) + t.Printf(t.command) if err := t.Execute(t.command); err != nil { - t.OutputErrorf(err.Error()) + t.Errorf(err.Error()) } t.commandIndex = len(t.commandHistory) - 1 t.command = "" } -func (t *terminal) handleControlKey(eventKey d2enum.Key, keyMod d2enum.KeyMod) { +func (t *Terminal) handleControlKey(eventKey d2enum.Key, keyMod d2enum.KeyMod) { switch eventKey { case d2enum.KeyUp: if keyMod == d2enum.KeyModControl { @@ -181,21 +234,14 @@ func (t *terminal) handleControlKey(eventKey d2enum.Key, keyMod d2enum.KeyMod) { } case d2enum.KeyDown: if keyMod == d2enum.KeyModControl { - t.lineCount = d2math.MinInt(t.lineCount+1, termRowCountMax) + t.lineCount = d2math.MinInt(t.lineCount+1, rowCountMax) } } } -func (t *terminal) toggleTerminal() { - if t.visState == termVisHiding || t.visState == termVisHidden { - t.Show() - } else { - t.Hide() - } -} - -func (t *terminal) OnKeyChars(event d2interface.KeyCharsEvent) bool { - if !t.IsVisible() { +// OnKeyChars handles char key in terminal +func (t *Terminal) OnKeyChars(event d2interface.KeyCharsEvent) bool { + if !t.Visible() { return false } @@ -211,14 +257,15 @@ func (t *terminal) OnKeyChars(event d2interface.KeyCharsEvent) bool { return handled } -func (t *terminal) Render(surface d2interface.Surface) error { - if !t.IsVisible() { +// Render renders the terminal +func (t *Terminal) Render(surface d2interface.Surface) error { + if !t.Visible() { return nil } totalWidth, _ := surface.GetSize() - outputHeight := t.lineCount * termCharHeight - totalHeight := outputHeight + termCharHeight + outputHeight := t.lineCount * charHeight + totalHeight := outputHeight + charHeight offset := -int((1.0 - easeInOut(t.visAnim)) * float64(totalHeight)) surface.PushTranslation(0, offset) @@ -231,19 +278,19 @@ func (t *terminal) Render(surface d2interface.Surface) error { break } - historyEntry := t.outputHistory[historyIndex] + entry := t.outputHistory[historyIndex] - surface.PushTranslation(termCharDoubleWidth, outputHeight-(i+1)*termCharHeight) - surface.DrawTextf(historyEntry.text) - surface.PushTranslation(-termCharDoubleWidth, 0) + surface.PushTranslation(charDoubleWidth, outputHeight-(i+1)*charHeight) + surface.DrawTextf(entry.text) + surface.PushTranslation(-charDoubleWidth, 0) - switch historyEntry.category { + switch entry.category { case d2enum.TermCategoryInfo: - surface.DrawRect(termCharWidth, termCharHeight, t.infoColor) + surface.DrawRect(charWidth, charHeight, t.infoColor) case d2enum.TermCategoryWarning: - surface.DrawRect(termCharWidth, termCharHeight, t.warningColor) + surface.DrawRect(charWidth, charHeight, t.warningColor) case d2enum.TermCategoryError: - surface.DrawRect(termCharWidth, termCharHeight, t.errorColor) + surface.DrawRect(charWidth, charHeight, t.errorColor) } surface.Pop() @@ -251,7 +298,7 @@ func (t *terminal) Render(surface d2interface.Surface) error { } surface.PushTranslation(0, outputHeight) - surface.DrawRect(totalWidth, termCharHeight, t.fgColor) + surface.DrawRect(totalWidth, charHeight, t.fgColor) surface.DrawTextf("> " + t.command) surface.Pop() @@ -260,174 +307,105 @@ func (t *terminal) Render(surface d2interface.Surface) error { return nil } -func (t *terminal) Execute(command string) error { +// Execute executes a command with arguments +func (t *Terminal) Execute(command string) error { params := parseCommand(command) if len(params) == 0 { return errors.New("invalid command") } - actionName := params[0] - actionParams := params[1:] + name := params[0] + args := params[1:] - actionEntry, ok := t.actions[actionName] + entry, ok := t.commands[name] if !ok { - return errors.New("action not found") + return errors.New("command not found") } - actionType := reflect.TypeOf(actionEntry.action) - if actionType.Kind() != reflect.Func { - return errors.New("action is not a function") + if len(args) != len(entry.arguments) { + return errors.New("command requires different argument count") } - if len(actionParams) != actionType.NumIn() { - return errors.New("action requires different argument count") - } - - paramValues, err := parseActionParams(actionType, actionParams) - if err != nil { + if err := entry.fn(args); err != nil { return err } - actionValue := reflect.ValueOf(actionEntry.action) - actionReturnValues := actionValue.Call(paramValues) - - if actionReturnValueCount := len(actionReturnValues); actionReturnValueCount > 0 { - t.OutputInfof("function returned %d values:", actionReturnValueCount) - - for _, actionReturnValue := range actionReturnValues { - t.OutputInfof("%v: %s", actionReturnValue.Interface(), actionReturnValue.String()) - } - } - return nil } -func parseActionParams(actionType reflect.Type, actionParams []string) ([]reflect.Value, error) { - var paramValues []reflect.Value - - for i := 0; i < actionType.NumIn(); i++ { - actionParam := actionParams[i] - - switch actionType.In(i).Kind() { - case reflect.String: - paramValues = append(paramValues, reflect.ValueOf(actionParam)) - case reflect.Int: - value, err := strconv.ParseInt(actionParam, 10, 64) - if err != nil { - return nil, err - } - - paramValues = append(paramValues, reflect.ValueOf(int(value))) - case reflect.Uint: - value, err := strconv.ParseUint(actionParam, 10, 64) - if err != nil { - return nil, err - } - - paramValues = append(paramValues, reflect.ValueOf(uint(value))) - case reflect.Float64: - value, err := strconv.ParseFloat(actionParam, 64) - if err != nil { - return nil, err - } - - paramValues = append(paramValues, reflect.ValueOf(value)) - case reflect.Bool: - value, err := strconv.ParseBool(actionParam) - if err != nil { - return nil, err - } - - paramValues = append(paramValues, reflect.ValueOf(value)) - default: - return nil, errors.New("action has unsupported arguments") - } - } - - return paramValues, nil -} - -func (t *terminal) OutputRaw(text string, category d2enum.TermCategory) { - lines := d2util.SplitIntoLinesWithMaxWidth(text, termColCountMax) +// Rawf writes a raw message to the terminal +func (t *Terminal) Rawf(category d2enum.TermCategory, format string, params ...interface{}) { + text := fmt.Sprintf(format, params...) + lines := d2util.SplitIntoLinesWithMaxWidth(text, colCountMax) for _, line := range lines { // removes color token (this token ends with [0m ) l := strings.Split(line, "\033[0m") line = l[len(l)-1] - t.outputHistory = append(t.outputHistory, termHistoryEntry{line, category}) + t.outputHistory = append(t.outputHistory, historyEntry{line, category}) } } -func (t *terminal) Outputf(format string, params ...interface{}) { - t.OutputRaw(fmt.Sprintf(format, params...), d2enum.TermCategoryNone) +// Printf writes a message to the terminal +func (t *Terminal) Printf(format string, params ...interface{}) { + t.Rawf(d2enum.TermCategoryNone, format, params...) } -func (t *terminal) OutputInfof(format string, params ...interface{}) { - t.OutputRaw(fmt.Sprintf(format, params...), d2enum.TermCategoryInfo) +// Infof writes a warning message to the terminal +func (t *Terminal) Infof(format string, params ...interface{}) { + t.Rawf(d2enum.TermCategoryInfo, format, params...) } -func (t *terminal) OutputWarningf(format string, params ...interface{}) { - t.OutputRaw(fmt.Sprintf(format, params...), d2enum.TermCategoryWarning) +// Warningf writes a warning message to the terminal +func (t *Terminal) Warningf(format string, params ...interface{}) { + t.Rawf(d2enum.TermCategoryWarning, format, params...) } -func (t *terminal) OutputErrorf(format string, params ...interface{}) { - t.OutputRaw(fmt.Sprintf(format, params...), d2enum.TermCategoryError) +// Errorf writes a error message to the terminal +func (t *Terminal) Errorf(format string, params ...interface{}) { + t.Rawf(d2enum.TermCategoryError, format, params...) } -func (t *terminal) OutputClear() { +// Clear clears the terminal +func (t *Terminal) Clear() { t.outputHistory = nil t.outputIndex = 0 } -func (t *terminal) IsVisible() bool { - return t.visState != termVisHidden +// Visible returns visible state +func (t *Terminal) Visible() bool { + return t.visState != visHidden } -func (t *terminal) Hide() { - if t.visState != termVisHidden { - t.visState = termVisHiding +// Hide hides the terminal +func (t *Terminal) Hide() { + if t.visState != visHidden { + t.visState = visHiding } } -func (t *terminal) Show() { - if t.visState != termVisShown { - t.visState = termVisShowing +// Show shows the terminal +func (t *Terminal) Show() { + if t.visState != visShown { + t.visState = visShowing } } -func (t *terminal) BindAction(name, description string, action interface{}) error { - actionType := reflect.TypeOf(action) - if actionType.Kind() != reflect.Func { - return errors.New("action is not a function") +func (t *Terminal) toggle() { + if t.visState == visHiding || t.visState == visHidden { + t.Show() + return } - for i := 0; i < actionType.NumIn(); i++ { - switch actionType.In(i).Kind() { - case reflect.String: - case reflect.Int: - case reflect.Uint: - case reflect.Float64: - case reflect.Bool: - default: - return errors.New("action has unsupported arguments") - } - } - - t.actions[name] = termActionEntry{action, description} - - return nil + t.Hide() } -func (t *terminal) BindLogger() { +// BindLogger binds a log.Writer to the output +func (t *Terminal) BindLogger() { log.SetOutput(&terminalLogger{writer: log.Writer(), terminal: t}) } -func (t *terminal) UnbindAction(name string) error { - delete(t.actions, name) - return nil -} - func easeInOut(t float64) float64 { t *= 2 if t < 1 { @@ -481,45 +459,3 @@ func parseCommand(command string) []string { return params } - -func createTerminal() (*terminal, error) { - terminal := &terminal{ - lineCount: termRowCount, - bgColor: d2util.Color(darkGrey), - fgColor: d2util.Color(lightGrey), - infoColor: d2util.Color(lightBlue), - warningColor: d2util.Color(yellow), - errorColor: d2util.Color(red), - actions: make(map[string]termActionEntry), - } - - terminal.OutputInfof("::: OpenDiablo2 Terminal :::") - terminal.OutputInfof("type \"ls\" for a list of actions") - - err := terminal.BindAction("ls", "list available actions", func() { - var names []string - for name := range terminal.actions { - names = append(names, name) - } - - sort.Strings(names) - - terminal.OutputInfof("available actions (%d):", len(names)) - for _, name := range names { - entry := terminal.actions[name] - terminal.OutputInfof("%s: %s; %s", name, entry.description, reflect.TypeOf(entry.action).String()) - } - }) - if err != nil { - return nil, fmt.Errorf("failed to bind the '%s' action, err: %w", "ls", err) - } - - err = terminal.BindAction("clear", "clear terminal", func() { - terminal.OutputClear() - }) - if err != nil { - return nil, fmt.Errorf("failed to bind the '%s' action, err: %w", "clear", err) - } - - return terminal, nil -} diff --git a/d2core/d2term/terminal_logger.go b/d2core/d2term/terminal_logger.go index 62eb67c8..1bfbda22 100644 --- a/d2core/d2term/terminal_logger.go +++ b/d2core/d2term/terminal_logger.go @@ -8,7 +8,7 @@ import ( ) type terminalLogger struct { - terminal *terminal + terminal *Terminal buffer bytes.Buffer writer io.Writer } @@ -31,16 +31,16 @@ func (tl *terminalLogger) Write(p []byte) (int, error) { switch { case strings.Index(lineLower, "error") > 0: - tl.terminal.OutputErrorf(line) + tl.terminal.Errorf(line) case strings.Index(lineLower, "warning") > 0: - tl.terminal.OutputWarningf(line) + tl.terminal.Errorf(line) default: - tl.terminal.Outputf(line) + tl.terminal.Printf(line) } return tl.writer.Write(p) } -func (tl *terminalLogger) BindToTerminal(t *terminal) { +func (tl *terminalLogger) BindToTerminal(t *Terminal) { tl.terminal = t } diff --git a/d2core/d2term/terminal_test.go b/d2core/d2term/terminal_test.go new file mode 100644 index 00000000..13b46778 --- /dev/null +++ b/d2core/d2term/terminal_test.go @@ -0,0 +1,71 @@ +package d2term + +import ( + "fmt" + "testing" +) + +func TestTerminal(t *testing.T) { + term, err := NewTerminal() + if err != nil { + t.Fatal(err) + } + + lenOutput := len(term.outputHistory) + + const expected1 = 2 + if lenOutput != expected1 { + t.Fatalf("got %d expected %d", lenOutput, expected1) + } + + term.Execute("clear") + term.Execute("ls") + + lenOutput = len(term.outputHistory) + + const expected2 = 3 + if lenOutput != expected2 { + t.Fatalf("got %d expected %d", lenOutput, expected2) + } +} + +func TestBind(t *testing.T) { + term, err := NewTerminal() + if err != nil { + t.Fatal(err) + } + + term.Clear() + + if err := term.Bind("hello", "world", []string{"world"}, func(args []string) error { + const expected = "world" + if args[0] != expected { + return fmt.Errorf("got %s expected %s", args[0], expected) + } + return nil + }); err != nil { + t.Fatal(err) + } + + if err := term.Execute("hello world"); err != nil { + t.Fatal(err) + } +} + +func TestUnbind(t *testing.T) { + term, err := NewTerminal() + if err != nil { + t.Fatal(err) + } + + term.Unbind("clear") + term.Clear() + term.Execute("ls") + + lenOutput := len(term.outputHistory) + + const expected = 2 + if lenOutput != expected { + t.Fatalf("got %d expected %d", lenOutput, expected) + } +} diff --git a/d2game/d2gamescreen/game.go b/d2game/d2gamescreen/game.go index 2b339a01..4247ff36 100644 --- a/d2game/d2gamescreen/game.go +++ b/d2game/d2gamescreen/game.go @@ -4,6 +4,7 @@ import ( "errors" "fmt" "image/color" + "strconv" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2gui" @@ -130,58 +131,36 @@ type Game struct { func (v *Game) OnLoad(_ d2screen.LoadingState) { v.audioProvider.PlayBGM("") - err := v.terminal.BindAction( - "spawnitem", - "spawns an item at the local player position", - func(code1, code2, code3, code4, code5 string) { - codes := []string{code1, code2, code3, code4, code5} - v.debugSpawnItemAtPlayer(codes...) - }, - ) - if err != nil { - v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnitem", err) + commands := []struct { + name string + desc string + args []string + fn func([]string) error + }{ + {"spawnitem", "spawns an item at the local player position", + []string{"code1", "code2", "code3", "code4", "code5"}, v.commandSpawnItem}, + {"spawnitemat", "spawns an item at the x,y coordinates", + []string{"x", "y", "code1", "code2", "code3", "code4", "code5"}, v.commandSpawnItemAt}, + {"spawnmon", "spawn monster at the local player position", []string{"name"}, v.commandSpawnMon}, } - err = v.terminal.BindAction( - "spawnitemat", - "spawns an item at the x,y coordinates", - func(x, y int, code1, code2, code3, code4, code5 string) { - codes := []string{code1, code2, code3, code4, code5} - v.debugSpawnItemAtLocation(x, y, codes...) - }, - ) - if err != nil { - v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnitemat", err) + for _, cmd := range commands { + if err := v.terminal.Bind(cmd.name, cmd.desc, cmd.args, cmd.fn); err != nil { + v.Errorf(err.Error()) + } } - err = v.terminal.BindAction( - "spawnmon", - "spawn monster at the local player position", - func(name string) { - x := int(v.localPlayer.Position.X()) - y := int(v.localPlayer.Position.Y()) - monstat := v.asset.Records.Monster.Stats[name] - if monstat == nil { - v.terminal.OutputErrorf("no monstat entry for \"%s\"", name) - return - } - - monster, npcErr := v.gameClient.MapEngine.NewNPC(x, y, monstat, 0) - if npcErr != nil { - v.terminal.OutputErrorf("error generating monster \"%s\": %v", name, npcErr) - return - } - - v.gameClient.MapEngine.AddEntity(monster) - }, - ) - if err != nil { - v.Errorf("failed to bind the '%s' action, err: %v\n", "spawnmon", err) + if err := v.asset.BindTerminalCommands(v.terminal); err != nil { + v.Errorf(err.Error()) } } // OnUnload releases the resources of Gameplay screen func (v *Game) OnUnload() error { + if err := v.gameControls.UnbindTerminalCommands(v.terminal); err != nil { + return err + } + // https://github.com/OpenDiablo2/OpenDiablo2/issues/792 if err := v.inputManager.UnbindHandler(v.gameControls); err != nil { return err @@ -192,11 +171,7 @@ func (v *Game) OnUnload() error { return err } - if err := v.terminal.UnbindAction("spawnItemAt"); err != nil { - return err - } - - if err := v.terminal.UnbindAction("spawnItem"); err != nil { + if err := v.terminal.Unbind("spawnitemat", "spawnitem", "spawnmon"); err != nil { return err } @@ -208,6 +183,18 @@ func (v *Game) OnUnload() error { return err } + if err := v.asset.UnbindTerminalCommands(v.terminal); err != nil { + return err + } + + if err := v.mapRenderer.UnbindTerminalCommands(v.terminal); err != nil { + return err + } + + if err := v.soundEngine.UnbindTerminalCommands(v.terminal); err != nil { + return err + } + v.soundEngine.Reset() return nil @@ -395,3 +382,47 @@ func (v *Game) debugSpawnItemAtLocation(x, y int, codes ...string) { v.Errorf(spawnItemErrStr, x, y, codes) } } + +func (v *Game) commandSpawnItem(args []string) error { + v.debugSpawnItemAtPlayer(args...) + + return nil +} + +func (v *Game) commandSpawnItemAt(args []string) error { + x, err := strconv.Atoi(args[0]) + if err != nil { + return fmt.Errorf("invalid argument") + } + + y, err := strconv.Atoi(args[0]) + if err != nil { + return fmt.Errorf("invalid argument") + } + + v.debugSpawnItemAtLocation(x, y, args[2:]...) + + return nil +} + +func (v *Game) commandSpawnMon(args []string) error { + name := args[0] + x := int(v.localPlayer.Position.X()) + y := int(v.localPlayer.Position.Y()) + + monstat := v.asset.Records.Monster.Stats[name] + if monstat == nil { + v.terminal.Errorf("no monstat entry for \"%s\"", name) + return nil + } + + monster, npcErr := v.gameClient.MapEngine.NewNPC(x, y, monstat, 0) + if npcErr != nil { + v.terminal.Errorf("error generating monster \"%s\": %v", name, npcErr) + return nil + } + + v.gameClient.MapEngine.AddEntity(monster) + + return nil +} diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 01fc1cd3..1839b427 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -2,6 +2,7 @@ package d2player import ( "fmt" + "strconv" "strings" "time" @@ -936,59 +937,137 @@ func (g *GameControls) onClickActionable(item actionableType) { action() } -func (g *GameControls) bindFreeCamCommand(term d2interface.Terminal) error { - return term.BindAction("freecam", "toggle free camera movement", func() { - g.FreeCam = !g.FreeCam - }) +func (g *GameControls) bindTerminalCommands(term d2interface.Terminal) error { + if err := term.Bind("freecam", "toggle free camera movement", nil, g.commandFreeCam); err != nil { + return err + } + + if err := term.Bind("setleftskill", "set skill to fire on left click", []string{"id"}, g.commandSetLeftSkill(term)); err != nil { + return err + } + + if err := term.Bind("setrightskill", "set skill to fire on right click", []string{"id"}, g.commandSetRightSkill(term)); err != nil { + return err + } + + if err := term.Bind("learnskills", "learn all skills for the a given class", []string{"token"}, g.commandLearnSkills(term)); err != nil { + return err + } + + if err := term.Bind("learnskillid", "learn a skill by a given ID", []string{"id"}, g.commandLearnSkillID(term)); err != nil { + return err + } + + return nil } -func (g *GameControls) bindSetLeftSkillCommand(term d2interface.Terminal) error { - setLeftSkill := func(id int) { +// UnbindTerminalCommands unbinds commands from the terminal +func (g *GameControls) UnbindTerminalCommands(term d2interface.Terminal) error { + return term.Unbind("freecam", "setleftskill", "setrightskill", "learnskills", "learnskillid") +} + +func (g *GameControls) setAddButtons() { + g.hud.addStatsButton.SetEnabled(g.hero.Stats.StatsPoints > 0) + g.hud.addSkillButton.SetEnabled(g.hero.Stats.SkillPoints > 0) +} + +func (g *GameControls) loadAddButtons() { + g.hud.addStatsButton.OnActivated(func() { g.toggleHeroStatsPanel() }) + g.hud.addSkillButton.OnActivated(func() { g.toggleSkilltreePanel() }) +} + +func (g *GameControls) commandFreeCam([]string) error { + g.FreeCam = !g.FreeCam + + return nil +} + +func (g *GameControls) commandSetLeftSkill(term d2interface.Terminal) func(args []string) error { + return func(args []string) error { + id, err := strconv.Atoi(args[0]) + if err != nil { + term.Errorf("invalid argument") + return nil + } + skillRecord := g.asset.Records.Skill.Details[id] skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) if err != nil { - term.OutputErrorf("cannot create skill with ID of %d, error: %s", id, err) - return + term.Errorf("cannot create skill with ID of %d, error: %s", id, err) + return nil } g.hero.LeftSkill = skill - } - return term.BindAction( - "setleftskill", - "set skill to fire on left click", - setLeftSkill, - ) + return nil + } } -func (g *GameControls) bindSetRightSkillCommand(term d2interface.Terminal) error { - setRightSkill := func(id int) { +func (g *GameControls) commandSetRightSkill(term d2interface.Terminal) func(args []string) error { + return func(args []string) error { + id, err := strconv.Atoi(args[0]) + if err != nil { + term.Errorf("invalid argument") + return nil + } + skillRecord := g.asset.Records.Skill.Details[id] skill, err := g.heroState.CreateHeroSkill(0, skillRecord.Skill) if err != nil { - term.OutputErrorf("cannot create skill with ID of %d, error: %s", id, err) - return + term.Errorf("cannot create skill with ID of %d, error: %s", id, err) + return nil } g.hero.RightSkill = skill - } - return term.BindAction( - "setrightskill", - "set skill to fire on right click", - setRightSkill, - ) + return nil + } } -const classTokenLength = 3 +func (g *GameControls) commandLearnSkillID(term d2interface.Terminal) func(args []string) error { + return func(args []string) error { + id, err := strconv.Atoi(args[0]) + if err != nil { + term.Errorf("invalid argument") + return nil + } -func (g *GameControls) bindLearnSkillsCommand(term d2interface.Terminal) error { - learnSkills := func(token string) { + skillRecord := g.asset.Records.Skill.Details[id] + if skillRecord == nil { + term.Errorf("cannot find a skill record for ID: %d", id) + return nil + } + + skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) + if skill == nil { + term.Errorf("cannot create skill: %s", skillRecord.Skill) + return nil + } + + g.hero.Skills[skill.ID] = skill + + if err != nil { + term.Errorf("cannot learn skill for class, error: %s", err) + return nil + } + + g.hud.skillSelectMenu.RegenerateImageCache() + g.Infof("Learned skill: " + skill.Skill) + + return nil + } +} + +func (g *GameControls) commandLearnSkills(term d2interface.Terminal) func(args []string) error { + const classTokenLength = 3 + + return func(args []string) error { + token := args[0] if len(token) < classTokenLength { - term.OutputErrorf("The given class token should be at least 3 characters") - return + term.Errorf("The given class token should be at least 3 characters") + return nil } validPrefixes := []string{"ama", "ass", "nec", "bar", "sor", "dru", "pal"} @@ -1004,9 +1083,9 @@ func (g *GameControls) bindLearnSkillsCommand(term d2interface.Terminal) error { if !isValidToken { fmtInvalid := "Invalid class, must be a value starting with(case insensitive): %s" - term.OutputErrorf(fmtInvalid, strings.Join(validPrefixes, ", ")) + term.Errorf(fmtInvalid, strings.Join(validPrefixes, ", ")) - return + return nil } var err error @@ -1042,80 +1121,10 @@ func (g *GameControls) bindLearnSkillsCommand(term d2interface.Terminal) error { g.Infof("Learned %d skills", learnedSkillsCount) if err != nil { - term.OutputErrorf("cannot learn skill for class, error: %s", err) - return - } - } - - return term.BindAction( - "learnskills", - "learn all skills for the a given class", - learnSkills, - ) -} - -func (g *GameControls) bindLearnSkillByIDCommand(term d2interface.Terminal) error { - learnByID := func(id int) { - skillRecord := g.asset.Records.Skill.Details[id] - if skillRecord == nil { - term.OutputErrorf("cannot find a skill record for ID: %d", id) - return + term.Errorf("cannot learn skill for class, error: %s", err) + return nil } - skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) - if skill == nil { - term.OutputErrorf("cannot create skill: %s", skillRecord.Skill) - return - } - - g.hero.Skills[skill.ID] = skill - - if err != nil { - term.OutputErrorf("cannot learn skill for class, error: %s", err) - return - } - - g.hud.skillSelectMenu.RegenerateImageCache() - g.Info("Learned skill: " + skill.Skill) + return nil } - - return term.BindAction( - "learnskillid", - "learn a skill by a given ID", - learnByID, - ) -} - -func (g *GameControls) bindTerminalCommands(term d2interface.Terminal) error { - if err := g.bindFreeCamCommand(term); err != nil { - return err - } - - if err := g.bindSetLeftSkillCommand(term); err != nil { - return err - } - - if err := g.bindSetRightSkillCommand(term); err != nil { - return err - } - - if err := g.bindLearnSkillsCommand(term); err != nil { - return err - } - - if err := g.bindLearnSkillByIDCommand(term); err != nil { - return err - } - - return nil -} - -func (g *GameControls) setAddButtons() { - g.hud.addStatsButton.SetEnabled(g.hero.Stats.StatsPoints > 0) - g.hud.addSkillButton.SetEnabled(g.hero.Stats.SkillPoints > 0) -} - -func (g *GameControls) loadAddButtons() { - g.hud.addStatsButton.OnActivated(func() { g.toggleHeroStatsPanel() }) - g.hud.addSkillButton.OnActivated(func() { g.toggleSkilltreePanel() }) } From 74a006c252b8daef115044c836f788b12a2e23f3 Mon Sep 17 00:00:00 2001 From: Intyre Date: Mon, 21 Dec 2020 22:00:07 +0100 Subject: [PATCH 40/70] A wild } appeared --- d2core/d2term/terminal.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/d2core/d2term/terminal.go b/d2core/d2term/terminal.go index 4e30e478..465905a0 100644 --- a/d2core/d2term/terminal.go +++ b/d2core/d2term/terminal.go @@ -57,8 +57,6 @@ type commandEntry struct { fn func([]string) error } -} - // Terminal handles the in-game terminal type Terminal struct { outputHistory []historyEntry From 570ec238ff248afc8259ff5bebe65d2821a7f7a6 Mon Sep 17 00:00:00 2001 From: Intyre Date: Mon, 21 Dec 2020 22:22:27 +0100 Subject: [PATCH 41/70] Fixed linter issues --- d2core/d2term/terminal_test.go | 19 +++++++++++--- d2game/d2player/game_controls.go | 44 +++++++++++++++----------------- 2 files changed, 36 insertions(+), 27 deletions(-) diff --git a/d2core/d2term/terminal_test.go b/d2core/d2term/terminal_test.go index 13b46778..a2332f01 100644 --- a/d2core/d2term/terminal_test.go +++ b/d2core/d2term/terminal_test.go @@ -18,8 +18,13 @@ func TestTerminal(t *testing.T) { t.Fatalf("got %d expected %d", lenOutput, expected1) } - term.Execute("clear") - term.Execute("ls") + if err := term.Execute("clear"); err != nil { + t.Fatal(err) + } + + if err := term.Execute("ls"); err != nil { + t.Fatal(err) + } lenOutput = len(term.outputHistory) @@ -58,9 +63,15 @@ func TestUnbind(t *testing.T) { t.Fatal(err) } - term.Unbind("clear") + if err := term.Unbind("clear"); err != nil { + t.Fatal(err) + } + term.Clear() - term.Execute("ls") + + if err := term.Execute("ls"); err != nil { + t.Fatal(err) + } lenOutput := len(term.outputHistory) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 1839b427..5c2216d7 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -990,11 +990,9 @@ func (g *GameControls) commandSetLeftSkill(term d2interface.Terminal) func(args return nil } - skillRecord := g.asset.Records.Skill.Details[id] - skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) - + skill, err := g.heroSkillByID(id) if err != nil { - term.Errorf("cannot create skill with ID of %d, error: %s", id, err) + term.Errorf(err.Error()) return nil } @@ -1012,11 +1010,9 @@ func (g *GameControls) commandSetRightSkill(term d2interface.Terminal) func(args return nil } - skillRecord := g.asset.Records.Skill.Details[id] - skill, err := g.heroState.CreateHeroSkill(0, skillRecord.Skill) - + skill, err := g.heroSkillByID(id) if err != nil { - term.Errorf("cannot create skill with ID of %d, error: %s", id, err) + term.Errorf(err.Error()) return nil } @@ -1034,25 +1030,13 @@ func (g *GameControls) commandLearnSkillID(term d2interface.Terminal) func(args return nil } - skillRecord := g.asset.Records.Skill.Details[id] - if skillRecord == nil { - term.Errorf("cannot find a skill record for ID: %d", id) - return nil - } - - skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) - if skill == nil { - term.Errorf("cannot create skill: %s", skillRecord.Skill) + skill, err := g.heroSkillByID(id) + if err != nil { + term.Errorf(err.Error()) return nil } g.hero.Skills[skill.ID] = skill - - if err != nil { - term.Errorf("cannot learn skill for class, error: %s", err) - return nil - } - g.hud.skillSelectMenu.RegenerateImageCache() g.Infof("Learned skill: " + skill.Skill) @@ -1060,6 +1044,20 @@ func (g *GameControls) commandLearnSkillID(term d2interface.Terminal) func(args } } +func (g *GameControls) heroSkillByID(id int) (*d2hero.HeroSkill, error) { + skillRecord := g.asset.Records.Skill.Details[id] + if skillRecord == nil { + return nil, fmt.Errorf("cannot find a skill record for ID: %d", id) + } + + skill, err := g.heroState.CreateHeroSkill(1, skillRecord.Skill) + if err != nil { + return nil, fmt.Errorf("cannot create skill with ID of %d", id) + } + + return skill, nil +} + func (g *GameControls) commandLearnSkills(term d2interface.Terminal) func(args []string) error { const classTokenLength = 3 From bc17f2c4229b219eed67b02b110e6b4e736ec662 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 22 Dec 2020 10:45:30 +0100 Subject: [PATCH 42/70] ckecked value of italian modifier --- d2common/d2resource/languages_map.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/d2common/d2resource/languages_map.go b/d2common/d2resource/languages_map.go index 44045a17..70a2552f 100644 --- a/d2common/d2resource/languages_map.go +++ b/d2common/d2resource/languages_map.go @@ -70,7 +70,7 @@ func GetLabelModifier(language string) int { "DEU": 0, // (German) // checked "FRA": 0, // (French) "POR": 0, // (Portuguese) - "ITA": 0, // (Italian) + "ITA": 0, // (Italian) // checked "JPN": 0, // (Japanese) "KOR": 0, // (Korean) "SIN": 0, // From 8700d63f6764bbe2ff352d5788316e2fc30266ee Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 22 Dec 2020 14:21:34 +0100 Subject: [PATCH 43/70] game-controls refactor --- d2game/d2player/game_controls.go | 171 ++++++++++++------------------- 1 file changed, 65 insertions(+), 106 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 335c33c0..7048429e 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -28,7 +28,6 @@ const ( // Panel represents the panel at the bottom of the game screen type Panel interface { IsOpen() bool - Toggle() Open() Close() } @@ -275,7 +274,7 @@ func NewGameControls( hoverLabel.SetBackgroundColor(d2util.Color(blackAlpha50percent)) gc.heroStatsPanel.SetOnCloseCb(gc.onCloseHeroStatsPanel) - gc.questLog.SetOnCloseCb(gc.onCloseQuestLog) + gc.questLog.SetOnCloseCb(gc.onCloseHeroQuestLog) gc.inventory.SetOnCloseCb(gc.onCloseInventory) gc.skilltree.SetOnCloseCb(gc.onCloseSkilltree) @@ -392,11 +391,7 @@ func (g *GameControls) OnKeyDown(event d2interface.KeyEvent) bool { switch gameEvent { case d2enum.ClearScreen: - g.inventory.Close() - g.skilltree.Close() - g.heroStatsPanel.Close() - g.questLog.Close() - g.HelpOverlay.Close() + g.clearScreen() g.updateLayout() case d2enum.ToggleInventoryPanel: g.toggleInventoryPanel() @@ -440,47 +435,8 @@ func (g *GameControls) OnKeyUp(event d2interface.KeyEvent) bool { func (g *GameControls) onEscKey() { escHandled := false - if g.hud.skillSelectMenu.IsOpen() { - g.hud.skillSelectMenu.ClosePanels() - - escHandled = true - } - - if g.inventory.IsOpen() { - if g.inventory.moveGoldPanel.IsOpen() { - g.inventory.moveGoldPanel.Close() - - return - } - - g.inventory.Close() - - escHandled = true - } - - if g.skilltree.IsOpen() { - g.skilltree.Close() - - escHandled = true - } - - if g.heroStatsPanel.IsOpen() { - g.heroStatsPanel.Close() - - escHandled = true - } - - if g.questLog.IsOpen() { - g.questLog.Close() - - escHandled = true - } - - if g.HelpOverlay.IsOpen() { - g.HelpOverlay.Close() - - escHandled = true - } + escHandled = g.hasOpenPanels() || g.HelpOverlay.IsOpen() || g.hud.skillSelectMenu.IsOpen() + g.clearScreen() switch escHandled { case true: @@ -632,63 +588,88 @@ func (g *GameControls) OnMouseButtonDown(event d2interface.MouseEvent) bool { return false } -func (g *GameControls) toggleHeroStatsPanel() { +func (g *GameControls) clearLeftScreenSide() { + g.heroStatsPanel.Close() + g.questLog.Close() + g.hud.skillSelectMenu.ClosePanels() + g.hud.miniPanel.SetMovedRight(false) + g.updateLayout() +} + +func (g *GameControls) clearRightScreenSide() { + g.inventory.Close() + g.skilltree.Close() + g.hud.skillSelectMenu.ClosePanels() + g.hud.miniPanel.SetMovedLeft(false) + g.updateLayout() +} + +func (g *GameControls) hasOpenPanels() bool { + return g.isRightPanelOpen() || g.isLeftPanelOpen() || g.hud.skillSelectMenu.IsOpen() +} + +func (g *GameControls) clearScreen() { + g.clearRightScreenSide() + g.clearLeftScreenSide() + g.hud.skillSelectMenu.ClosePanels() + g.HelpOverlay.Close() +} + +func (g *GameControls) openLeftPanel(panel Panel) { if !g.HelpOverlay.IsOpen() { - g.hud.skillSelectMenu.LeftPanel.Close() - g.hud.skillSelectMenu.RightPanel.Close() - g.questLog.Close() - g.heroStatsPanel.Toggle() - g.hud.miniPanel.SetMovedRight(g.heroStatsPanel.IsOpen()) - g.updateLayout() + isOpen := panel.IsOpen() + fmt.Println(isOpen) + g.clearLeftScreenSide() + if !isOpen { + panel.Open() + g.hud.miniPanel.SetMovedRight(true) + g.updateLayout() + } } } +func (g *GameControls) openRightPanel(panel Panel) { + if !g.HelpOverlay.IsOpen() { + isOpen := panel.IsOpen() + fmt.Println(isOpen) + g.clearRightScreenSide() + if !isOpen { + panel.Open() + g.hud.miniPanel.SetMovedLeft(true) + g.updateLayout() + } + } +} + +func (g *GameControls) toggleHeroStatsPanel() { + g.openLeftPanel(g.heroStatsPanel) +} + func (g *GameControls) onCloseHeroStatsPanel() { - g.hud.miniPanel.SetMovedRight(g.heroStatsPanel.IsOpen()) - g.updateLayout() } func (g *GameControls) toggleLeftSkillPanel() { if !g.HelpOverlay.IsOpen() { - g.inventory.Close() - g.skilltree.Close() - g.questLog.Close() - g.heroStatsPanel.Close() + g.clearScreen() g.hud.skillSelectMenu.ToggleLeftPanel() } } func (g *GameControls) toggleRightSkillPanel() { if !g.HelpOverlay.IsOpen() { - g.inventory.Close() - g.skilltree.Close() - g.questLog.Close() - g.heroStatsPanel.Close() + g.clearScreen() g.hud.skillSelectMenu.ToggleRightPanel() } } func (g *GameControls) toggleQuestLog() { - if !g.HelpOverlay.IsOpen() { - g.heroStatsPanel.Close() - g.hud.skillSelectMenu.LeftPanel.Close() - g.hud.skillSelectMenu.RightPanel.Close() - g.questLog.Toggle() - g.hud.miniPanel.SetMovedRight(g.questLog.IsOpen()) - g.updateLayout() - } -} - -func (g *GameControls) onCloseQuestLog() { - g.hud.miniPanel.SetMovedRight(g.questLog.IsOpen()) - g.updateLayout() + g.openLeftPanel(g.questLog) } func (g *GameControls) toggleHelpOverlay() { - if !g.inventory.IsOpen() && !g.skilltree.IsOpen() && !g.heroStatsPanel.IsOpen() && !g.questLog.IsOpen() { + if !g.isRightPanelOpen() || g.isLeftPanelOpen() { g.HelpOverlay.updateKeyMap(g.keyMap) - g.hud.skillSelectMenu.LeftPanel.Close() - g.hud.skillSelectMenu.RightPanel.Close() + g.hud.skillSelectMenu.ClosePanels() g.hud.miniPanel.openDisabled() g.HelpOverlay.Toggle() g.updateLayout() @@ -696,42 +677,21 @@ func (g *GameControls) toggleHelpOverlay() { } func (g *GameControls) toggleInventoryPanel() { - if !g.HelpOverlay.IsOpen() { - g.hud.skillSelectMenu.LeftPanel.Close() - g.hud.skillSelectMenu.RightPanel.Close() - g.skilltree.Close() - g.inventory.Toggle() - g.hud.miniPanel.SetMovedLeft(g.inventory.IsOpen()) - g.updateLayout() - } + g.openRightPanel(g.inventory) } func (g *GameControls) onCloseInventory() { - g.hud.miniPanel.SetMovedLeft(g.inventory.IsOpen()) - g.updateLayout() } func (g *GameControls) toggleSkilltreePanel() { - if !g.HelpOverlay.IsOpen() { - g.inventory.Close() - g.hud.skillSelectMenu.LeftPanel.Close() - g.hud.skillSelectMenu.RightPanel.Close() - g.skilltree.Toggle() - g.hud.miniPanel.SetMovedLeft(g.skilltree.IsOpen()) - g.updateLayout() - } + g.openRightPanel(g.skilltree) } func (g *GameControls) onCloseSkilltree() { - g.hud.miniPanel.SetMovedLeft(g.skilltree.IsOpen()) - g.updateLayout() } func (g *GameControls) openEscMenu() { - g.inventory.Close() - g.skilltree.Close() - g.heroStatsPanel.Close() - g.questLog.Close() + g.clearScreen() g.hud.miniPanel.closeDisabled() g.escapeMenu.open() g.updateLayout() @@ -792,7 +752,6 @@ func (g *GameControls) updateLayout() { } func (g *GameControls) isLeftPanelOpen() bool { - // https://github.com/OpenDiablo2/OpenDiablo2/issues/801 return g.heroStatsPanel.IsOpen() || g.questLog.IsOpen() || g.inventory.moveGoldPanel.IsOpen() } From 3a5175f0348b0f7190187f21901a167b9418a83d Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 22 Dec 2020 14:28:29 +0100 Subject: [PATCH 44/70] fixed build and lint errors --- d2game/d2player/game_controls.go | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 7048429e..27716811 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -274,7 +274,7 @@ func NewGameControls( hoverLabel.SetBackgroundColor(d2util.Color(blackAlpha50percent)) gc.heroStatsPanel.SetOnCloseCb(gc.onCloseHeroStatsPanel) - gc.questLog.SetOnCloseCb(gc.onCloseHeroQuestLog) + gc.questLog.SetOnCloseCb(gc.onCloseQuestLog) gc.inventory.SetOnCloseCb(gc.onCloseInventory) gc.skilltree.SetOnCloseCb(gc.onCloseSkilltree) @@ -604,10 +604,6 @@ func (g *GameControls) clearRightScreenSide() { g.updateLayout() } -func (g *GameControls) hasOpenPanels() bool { - return g.isRightPanelOpen() || g.isLeftPanelOpen() || g.hud.skillSelectMenu.IsOpen() -} - func (g *GameControls) clearScreen() { g.clearRightScreenSide() g.clearLeftScreenSide() @@ -618,8 +614,9 @@ func (g *GameControls) clearScreen() { func (g *GameControls) openLeftPanel(panel Panel) { if !g.HelpOverlay.IsOpen() { isOpen := panel.IsOpen() - fmt.Println(isOpen) + g.clearLeftScreenSide() + if !isOpen { panel.Open() g.hud.miniPanel.SetMovedRight(true) @@ -631,8 +628,9 @@ func (g *GameControls) openLeftPanel(panel Panel) { func (g *GameControls) openRightPanel(panel Panel) { if !g.HelpOverlay.IsOpen() { isOpen := panel.IsOpen() - fmt.Println(isOpen) + g.clearRightScreenSide() + if !isOpen { panel.Open() g.hud.miniPanel.SetMovedLeft(true) @@ -666,6 +664,9 @@ func (g *GameControls) toggleQuestLog() { g.openLeftPanel(g.questLog) } +func (g *GameControls) onCloseQuestLog() { +} + func (g *GameControls) toggleHelpOverlay() { if !g.isRightPanelOpen() || g.isLeftPanelOpen() { g.HelpOverlay.updateKeyMap(g.keyMap) @@ -759,6 +760,10 @@ func (g *GameControls) isRightPanelOpen() bool { return g.inventory.IsOpen() || g.skilltree.IsOpen() } +func (g *GameControls) hasOpenPanels() bool { + return g.isRightPanelOpen() || g.isLeftPanelOpen() || g.hud.skillSelectMenu.IsOpen() +} + func (g *GameControls) isInActiveMenusRect(px, py int) bool { if g.bottomMenuRect.IsInRect(px, py) { return true From 0e2ca7d8513d0365cda73db72073ea5167e3b091 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 22 Dec 2020 14:59:15 +0100 Subject: [PATCH 45/70] removed unnecessary switch-case statments from onKeyUp and onEscKey --- d2game/d2player/game_controls.go | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 27716811..9b278869 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -418,11 +418,8 @@ func (g *GameControls) OnKeyDown(event d2interface.KeyEvent) bool { func (g *GameControls) OnKeyUp(event d2interface.KeyEvent) bool { gameEvent := g.keyMap.getGameEvent(event.Key()) - switch gameEvent { - case d2enum.HoldRun: + if gameEvent == d2enum.HoldRun { g.hud.onToggleRunButton(true) - default: - return false } return false @@ -438,15 +435,15 @@ func (g *GameControls) onEscKey() { escHandled = g.hasOpenPanels() || g.HelpOverlay.IsOpen() || g.hud.skillSelectMenu.IsOpen() g.clearScreen() - switch escHandled { - case true: + if escHandled { g.updateLayout() - case false: - if g.escapeMenu.IsOpen() { - g.escapeMenu.OnEscKey() - } else { - g.openEscMenu() - } + return + } + + if g.escapeMenu.IsOpen() { + g.escapeMenu.OnEscKey() + } else { + g.openEscMenu() } } @@ -747,7 +744,7 @@ func (g *GameControls) updateLayout() { g.mapRenderer.ViewportDefault() case isRightPanelOpen: g.mapRenderer.ViewportToLeft() - default: + case isLeftPanelOpen: g.mapRenderer.ViewportToRight() } } From e6dd0bc35d69d305b90bc954cd09d60920692dc2 Mon Sep 17 00:00:00 2001 From: "M. Sz" Date: Tue, 22 Dec 2020 15:18:14 +0100 Subject: [PATCH 46/70] fixed bug with terminal's logLevel --- d2core/d2term/terminal_logger.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/d2core/d2term/terminal_logger.go b/d2core/d2term/terminal_logger.go index 1bfbda22..5e0dbb08 100644 --- a/d2core/d2term/terminal_logger.go +++ b/d2core/d2term/terminal_logger.go @@ -33,7 +33,7 @@ func (tl *terminalLogger) Write(p []byte) (int, error) { case strings.Index(lineLower, "error") > 0: tl.terminal.Errorf(line) case strings.Index(lineLower, "warning") > 0: - tl.terminal.Errorf(line) + tl.terminal.Warningf(line) default: tl.terminal.Printf(line) } From b78dca52c2ad010857df1ff30331552630fe2912 Mon Sep 17 00:00:00 2001 From: Intyre Date: Wed, 23 Dec 2020 10:39:58 +0100 Subject: [PATCH 47/70] Refactor StreamWriter --- d2common/d2datautils/stream_writer.go | 65 ++++++++++++++------------- 1 file changed, 34 insertions(+), 31 deletions(-) diff --git a/d2common/d2datautils/stream_writer.go b/d2common/d2datautils/stream_writer.go index 10870a73..849cbdb2 100644 --- a/d2common/d2datautils/stream_writer.go +++ b/d2common/d2datautils/stream_writer.go @@ -2,10 +2,6 @@ package d2datautils import "bytes" -const ( - byteMask = 0xFF -) - // StreamWriter allows you to create a byte array by streaming in writes of various sizes type StreamWriter struct { data *bytes.Buffer @@ -20,41 +16,40 @@ func CreateStreamWriter() *StreamWriter { return result } +// GetBytes returns the the byte slice of the underlying data +func (v *StreamWriter) GetBytes() []byte { + return v.data.Bytes() +} + // PushByte writes a byte to the stream func (v *StreamWriter) PushByte(val byte) { v.data.WriteByte(val) } -// PushUint16 writes an uint16 word to the stream -func (v *StreamWriter) PushUint16(val uint16) { - for count := 0; count < bytesPerInt16; count++ { - shift := count * bitsPerByte - v.data.WriteByte(byte(val>>shift) & byteMask) - } -} - // PushInt16 writes a int16 word to the stream func (v *StreamWriter) PushInt16(val int16) { - for count := 0; count < bytesPerInt16; count++ { - shift := count * bitsPerByte - v.data.WriteByte(byte(val>>shift) & byteMask) - } + v.PushUint16(uint16(val)) +} + +// PushUint16 writes an uint16 word to the stream +//nolint +func (v *StreamWriter) PushUint16(val uint16) { + v.data.WriteByte(byte(val)) + v.data.WriteByte(byte(val >> 8)) +} + +// PushInt32 writes a int32 dword to the stream +func (v *StreamWriter) PushInt32(val int32) { + v.PushUint32(uint32(val)) } // PushUint32 writes a uint32 dword to the stream +//nolint func (v *StreamWriter) PushUint32(val uint32) { - for count := 0; count < bytesPerInt32; count++ { - shift := count * bitsPerByte - v.data.WriteByte(byte(val>>shift) & byteMask) - } -} - -// PushUint64 writes a uint64 qword to the stream -func (v *StreamWriter) PushUint64(val uint64) { - for count := 0; count < bytesPerInt64; count++ { - shift := count * bitsPerByte - v.data.WriteByte(byte(val>>shift) & byteMask) - } + v.data.WriteByte(byte(val)) + v.data.WriteByte(byte(val >> 8)) + v.data.WriteByte(byte(val >> 16)) + v.data.WriteByte(byte(val >> 24)) } // PushInt64 writes a uint64 qword to the stream @@ -62,7 +57,15 @@ func (v *StreamWriter) PushInt64(val int64) { v.PushUint64(uint64(val)) } -// GetBytes returns the the byte slice of the underlying data -func (v *StreamWriter) GetBytes() []byte { - return v.data.Bytes() +// PushUint64 writes a uint64 qword to the stream +//nolint +func (v *StreamWriter) PushUint64(val uint64) { + v.data.WriteByte(byte(val)) + v.data.WriteByte(byte(val >> 8)) + v.data.WriteByte(byte(val >> 16)) + v.data.WriteByte(byte(val >> 24)) + v.data.WriteByte(byte(val >> 32)) + v.data.WriteByte(byte(val >> 40)) + v.data.WriteByte(byte(val >> 48)) + v.data.WriteByte(byte(val >> 56)) } From 1e91df996cd6cb111431a1b53329d9e54fe32857 Mon Sep 17 00:00:00 2001 From: Intyre Date: Wed, 23 Dec 2020 10:40:13 +0100 Subject: [PATCH 48/70] Refactor StreamReader --- d2common/d2datautils/stream_reader.go | 120 ++++++++------------------ 1 file changed, 38 insertions(+), 82 deletions(-) diff --git a/d2common/d2datautils/stream_reader.go b/d2common/d2datautils/stream_reader.go index c66d8212..31e06c96 100644 --- a/d2common/d2datautils/stream_reader.go +++ b/d2common/d2datautils/stream_reader.go @@ -4,12 +4,6 @@ import ( "io" ) -const ( - bytesPerInt16 = 2 - bytesPerInt32 = 4 - bytesPerInt64 = 8 -) - // StreamReader allows you to read data from a byte array in various formats type StreamReader struct { data []byte @@ -26,16 +20,6 @@ func CreateStreamReader(source []byte) *StreamReader { return result } -// GetPosition returns the current stream position -func (v *StreamReader) GetPosition() uint64 { - return v.position -} - -// GetSize returns the total size of the stream in bytes -func (v *StreamReader) GetSize() uint64 { - return uint64(len(v.data)) -} - // GetByte returns a byte from the stream func (v *StreamReader) GetByte() byte { result := v.data[v.position] @@ -44,32 +28,46 @@ func (v *StreamReader) GetByte() byte { return result } -// GetUInt16 returns a uint16 word from the stream -func (v *StreamReader) GetUInt16() uint16 { - var result uint16 - - for offset := uint64(0); offset < bytesPerInt16; offset++ { - shift := uint8(bitsPerByte * offset) - result += uint16(v.data[v.position+offset]) << shift - } - - v.position += bytesPerInt16 - - return result -} - // GetInt16 returns a int16 word from the stream func (v *StreamReader) GetInt16() int16 { - var result int16 + return int16(v.GetUInt16()) +} - for offset := uint64(0); offset < bytesPerInt16; offset++ { - shift := uint8(bitsPerByte * offset) - result += int16(v.data[v.position+offset]) << shift - } +// GetUInt16 returns a uint16 word from the stream +//nolint +func (v *StreamReader) GetUInt16() uint16 { + b := v.ReadBytes(2) + return uint16(b[0]) | uint16(b[1])<<8 +} - v.position += bytesPerInt16 +// GetInt32 returns an int32 dword from the stream +func (v *StreamReader) GetInt32() int32 { + return int32(v.GetUInt32()) +} - return result +// GetUInt32 returns a uint32 dword from the stream +//nolint +func (v *StreamReader) GetUInt32() uint32 { + b := v.ReadBytes(4) + return uint32(b[0]) | uint32(b[1])<<8 | uint32(b[2])<<16 | uint32(b[3])<<24 +} + +// GetInt64 returns a uint64 qword from the stream +func (v *StreamReader) GetInt64() int64 { + return int64(v.GetUInt64()) +} + +// GetUInt64 returns a uint64 qword from the stream +//nolint +func (v *StreamReader) GetUInt64() uint64 { + b := v.ReadBytes(8) + return uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 | + uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56 +} + +// GetPosition returns the current stream position +func (v *StreamReader) GetPosition() uint64 { + return v.position } // SetPosition sets the stream position with the given position @@ -77,51 +75,9 @@ func (v *StreamReader) SetPosition(newPosition uint64) { v.position = newPosition } -// GetUInt32 returns a uint32 dword from the stream -func (v *StreamReader) GetUInt32() uint32 { - var result uint32 - - for offset := uint64(0); offset < bytesPerInt32; offset++ { - shift := uint8(bitsPerByte * offset) - result += uint32(v.data[v.position+offset]) << shift - } - - v.position += bytesPerInt32 - - return result -} - -// GetInt32 returns an int32 dword from the stream -func (v *StreamReader) GetInt32() int32 { - var result int32 - - for offset := uint64(0); offset < bytesPerInt32; offset++ { - shift := uint8(bitsPerByte * offset) - result += int32(v.data[v.position+offset]) << shift - } - - v.position += bytesPerInt32 - - return result -} - -// GetUint64 returns a uint64 qword from the stream -func (v *StreamReader) GetUint64() uint64 { - var result uint64 - - for offset := uint64(0); offset < bytesPerInt64; offset++ { - shift := uint8(bitsPerByte * offset) - result += uint64(v.data[v.position+offset]) << shift - } - - v.position += bytesPerInt64 - - return result -} - -// GetInt64 returns a uint64 qword from the stream -func (v *StreamReader) GetInt64() int64 { - return int64(v.GetUint64()) +// GetSize returns the total size of the stream in bytes +func (v *StreamReader) GetSize() uint64 { + return uint64(len(v.data)) } // ReadByte implements io.ByteReader From 5f9e06c09c09b89daa2fed2e39226019cccd29fb Mon Sep 17 00:00:00 2001 From: Intyre Date: Wed, 23 Dec 2020 11:02:58 +0100 Subject: [PATCH 49/70] Fixed gocritic linter issues --- d2core/d2gui/box.go | 3 +-- d2core/d2gui/layout_scrollbar.go | 5 +---- d2core/d2map/d2mapentity/factory.go | 2 +- d2game/d2player/globeWidget.go | 2 +- d2networking/d2netpacket/packet_add_player.go | 3 +-- 5 files changed, 5 insertions(+), 10 deletions(-) diff --git a/d2core/d2gui/box.go b/d2core/d2gui/box.go index 446d5e10..63f42394 100644 --- a/d2core/d2gui/box.go +++ b/d2core/d2gui/box.go @@ -74,8 +74,7 @@ func NewBox( renderer d2interface.Renderer, ui *d2ui.UIManager, contentLayout *Layout, - width, height int, - x, y int, + width, height, x, y int, l d2util.LogLevel, title string, ) *Box { diff --git a/d2core/d2gui/layout_scrollbar.go b/d2core/d2gui/layout_scrollbar.go index 151a2a34..38bf2551 100644 --- a/d2core/d2gui/layout_scrollbar.go +++ b/d2core/d2gui/layout_scrollbar.go @@ -64,10 +64,7 @@ const ( ) // NewLayoutScrollbar attaches a scrollbar to the parentLayout to control the targetLayout -func NewLayoutScrollbar( - parentLayout *Layout, - targetLayout *Layout, -) *LayoutScrollbar { +func NewLayoutScrollbar(parentLayout, targetLayout *Layout) *LayoutScrollbar { parentW, parentH := parentLayout.GetSize() _, targetH := targetLayout.GetSize() gutterHeight := parentH - (2 * textSliderPartHeight) diff --git a/d2core/d2map/d2mapentity/factory.go b/d2core/d2map/d2mapentity/factory.go index 2b400b3f..1e24824d 100644 --- a/d2core/d2map/d2mapentity/factory.go +++ b/d2core/d2map/d2mapentity/factory.go @@ -64,7 +64,7 @@ func NewAnimatedEntity(x, y int, animation d2interface.Animation) *AnimatedEntit // NewPlayer creates a new player entity and returns a pointer to it. func (f *MapEntityFactory) NewPlayer(id, name string, x, y, direction int, heroType d2enum.Hero, stats *d2hero.HeroStatsState, skills map[int]*d2hero.HeroSkill, equipment *d2inventory.CharacterEquipment, - leftSkill, rightSkill int, gold int) *Player { + leftSkill, rightSkill, gold int) *Player { layerEquipment := &[d2enum.CompositeTypeMax]string{ d2enum.CompositeTypeHead: equipment.Head.GetArmorClass(), d2enum.CompositeTypeTorso: equipment.Torso.GetArmorClass(), diff --git a/d2game/d2player/globeWidget.go b/d2game/d2player/globeWidget.go index f2bccb84..6a8da540 100644 --- a/d2game/d2player/globeWidget.go +++ b/d2game/d2player/globeWidget.go @@ -68,7 +68,7 @@ func newGlobeWidget(ui *d2ui.UIManager, asset *d2asset.AssetManager, x, y int, gtype globeType, - value *int, valueMax *int, + value, valueMax *int, l d2util.LogLevel) *globeWidget { var globe, overlap *globeFrame diff --git a/d2networking/d2netpacket/packet_add_player.go b/d2networking/d2netpacket/packet_add_player.go index a503a075..795879a6 100644 --- a/d2networking/d2netpacket/packet_add_player.go +++ b/d2networking/d2netpacket/packet_add_player.go @@ -35,8 +35,7 @@ func CreateAddPlayerPacket( stats *d2hero.HeroStatsState, skills map[int]*d2hero.HeroSkill, equipment d2inventory.CharacterEquipment, - leftSkill, rightSkill int, - gold int) (NetPacket, error) { + leftSkill, rightSkill, gold int) (NetPacket, error) { addPlayerPacket := AddPlayerPacket{ ID: id, Name: name, From 9ce9c2f848a808620aec56a874384d5254a92de8 Mon Sep 17 00:00:00 2001 From: Intyre Date: Wed, 23 Dec 2020 21:58:39 +0100 Subject: [PATCH 50/70] Reduce GetTiles slice allocation --- d2core/d2map/d2mapengine/engine.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/d2core/d2map/d2mapengine/engine.go b/d2core/d2map/d2mapengine/engine.go index 4ab2e17f..97ae289d 100644 --- a/d2core/d2map/d2mapengine/engine.go +++ b/d2core/d2map/d2mapengine/engine.go @@ -256,7 +256,7 @@ func (m *MapEngine) RemoveEntity(entity d2interface.MapEntity) { // GetTiles returns a slice of all tiles matching the given style, // sequence and tileType. func (m *MapEngine) GetTiles(style, sequence int, tileType d2enum.TileType) []d2dt1.Tile { - tiles := make([]d2dt1.Tile, 0, len(m.dt1TileData)) + tiles := make([]d2dt1.Tile, 0) for idx := range m.dt1TileData { if m.dt1TileData[idx].Style != int32(style) || m.dt1TileData[idx].Sequence != int32(sequence) || From 3936e01afb6c312835e9f1dc3f31bf0e54f7e410 Mon Sep 17 00:00:00 2001 From: Ian Ling Date: Mon, 28 Dec 2020 13:33:17 -0800 Subject: [PATCH 51/70] Networking bugfixes and cleanup Make sure connections close properly, without weird error messages Remove player map entity when a player disconnects from a multiplayer game Close server properly when host disconnects, handle ServerClose on remote clients Don't mix JSON decoders and raw TCP writes Actually handle incoming packets from remote clients General code cleanup for simplicity and consistency --- .../d2localclient/local_client_connection.go | 7 +- .../remote_client_connection.go | 131 ++++--------- d2networking/d2client/game_client.go | 18 +- d2networking/d2netpacket/packet_ping.go | 12 +- .../d2netpacket/packet_server_closed.go | 2 +- .../tcp_client_connection.go | 7 +- d2networking/d2server/game_server.go | 172 +++++++++--------- 7 files changed, 152 insertions(+), 197 deletions(-) diff --git a/d2networking/d2client/d2localclient/local_client_connection.go b/d2networking/d2client/d2localclient/local_client_connection.go index 391160b7..3923d42b 100644 --- a/d2networking/d2client/d2localclient/local_client_connection.go +++ b/d2networking/d2client/d2localclient/local_client_connection.go @@ -87,19 +87,16 @@ func (l *LocalClientConnection) Open(_, saveFilePath string) error { // Close disconnects from the server and destroys it. func (l *LocalClientConnection) Close() error { - sc, err := d2netpacket.CreateServerClosedPacket() + disconnectRequest, err := d2netpacket.CreatePlayerDisconnectRequestPacket(l.uniqueID) if err != nil { return err } - err = l.SendPacketToServer(sc) + err = l.SendPacketToServer(disconnectRequest) if err != nil { return err } - l.gameServer.OnClientDisconnected(l) - l.gameServer.Stop() - return nil } diff --git a/d2networking/d2client/d2remoteclient/remote_client_connection.go b/d2networking/d2client/d2remoteclient/remote_client_connection.go index 9f47744e..57df11ef 100644 --- a/d2networking/d2client/d2remoteclient/remote_client_connection.go +++ b/d2networking/d2client/d2remoteclient/remote_client_connection.go @@ -3,6 +3,7 @@ package d2remoteclient import ( "encoding/json" "fmt" + "io" "net" "strings" @@ -131,12 +132,10 @@ func (r *RemoteClientConnection) SetClientListener(listener d2networking.ClientL // SendPacketToServer compresses the JSON encoding of a NetPacket and // sends it to the server. func (r *RemoteClientConnection) SendPacketToServer(packet d2netpacket.NetPacket) error { - data, err := json.Marshal(packet) - if err != nil { - return err - } + encoder := json.NewEncoder(r.tcpConnection) - if _, err = r.tcpConnection.Write(data); err != nil { + err := encoder.Encode(packet) + if err != nil { return err } @@ -146,15 +145,21 @@ func (r *RemoteClientConnection) SendPacketToServer(packet d2netpacket.NetPacket // serverListener runs a while loop, reading from the GameServer's TCP // connection. func (r *RemoteClientConnection) serverListener() { - var packet d2netpacket.NetPacket - decoder := json.NewDecoder(r.tcpConnection) for { + var packet d2netpacket.NetPacket + err := decoder.Decode(&packet) if err != nil { - r.Errorf("failed to decode the packet, err: %v\n", err) - return + switch err { + case io.EOF: + break // the other side closed the connection + default: + r.Errorf("failed to decode the packet, err: %v\n", err) + } + + return // allow the connection to close } p, err := r.decodeToPacket(packet.PacketType, string(packet.PacketData)) @@ -186,102 +191,29 @@ func (r *RemoteClientConnection) bytesToJSON(buffer []byte) (string, d2netpacket func (r *RemoteClientConnection) decodeToPacket( t d2netpackettype.NetPacketType, data string) (d2netpacket.NetPacket, error) { - var np = d2netpacket.NetPacket{} - - var err error + var ( + np = d2netpacket.NetPacket{} + err error + p interface{} + ) switch t { case d2netpackettype.GenerateMap: - var p d2netpacket.GenerateMapPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalGenerateMap([]byte(data)) case d2netpackettype.MovePlayer: - var p d2netpacket.MovePlayerPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalMovePlayer([]byte(data)) case d2netpackettype.UpdateServerInfo: - var p d2netpacket.UpdateServerInfoPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalUpdateServerInfo([]byte(data)) case d2netpackettype.AddPlayer: - var p d2netpacket.AddPlayerPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalAddPlayer([]byte(data)) case d2netpackettype.CastSkill: - var p d2netpacket.CastPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalCast([]byte(data)) case d2netpackettype.Ping: - var p d2netpacket.PingPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalPing([]byte(data)) case d2netpackettype.PlayerDisconnectionNotification: - var p d2netpacket.PlayerDisconnectRequestPacket - if err = json.Unmarshal([]byte(data), &p); err != nil { - break - } - - mp, marshalErr := d2netpacket.MarshalPacket(p) - if marshalErr != nil { - r.Errorf("MarshalPacket: %v", marshalErr) - } - - np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} - + p, err = d2netpacket.UnmarshalPlayerDisconnectionRequest([]byte(data)) + case d2netpackettype.ServerClosed: + p, err = d2netpacket.UnmarshalServerClosed([]byte(data)) default: err = fmt.Errorf("RemoteClientConnection: unrecognized packet type: %v", t) } @@ -290,5 +222,12 @@ func (r *RemoteClientConnection) decodeToPacket( return np, err } + mp, marshalErr := d2netpacket.MarshalPacket(p) + if marshalErr != nil { + r.Errorf("MarshalPacket: %v", marshalErr) + } + + np = d2netpacket.NetPacket{PacketType: t, PacketData: mp} + return np, nil } diff --git a/d2networking/d2client/game_client.go b/d2networking/d2client/game_client.go index d3b197aa..0737223d 100644 --- a/d2networking/d2client/game_client.go +++ b/d2networking/d2client/game_client.go @@ -160,8 +160,9 @@ func (g *GameClient) OnPacketReceived(packet d2netpacket.NetPacket) error { g.Errorf("GameClient: error responding to server ping: %s", err) } case d2netpackettype.PlayerDisconnectionNotification: - // Not implemented - g.Infof("RemoteClientConnection: received disconnect: %s", packet.PacketData) + if err := g.handlePlayerDisconnectionPacket(packet); err != nil { + return err + } case d2netpackettype.ServerClosed: // https://github.com/OpenDiablo2/OpenDiablo2/issues/802 g.Infof("Server has been closed") @@ -446,6 +447,19 @@ func (g *GameClient) handlePingPacket() error { return nil } +func (g *GameClient) handlePlayerDisconnectionPacket(packet d2netpacket.NetPacket) error { + disconnectPacket, err := d2netpacket.UnmarshalPlayerDisconnectionRequest(packet.PacketData) + if err != nil { + return err + } + + player := g.Players[disconnectPacket.ID] + g.MapEngine.RemoveEntity(player) + delete(g.Players, disconnectPacket.ID) + + return nil +} + // IsSinglePlayer returns a bool for whether the game is a single-player game func (g *GameClient) IsSinglePlayer() bool { return g.connectionType == d2clientconnectiontype.Local diff --git a/d2networking/d2netpacket/packet_ping.go b/d2networking/d2netpacket/packet_ping.go index edad91f0..5ce7b61a 100644 --- a/d2networking/d2netpacket/packet_ping.go +++ b/d2networking/d2netpacket/packet_ping.go @@ -1,4 +1,4 @@ -package d2netpacket +package d2netpacket //nolint:dupl // ServerClosed and Ping just happen to be very similar packets import ( "encoding/json" @@ -30,3 +30,13 @@ func CreatePingPacket() (NetPacket, error) { PacketData: b, }, nil } + +// UnmarshalPing unmarshals the given data to a PingPacket struct +func UnmarshalPing(packet []byte) (PingPacket, error) { + var p PingPacket + if err := json.Unmarshal(packet, &p); err != nil { + return p, err + } + + return p, nil +} diff --git a/d2networking/d2netpacket/packet_server_closed.go b/d2networking/d2netpacket/packet_server_closed.go index eb7fcb19..79c05833 100644 --- a/d2networking/d2netpacket/packet_server_closed.go +++ b/d2networking/d2netpacket/packet_server_closed.go @@ -1,4 +1,4 @@ -package d2netpacket +package d2netpacket //nolint:dupl // ServerClosed and Ping just happen to be very similar packets import ( "encoding/json" diff --git a/d2networking/d2server/d2tcpclientconnection/tcp_client_connection.go b/d2networking/d2server/d2tcpclientconnection/tcp_client_connection.go index 36bf953c..7a457feb 100644 --- a/d2networking/d2server/d2tcpclientconnection/tcp_client_connection.go +++ b/d2networking/d2server/d2tcpclientconnection/tcp_client_connection.go @@ -33,12 +33,9 @@ func (t TCPClientConnection) GetUniqueID() string { // SendPacketToClient marshals and sends (writes) NetPackets func (t *TCPClientConnection) SendPacketToClient(p d2netpacket.NetPacket) error { - packet, err := json.Marshal(p) - if err != nil { - return err - } + encoder := json.NewEncoder(t.tcpConnection) - _, err = t.tcpConnection.Write(packet) + err := encoder.Encode(p) if err != nil { return err } diff --git a/d2networking/d2server/game_server.go b/d2networking/d2server/game_server.go index de20b456..8e349281 100644 --- a/d2networking/d2server/game_server.go +++ b/d2networking/d2server/game_server.go @@ -4,6 +4,7 @@ import ( "context" "encoding/json" "errors" + "io" "net" "sync" "time" @@ -16,6 +17,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2core/d2hero" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapengine" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2map/d2mapgen" + "github.com/OpenDiablo2/OpenDiablo2/d2networking/d2client/d2clientconnectiontype" "github.com/OpenDiablo2/OpenDiablo2/d2networking/d2netpacket" "github.com/OpenDiablo2/OpenDiablo2/d2networking/d2netpacket/d2netpackettype" "github.com/OpenDiablo2/OpenDiablo2/d2networking/d2server/d2tcpclientconnection" @@ -50,12 +52,19 @@ type GameServer struct { scriptEngine *d2script.ScriptEngine seed int64 maxConnections int - packetManagerChan chan []byte + packetManagerChan chan ReceivedPacket heroStateFactory *d2hero.HeroStateFactory *d2util.Logger } +// ReceivedPacket encapsulates the data necessary for the packet manager goroutine to process data from clients. +// The packet manager needs to know who sent the data, in addition to the data itself. +type ReceivedPacket struct { + Client ClientConnection + Packet d2netpacket.NetPacket +} + // NewGameServer builds a new GameServer that can be started // // ctx: required context item @@ -84,7 +93,7 @@ func NewGameServer(asset *d2asset.AssetManager, connections: make(map[string]ClientConnection), networkServer: networkServer, maxConnections: maxConnections[0], - packetManagerChan: make(chan []byte), + packetManagerChan: make(chan ReceivedPacket), mapEngines: make([]*d2mapengine.MapEngine, 0), scriptEngine: d2script.CreateScriptEngine(), seed: time.Now().UnixNano(), @@ -142,7 +151,13 @@ func (g *GameServer) Start() error { for { c, err := g.listener.Accept() if err != nil { - g.Errorf("Unable to accept connection: %s", err) + select { + case <-g.ctx.Done(): + // this error was just a result of the server closing, don't worry about it + default: + g.Errorf("Unable to accept connection: %s", err) + } + return } @@ -157,6 +172,7 @@ func (g *GameServer) Start() error { func (g *GameServer) Stop() { g.Lock() g.cancel() + g.connections = make(map[string]ClientConnection) if err := g.listener.Close(); err != nil { g.Errorf("failed to close the listener %s, err: %v\n", g.listener.Addr(), err) @@ -173,45 +189,9 @@ func (g *GameServer) packetManager() { case <-g.ctx.Done(): return case p := <-g.packetManagerChan: - ipt, err := d2netpacket.InspectPacketType(p) + err := g.OnPacketReceived(p.Client, p.Packet) if err != nil { - g.Errorf("InspectPacketType: %v", err) - } - - switch ipt { - case d2netpackettype.PlayerConnectionRequest: - player, err := d2netpacket.UnmarshalNetPacket(p) - if err != nil { - g.Errorf("Unable to unmarshal PlayerConnectionRequestPacket: %s\n", err) - } - - g.sendPacketToClients(player) - case d2netpackettype.MovePlayer: - move, err := d2netpacket.UnmarshalNetPacket(p) - if err != nil { - g.Error(err.Error()) - continue - } - - g.sendPacketToClients(move) - case d2netpackettype.CastSkill: - castSkill, err := d2netpacket.UnmarshalNetPacket(p) - if err != nil { - g.Error(err.Error()) - continue - } - - g.sendPacketToClients(castSkill) - case d2netpackettype.SpawnItem: - item, err := d2netpacket.UnmarshalNetPacket(p) - if err != nil { - g.Error(err.Error()) - continue - } - - g.sendPacketToClients(item) - case d2netpackettype.ServerClosed: - g.Stop() + g.Errorf("failed to handle packet received from client %s: %v", p.Client.GetUniqueID(), err) } } } @@ -228,9 +208,10 @@ func (g *GameServer) sendPacketToClients(packet d2netpacket.NetPacket) { // handleConnection accepts an individual connection and starts pooling for new packets. It is recommended this is called // via Go Routine. Context should be a property of the GameServer Struct. func (g *GameServer) handleConnection(conn net.Conn) { - var connected int - - var packet d2netpacket.NetPacket + var ( + connected int + client ClientConnection + ) g.Infof("Accepting connection: %s\n", conn.RemoteAddr().String()) @@ -243,10 +224,18 @@ func (g *GameServer) handleConnection(conn net.Conn) { decoder := json.NewDecoder(conn) for { + var packet d2netpacket.NetPacket + err := decoder.Decode(&packet) if err != nil { - g.Error(err.Error()) - return // exit this connection as we could not read the first packet + switch err { + case io.EOF: + break // the other side closed the connection + default: + g.Error(err.Error()) + } + + return // allow the connection to close } // If this is the first packet we are seeing from this specific connection we first need to see if the client @@ -257,25 +246,7 @@ func (g *GameServer) handleConnection(conn net.Conn) { g.Infof("Closing connection with %s: did not receive new player connection request...", conn.RemoteAddr().String()) } - if err := g.registerConnection(packet.PacketData, conn); err != nil { - switch err { - case errServerFull: // Server is currently full and not accepting new connections. - sf, serverFullErr := d2netpacket.CreateServerFullPacket() - if serverFullErr != nil { - g.Errorf("ServerFullPacket: %v", serverFullErr) - } - - msf, marshalServerFullErr := d2netpacket.MarshalPacket(sf) - if marshalServerFullErr != nil { - g.Errorf("MarshalPacket: %v", marshalServerFullErr) - } - - _, errServerFullPacket := conn.Write(msf) - g.Warningf("%v", errServerFullPacket) - case errPlayerAlreadyExists: // Player is already registered and did not disconnection correctly. - g.Errorf("%v", err) - } - + if client, err = g.registerConnection(packet.PacketData, conn); err != nil { return } @@ -286,7 +257,10 @@ func (g *GameServer) handleConnection(conn net.Conn) { case <-g.ctx.Done(): return default: - g.packetManagerChan <- packet.PacketData + g.packetManagerChan <- ReceivedPacket{ + Client: client, + Packet: packet, + } } } } @@ -296,12 +270,28 @@ func (g *GameServer) handleConnection(conn net.Conn) { // Errors: // - errServerFull // - errPlayerAlreadyExists -func (g *GameServer) registerConnection(b []byte, conn net.Conn) error { +func (g *GameServer) registerConnection(b []byte, conn net.Conn) (ClientConnection, error) { + var client ClientConnection + g.Lock() + defer g.Unlock() // check to see if the server is full if len(g.connections) >= g.maxConnections { - return errServerFull + sf, serverFullErr := d2netpacket.CreateServerFullPacket() + if serverFullErr != nil { + g.Errorf("ServerFullPacket: %v", serverFullErr) + } + + msf, marshalServerFullErr := d2netpacket.MarshalPacket(sf) + if marshalServerFullErr != nil { + g.Errorf("MarshalPacket: %v", marshalServerFullErr) + } + + _, errServerFullPacket := conn.Write(msf) + g.Warningf("%v", errServerFullPacket) + + return client, errServerFull } // if it is not full, unmarshal the playerConnectionRequest @@ -312,29 +302,17 @@ func (g *GameServer) registerConnection(b []byte, conn net.Conn) error { // check to see if the player is already registered if _, ok := g.connections[packet.ID]; ok { - return errPlayerAlreadyExists + g.Errorf("%v", errPlayerAlreadyExists) + return client, errPlayerAlreadyExists } // Client a new TCP Client Connection and add it to the connections map - client := d2tcpclientconnection.CreateTCPClientConnection(conn, packet.ID) + client = d2tcpclientconnection.CreateTCPClientConnection(conn, packet.ID) client.SetPlayerState(packet.PlayerState) - g.Infof("Client connected with an id of %s", client.GetUniqueID()) - g.connections[client.GetUniqueID()] = client - // Temporary position hack -------------------------------------------- - // https://github.com/OpenDiablo2/OpenDiablo2/issues/829 - sx, sy := g.mapEngines[0].GetStartPosition() - clientPlayerState := client.GetPlayerState() - clientPlayerState.X = sx - clientPlayerState.Y = sy - // --------- + g.OnClientConnected(client) - // This really should be deferred however to much time will be spend holding a lock when we attempt to send a packet - g.Unlock() - - g.handleClientConnection(client, sx, sy) - - return nil + return client, nil } // OnClientConnected initializes the given ClientConnection. It sends the @@ -447,12 +425,27 @@ func (g *GameServer) handleClientConnection(client ClientConnection, x, y float6 // OnClientDisconnected removes the given client from the list // of client connections. +// If this client was the host, disconnects all clients and kills GameServer. func (g *GameServer) OnClientDisconnected(client ClientConnection) { g.Infof("Client disconnected with an id of %s", client.GetUniqueID()) delete(g.connections, client.GetUniqueID()) + + if client.GetConnectionType() == d2clientconnectiontype.Local { + g.Info("Host disconnected, game server shuting down") + + serverClosed, err := d2netpacket.CreateServerClosedPacket() + if err != nil { + g.Errorf("failed to generate ServerClosed packet after host disconnected: %s", err) + } else { + g.sendPacketToClients(serverClosed) + } + + g.Stop() + } } -// OnPacketReceived is called by the local client to 'send' a packet to the server. +// OnPacketReceived is called when a packet has been received from a remote client, +// and by the local client to 'send' a packet to the server, // nolint:gocyclo // switch statement on packet type makes sense, no need to change func (g *GameServer) OnPacketReceived(client ClientConnection, packet d2netpacket.NetPacket) error { if g == nil { @@ -490,8 +483,13 @@ func (g *GameServer) OnPacketReceived(client ClientConnection, packet d2netpacke if err != nil { g.Errorf("GameServer: error saving saving Player: %s", err) } + case d2netpackettype.PlayerConnectionRequest: + break // prevent log message. these are handled by handleConnection + case d2netpackettype.PlayerDisconnectionNotification: + g.sendPacketToClients(packet) + g.OnClientDisconnected(client) default: - g.Warningf("GameServer: received unknown packet %T", packet) + g.Warningf("GameServer: received unknown packet %s", packet.PacketType) } return nil From 936b3d5de5958d24515dc644f87658cec1eeb014 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 11:05:52 -0500 Subject: [PATCH 52/70] Switched to self hosted build agent --- .github/workflows/pullRequest.yml | 2 +- .github/workflows/pushToMaster.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index f208b494..9a9333da 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -4,7 +4,7 @@ name: pull_request jobs: build: name: Build - runs-on: ubuntu-latest + runs-on: self-hosted continue-on-error: true steps: - name: Set up Go 1.14 diff --git a/.github/workflows/pushToMaster.yml b/.github/workflows/pushToMaster.yml index 346cc565..dcc6dd9e 100644 --- a/.github/workflows/pushToMaster.yml +++ b/.github/workflows/pushToMaster.yml @@ -7,7 +7,7 @@ name: build jobs: build: name: Build - runs-on: ubuntu-latest + runs-on: self-hosted steps: - name: Set up Go 1.14 uses: actions/setup-go@v2.1.3 From 15729b8691023cb00372c5219813e3d95e4e19a8 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:01:40 -0500 Subject: [PATCH 53/70] Removed PR requirement for action --- .github/workflows/pullRequest.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index 9a9333da..b7bda7e1 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -1,6 +1,5 @@ --- name: pull_request -"on": [pull_request] jobs: build: name: Build From 97a2923b25ec2b2d514f5b17f236a2bfe2343f5e Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:05:48 -0500 Subject: [PATCH 54/70] remove build job requirement --- .github/workflows/pushToMaster.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pushToMaster.yml b/.github/workflows/pushToMaster.yml index dcc6dd9e..273ff550 100644 --- a/.github/workflows/pushToMaster.yml +++ b/.github/workflows/pushToMaster.yml @@ -1,9 +1,9 @@ --- name: build -"on": - push: - branches: - - master +# "on": +# push: +# branches: +# - master jobs: build: name: Build From edd0cb0aae80e5f40b9622ea0d1f2cad29c1e517 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:16:18 -0500 Subject: [PATCH 55/70] Fiddling with actions names --- .github/workflows/pullRequest.yml | 3 ++- .github/workflows/pushToMaster.yml | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index b7bda7e1..ffcec707 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -1,8 +1,9 @@ --- name: pull_request +"on": [pull_request] jobs: build: - name: Build + name: 'Pull Request' runs-on: self-hosted continue-on-error: true steps: diff --git a/.github/workflows/pushToMaster.yml b/.github/workflows/pushToMaster.yml index 273ff550..8687e9e4 100644 --- a/.github/workflows/pushToMaster.yml +++ b/.github/workflows/pushToMaster.yml @@ -1,12 +1,12 @@ --- name: build -# "on": -# push: -# branches: -# - master +"on": + push: + branches: + - master jobs: build: - name: Build + name: 'Push to Master' runs-on: self-hosted steps: - name: Set up Go 1.14 From b18936eed0f1215f4dad5b1ff798fc2d4a366680 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:20:24 -0500 Subject: [PATCH 56/70] Updated workflows --- .github/workflows/pullRequest.yml | 11 +++++++-- .github/workflows/pushToMaster.yml | 39 ------------------------------ 2 files changed, 9 insertions(+), 41 deletions(-) delete mode 100644 .github/workflows/pushToMaster.yml diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index ffcec707..7089c18c 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -1,9 +1,16 @@ --- name: pull_request -"on": [pull_request] +on: + push: + branches: + - main + pull_request: + branches: + - main + jobs: build: - name: 'Pull Request' + name: build runs-on: self-hosted continue-on-error: true steps: diff --git a/.github/workflows/pushToMaster.yml b/.github/workflows/pushToMaster.yml deleted file mode 100644 index 8687e9e4..00000000 --- a/.github/workflows/pushToMaster.yml +++ /dev/null @@ -1,39 +0,0 @@ ---- -name: build -"on": - push: - branches: - - master -jobs: - build: - name: 'Push to Master' - runs-on: self-hosted - steps: - - name: Set up Go 1.14 - uses: actions/setup-go@v2.1.3 - with: - go-version: 1.14 - id: go - - - name: Check out code - uses: actions/checkout@v2.3.4 - - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y xvfb libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libgl1-mesa-dev libsdl2-dev libasound2-dev > /dev/null 2>&1 - - - name: Run golangci-lint - continue-on-error: false - uses: golangci/golangci-lint-action@v2.3.0 - with: - version: v1.32 - - - name: Run tests - env: - DISPLAY: ":99.0" - run: | - xvfb-run --auto-servernum go test -v -race ./... - - - name: Build binary - run: go build . From 23f05752b321de7671c2eda52389f173bdac39ed Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:24:17 -0500 Subject: [PATCH 57/70] Fix yaml errors --- .github/workflows/pullRequest.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index 7089c18c..c0526e99 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -1,16 +1,15 @@ ---- name: pull_request on: - push: - branches: - - main - pull_request: - branches: - - main + push: + branches: + - main + pull_request: + branches: + - main jobs: build: - name: build + name: '' runs-on: self-hosted continue-on-error: true steps: From d18243102b902d3a12edf8658344a35b65321699 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Tue, 29 Dec 2020 15:29:15 -0500 Subject: [PATCH 58/70] Yet another yaml fix --- .github/workflows/pullRequest.yml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index c0526e99..471307b2 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -1,12 +1,5 @@ name: pull_request -on: - push: - branches: - - main - pull_request: - branches: - - main - +"on": [pull_request] jobs: build: name: '' From 92989d6d7a65ef8ee71a3a9c68e1e082c585f0f8 Mon Sep 17 00:00:00 2001 From: Tim Sarbin Date: Wed, 30 Dec 2020 02:08:32 -0500 Subject: [PATCH 59/70] Removed improper ebiten dependency in d2interface. --- d2common/d2interface/renderer.go | 6 ++---- d2common/d2util/debug_print.go | 8 ++++---- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/d2common/d2interface/renderer.go b/d2common/d2interface/renderer.go index 1843bf0a..a2313ee3 100644 --- a/d2common/d2interface/renderer.go +++ b/d2common/d2interface/renderer.go @@ -1,7 +1,5 @@ package d2interface -import "github.com/hajimehoshi/ebiten/v2" - type renderCallback = func(Surface) error type updateCallback = func() error @@ -21,6 +19,6 @@ type Renderer interface { GetCursorPos() (int, int) CurrentFPS() float64 ShowPanicScreen(message string) - Print(target *ebiten.Image, str string) error - PrintAt(target *ebiten.Image, str string, x, y int) + Print(target interface{}, str string) error + PrintAt(target interface{}, str string, x, y int) } diff --git a/d2common/d2util/debug_print.go b/d2common/d2util/debug_print.go index daa20386..489f28ae 100644 --- a/d2common/d2util/debug_print.go +++ b/d2common/d2util/debug_print.go @@ -37,16 +37,16 @@ type GlyphPrinter struct { // Basic Latin and C1 Controls and Latin-1 Supplement. // // DebugPrint always returns nil as of 1.5.0-alpha. -func (p *GlyphPrinter) Print(target *ebiten.Image, str string) error { - p.PrintAt(target, str, 0, 0) +func (p *GlyphPrinter) Print(target interface{}, str string) error { + p.PrintAt(target.(*ebiten.Image), str, 0, 0) return nil } // PrintAt draws the string str on the image at (x, y) position. // The available runes are in U+0000 to U+00FF, which is C0 Controls and // Basic Latin and C1 Controls and Latin-1 Supplement. -func (p *GlyphPrinter) PrintAt(target *ebiten.Image, str string, x, y int) { - p.drawDebugText(target, str, x, y, false) +func (p *GlyphPrinter) PrintAt(target interface{}, str string, x, y int) { + p.drawDebugText(target.(*ebiten.Image), str, x, y, false) } func (p *GlyphPrinter) drawDebugText(target *ebiten.Image, str string, ox, oy int, shadow bool) { From 0cf47b9b57b25df96f56a596afbf4afc823f6e5e Mon Sep 17 00:00:00 2001 From: Ian Ling Date: Thu, 31 Dec 2020 20:07:51 -0800 Subject: [PATCH 60/70] Add checkboxes, checkbox test scene --- d2common/d2interface/sprite.go | 2 + d2common/d2sprite/sprite.go | 8 ++ d2core/d2checkbox/checkbox.go | 150 +++++++++++++++++++++++ d2core/d2checkbox/colors.go | 8 ++ d2core/d2components/interactive.go | 13 +- d2core/d2components/ui_checkbox.go | 43 +++++++ d2core/d2systems/app_bootstrap.go | 9 +- d2core/d2systems/input_system.go | 15 ++- d2core/d2systems/scene_base.go | 8 +- d2core/d2systems/scene_mouse_cursor.go | 7 -- d2core/d2systems/scene_object_factory.go | 28 +++++ d2core/d2systems/scene_sprite_system.go | 9 +- d2core/d2systems/scene_test_checkbox.go | 97 +++++++++++++++ d2core/d2systems/scene_widget_system.go | 147 ++++++++++++++++++++-- 14 files changed, 510 insertions(+), 34 deletions(-) create mode 100644 d2core/d2checkbox/checkbox.go create mode 100644 d2core/d2checkbox/colors.go create mode 100644 d2core/d2components/ui_checkbox.go create mode 100644 d2core/d2systems/scene_test_checkbox.go diff --git a/d2common/d2interface/sprite.go b/d2common/d2interface/sprite.go index 023e57e8..54c56bd6 100644 --- a/d2common/d2interface/sprite.go +++ b/d2common/d2interface/sprite.go @@ -39,8 +39,10 @@ type Sprite interface { SetPlaySpeed(playSpeed time.Duration) SetPlayLength(playLength time.Duration) SetColorMod(colorMod color.Color) + GetColorMod() color.Color GetPlayedCount() int ResetPlayedCount() SetEffect(effect d2enum.DrawEffect) + GetEffect() d2enum.DrawEffect SetShadow(shadow bool) } diff --git a/d2common/d2sprite/sprite.go b/d2common/d2sprite/sprite.go index f3f364e6..8c0e6160 100644 --- a/d2common/d2sprite/sprite.go +++ b/d2common/d2sprite/sprite.go @@ -395,6 +395,10 @@ func (a *Sprite) SetColorMod(colorMod color.Color) { a.colorMod = colorMod } +func (a *Sprite) GetColorMod() color.Color { + return a.colorMod +} + // GetPlayedCount gets the number of times the application played func (a *Sprite) GetPlayedCount() int { return a.playedCount @@ -410,6 +414,10 @@ func (a *Sprite) SetEffect(e d2enum.DrawEffect) { a.effect = e } +func (a *Sprite) GetEffect() d2enum.DrawEffect { + return a.effect +} + // SetShadow sets bool for whether or not to draw a shadow func (a *Sprite) SetShadow(shadow bool) { a.hasShadow = shadow diff --git a/d2core/d2checkbox/checkbox.go b/d2core/d2checkbox/checkbox.go new file mode 100644 index 00000000..491834ae --- /dev/null +++ b/d2core/d2checkbox/checkbox.go @@ -0,0 +1,150 @@ +package d2checkbox + +import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2label" + "github.com/gravestench/akara" + "image/color" + "math/rand" +) + +type callbackFunc = func(this akara.Component) (preventPropagation bool) + +// Button defines a standard wide UI button +type Checkbox struct { + Layout CheckboxLayout + Sprite d2interface.Sprite + Label *d2label.Label + callback callbackFunc + width, height int + pressed bool + enabled bool +} + +// CheckboxLayout defines the type of buttons +type CheckboxLayout struct { + X float64 + Y float64 + SpritePath string + PalettePath string + FontPath string + ClickableRect *rectangle.Rectangle + XSegments int + YSegments int + BaseFrame int + DisabledFrame int + DisabledColor uint32 + TextOffset float64 + FixedWidth int + FixedHeight int + LabelColor uint32 + Toggleable bool + AllowFrameChange bool + HasImage bool + Tooltip int + TooltipXOffset int + TooltipYOffset int +} + +// New creates an instance of Button +func New() *Checkbox { + checkbox := &Checkbox{ + Layout: GetDefaultLayout(), + } + + return checkbox +} + +func GetDefaultLayout() CheckboxLayout { + return CheckboxLayout{ + X: 0, + Y: 0, + SpritePath: d2resource.Checkbox, + PalettePath: d2resource.PaletteFechar, + FontPath: d2resource.FontExocet10, + XSegments: 1, + YSegments: 1, + BaseFrame: 0, + DisabledFrame: -1, + DisabledColor: lightGreyAlpha75, + TextOffset: 18, + FixedWidth: 16, + FixedHeight: 15, + LabelColor: goldAlpha100, + Toggleable: true, + AllowFrameChange: true, + HasImage: true, + Tooltip: 0, + TooltipXOffset: 0, + TooltipYOffset: 0, + } +} + +// OnActivated defines the callback handler for the activate event +func (v *Checkbox) OnActivated(callback callbackFunc) { + v.callback = callback +} + +// Activate calls the on activated callback handler, if any +func (v *Checkbox) Activate(thisComponent akara.Component) bool { + if v.GetEnabled() { + v.Toggle() + } + + if v.callback != nil { + return v.callback(thisComponent) + } + + return false +} + +// Toggle negates the toggled state of the button +func (v *Checkbox) Toggle() { + v.SetPressed(!v.GetPressed()) +} + +// GetEnabled returns the enabled state +func (v *Checkbox) GetEnabled() bool { + return v.enabled +} + +// SetEnabled sets the enabled state +func (v *Checkbox) SetEnabled(enabled bool) { + v.enabled = enabled +} + +// GetChecked returns the enabled state +func (v *Checkbox) GetPressed() bool { + return v.pressed +} + +// SetEnabled sets the enabled state +func (v *Checkbox) SetPressed(pressed bool) { + v.pressed = pressed +} + +func (v *Checkbox) Update() { + if v.Sprite == nil { + return + } + + if v.GetEnabled() && v.GetPressed() { + // checked, enabled + _ = v.Sprite.SetCurrentFrame(1) + } else if v.GetEnabled() { + // unchecked, enabled + _ = v.Sprite.SetCurrentFrame(0) + } else if v.GetPressed() { + // checked, disabled + _ = v.Sprite.SetCurrentFrame(1) + v.Sprite.SetColorMod(color.RGBA{R: uint8(rand.Uint32() % 255), B: uint8(rand.Uint32() % 255), G: uint8(rand.Uint32() % 255), A: 0xff}) + v.Sprite.SetEffect(d2enum.DrawEffectPctTransparency25) + } else { + // unchecked, disabled + _ = v.Sprite.SetCurrentFrame(0) + v.Sprite.SetColorMod(color.RGBA{R: uint8(rand.Uint32() % 255), B: uint8(rand.Uint32() % 255), G: uint8(rand.Uint32() % 255), A: 0xff}) + } +} diff --git a/d2core/d2checkbox/colors.go b/d2core/d2checkbox/colors.go new file mode 100644 index 00000000..cd15f4cb --- /dev/null +++ b/d2core/d2checkbox/colors.go @@ -0,0 +1,8 @@ +package d2checkbox + +const ( + greyAlpha100 = 0x646464ff + lightGreyAlpha75 = 0x808080c3 + whiteAlpha100 = 0xffffffff + goldAlpha100 = 0xc7_b3_77_ff +) diff --git a/d2core/d2components/interactive.go b/d2core/d2components/interactive.go index 8559dfad..72e7703b 100644 --- a/d2core/d2components/interactive.go +++ b/d2core/d2components/interactive.go @@ -1,6 +1,7 @@ package d2components import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" "github.com/gravestench/akara" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" @@ -13,19 +14,21 @@ func noop() bool { return false } -// Interactive is used to flag file entities with a file type +// Interactive is used to define an input state and a callback function to execute when that state is reached type Interactive struct { Enabled bool *d2input.InputVector - Callback func() (preventPropagation bool) + CursorPosition *rectangle.Rectangle + Callback func() (preventPropagation bool) } // New returns a Interactive component. By default, it contains a nil instance. func (*Interactive) New() akara.Component { return &Interactive{ - Enabled: true, - InputVector: d2input.NewInputVector(), - Callback: noop, + Enabled: true, + InputVector: d2input.NewInputVector(), + CursorPosition: nil, + Callback: noop, } } diff --git a/d2core/d2components/ui_checkbox.go b/d2core/d2components/ui_checkbox.go new file mode 100644 index 00000000..8d190582 --- /dev/null +++ b/d2core/d2components/ui_checkbox.go @@ -0,0 +1,43 @@ +//nolint:dupl,golint,stylecheck // component declarations are supposed to look the same +package d2components + +import ( + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" + "github.com/gravestench/akara" +) + +// static check that Checkbox implements Component +var _ akara.Component = &Checkbox{} + +// Checkbox represents a UI checkbox. It contains an embedded *d2checkbox.Checkbox +type Checkbox struct { + *d2checkbox.Checkbox +} + +// New returns a Checkbox component. This contains an embedded *d2checkbox.Checkbox +func (*Checkbox) New() akara.Component { + return &Checkbox{ + Checkbox: d2checkbox.New(), + } +} + +// CheckboxFactory is a wrapper for the generic component factory that returns Checkbox component instances. +// This can be embedded inside of a system to give them the methods for adding, retrieving, and removing a Checkbox. +type CheckboxFactory struct { + *akara.ComponentFactory +} + +// Add adds a Checkbox component to the given entity and returns it +func (m *CheckboxFactory) Add(id akara.EID) *Checkbox { + return m.ComponentFactory.Add(id).(*Checkbox) +} + +// Get returns the Button component for the given entity, and a bool for whether or not it exists +func (m *CheckboxFactory) Get(id akara.EID) (*Checkbox, bool) { + component, found := m.ComponentFactory.Get(id) + if !found { + return nil, found + } + + return component.(*Checkbox), found +} diff --git a/d2core/d2systems/app_bootstrap.go b/d2core/d2systems/app_bootstrap.go index c62bafcd..b4ba9fce 100644 --- a/d2core/d2systems/app_bootstrap.go +++ b/d2core/d2systems/app_bootstrap.go @@ -37,9 +37,9 @@ const ( skipSplashArg = "nosplash" skipSplashDesc = "skip the ebiten splash screen" - logLevelArg = "loglevel" - logLevelShort = 'l' - logLevelDesc = "sets the logging level for all loggers at startup" + logLevelArg = "loglevel" + logLevelShort = 'l' + logLevelDesc = "sets the logging level for all loggers at startup" profilerArg = "profile" profilerDesc = "Profiles the program, one of (cpu, mem, block, goroutine, trace, thread, mutex)" @@ -285,6 +285,9 @@ func (m *AppBootstrap) parseCommandLineArgs() { case "buttons": m.Info("running button test scene") m.World.AddSystem(NewButtonTestScene()) + case "checkbox": + m.Info("running checkbox test scene") + m.World.AddSystem(NewCheckboxTestScene()) default: m.World.AddSystem(&GameClientBootstrap{}) } diff --git a/d2core/d2systems/input_system.go b/d2core/d2systems/input_system.go index 9955ae9a..761cbaf8 100644 --- a/d2core/d2systems/input_system.go +++ b/d2core/d2systems/input_system.go @@ -25,9 +25,9 @@ type InputSystem struct { d2interface.InputService configs *akara.Subscription interactives *akara.Subscription - inputState *d2input.InputVector - Components struct { - GameConfig d2components.GameConfigFactory + inputState *d2input.InputVector + Components struct { + GameConfig d2components.GameConfigFactory Interactive d2components.InteractiveFactory } } @@ -143,9 +143,18 @@ func (m *InputSystem) applyInputState(id akara.EID) (preventPropagation bool) { return false } + // verify that the current inputState matches the state specified in the InputVector if !v.Enabled || !m.inputState.Contains(v.InputVector) { return false } + // check if this Interactive specified a particular cursor position that the input must occur in + if v.CursorPosition != nil { + cursorX, cursorY := m.CursorPosition() + if !v.CursorPosition.Contains(float64(cursorX), float64(cursorY)) { + return false + } + } + return v.Callback() } diff --git a/d2core/d2systems/scene_base.go b/d2core/d2systems/scene_base.go index 13bfe401..a50bed49 100644 --- a/d2core/d2systems/scene_base.go +++ b/d2core/d2systems/scene_base.go @@ -60,10 +60,12 @@ type sceneComponents struct { Alpha d2components.AlphaFactory DrawEffect d2components.DrawEffectFactory Rectangle d2components.RectangleFactory + Label d2components.LabelFactory + Checkbox d2components.CheckboxFactory Color d2components.ColorFactory CommandRegistration d2components.CommandRegistrationFactory Dirty d2components.DirtyFactory - GameConfig d2components.GameConfigFactory + GameConfig d2components.GameConfigFactory } // BaseScene encapsulates common behaviors for systems that are considered "scenes", @@ -87,7 +89,7 @@ type BaseScene struct { SceneObjects []akara.EID Graph *d2scene.Node // the root node backgroundColor color.Color - gameConfigs *akara.Subscription + gameConfigs *akara.Subscription } // Booted returns whether or not the scene has booted @@ -218,6 +220,8 @@ func (s *BaseScene) setupFactories() { s.InjectComponent(&d2components.Sprite{}, &s.Components.Sprite.ComponentFactory) s.InjectComponent(&d2components.SegmentedSprite{}, &s.Components.SegmentedSprite.ComponentFactory) s.InjectComponent(&d2components.Rectangle{}, &s.Components.Rectangle.ComponentFactory) + s.InjectComponent(&d2components.Checkbox{}, &s.Components.Checkbox.ComponentFactory) + s.InjectComponent(&d2components.Label{}, &s.Components.Label.ComponentFactory) s.InjectComponent(&d2components.Color{}, &s.Components.Color.ComponentFactory) s.InjectComponent(&d2components.CommandRegistration{}, &s.Components.CommandRegistration.ComponentFactory) s.InjectComponent(&d2components.Dirty{}, &s.Components.Dirty.ComponentFactory) diff --git a/d2core/d2systems/scene_mouse_cursor.go b/d2core/d2systems/scene_mouse_cursor.go index 8084e1aa..809677f2 100644 --- a/d2core/d2systems/scene_mouse_cursor.go +++ b/d2core/d2systems/scene_mouse_cursor.go @@ -98,13 +98,6 @@ func (s *MouseCursorScene) updateCursorTransform() { if int(tx) != cx || int(ty) != cy { s.lastTimeMoved = time.Now() - - switch s.debug.enabled { - case true: - s.Infof("transform: (%d, %d)", int(tx), int(ty)) - default: - s.Debugf("transform: (%d, %d)", int(tx), int(ty)) - } } transform.Translation.X, transform.Translation.Y = float64(cx), float64(cy) diff --git a/d2core/d2systems/scene_object_factory.go b/d2core/d2systems/scene_object_factory.go index 6c78f77d..0939cbcb 100644 --- a/d2core/d2systems/scene_object_factory.go +++ b/d2core/d2systems/scene_object_factory.go @@ -2,6 +2,7 @@ package d2systems import ( "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" "image/color" "path/filepath" @@ -126,3 +127,30 @@ func (s *sceneObjectFactory) Label(text, fontSpritePath, palettePath string) aka return eid } + +// Checkbox creates a Checkbox in the scene, with an attached Label +func (s *sceneObjectFactory) Checkbox(x, y float64, checkedState bool, enabled bool, text string, callback func(akara.Component) bool) akara.EID { + checkboxEID := s.sceneSystems.UI.Checkbox(x, y, checkedState, enabled, callback) + s.SceneObjects = append(s.SceneObjects, checkboxEID) + + s.addBasicComponents(checkboxEID) + + checkboxNode := s.Components.SceneGraphNode.Add(checkboxEID) + + // create a Label as a child of the Checkbox if text was given + if text != "" { + layout := d2checkbox.GetDefaultLayout() + labelEID := s.Label(text, layout.FontPath, layout.PalettePath) + labelNode := s.Components.SceneGraphNode.Add(labelEID) + labelNode.SetParent(checkboxNode.Node) + + labelTrs := s.Components.Transform.Add(labelEID) + labelTrs.Translation.X = layout.TextOffset + + label, _ := s.Components.Label.Get(labelEID) + checkbox, _ := s.Components.Checkbox.Get(checkboxEID) + checkbox.Label = label.Label + } + + return checkboxEID +} diff --git a/d2core/d2systems/scene_sprite_system.go b/d2core/d2systems/scene_sprite_system.go index 537360f8..38c5b7d4 100644 --- a/d2core/d2systems/scene_sprite_system.go +++ b/d2core/d2systems/scene_sprite_system.go @@ -98,7 +98,7 @@ func (t *SpriteFactory) setupSubscriptions() { Build() spritesToUpdate := t.NewComponentFilter(). - Require(&d2components.Sprite{}). // we want to process entities that have an sprite ... + Require(&d2components.Sprite{}). // we want to process entities that have an sprite ... Require(&d2components.Texture{}). // ... but are missing a surface Build() @@ -316,8 +316,15 @@ func (t *SpriteFactory) renderSegmentedSprite(id akara.EID, seg *d2components.Se } target.PushTranslation(x+offsetX, y+offsetY) + // TODO: PushEffect and PushColor don't seem to be working? + // see d2sprite/sprite.go for old implementation + //target.PushEffect(sprite.GetEffect()) + //target.PushColor(sprite.GetColorMod()) + target.Render(sprite.GetCurrentFrameSurface()) target.Pop() + //target.Pop() + //target.Pop() frameWidth, frameHeight := sprite.GetCurrentFrameSize() maxFrameHeight = d2math.MaxInt(maxFrameHeight, frameHeight) diff --git a/d2core/d2systems/scene_test_checkbox.go b/d2core/d2systems/scene_test_checkbox.go new file mode 100644 index 00000000..fbf0f16c --- /dev/null +++ b/d2core/d2systems/scene_test_checkbox.go @@ -0,0 +1,97 @@ +package d2systems + +import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" + "github.com/gravestench/akara" + "image/color" + "log" +) + +const ( + sceneKeyCheckboxTest = "Checkbox Test Scene" +) + +// NewCheckboxTestScene creates a new main menu scene. This is the first screen that the user +// will see when launching the game. +func NewCheckboxTestScene() *CheckboxTestScene { + scene := &CheckboxTestScene{ + BaseScene: NewBaseScene(sceneKeyCheckboxTest), + } + + return scene +} + +// static check that CheckboxTestScene implements the scene interface +var _ d2interface.Scene = &CheckboxTestScene{} + +// CheckboxTestScene represents the game's main menu, where users can select single or multi player, +// or start the map engine test. +type CheckboxTestScene struct { + *BaseScene + booted bool + checkboxes *akara.Subscription +} + +// Init the main menu scene +func (s *CheckboxTestScene) Init(world *akara.World) { + s.World = world + + checkboxes := s.World.NewComponentFilter(). + Require(&d2components.Checkbox{}). + Require(&d2components.Ready{}). + Build() + + s.checkboxes = s.World.AddSubscription(checkboxes) + + s.Debug("initializing ...") +} + +func (s *CheckboxTestScene) boot() { + if !s.BaseScene.booted { + s.BaseScene.boot() + return + } + + s.AddSystem(NewMouseCursorScene()) + + s.Add.Rectangle(0, 0, 640, 480, color.RGBA{R: 0xcc, G: 0xcc, B: 0xcc, A: 0xff}) + + s.createCheckboxes() + + s.booted = true +} + +func (s *CheckboxTestScene) createCheckboxes() { + s.Add.Checkbox(100, 100, true, true, "Expansion character", checkboxClickCallback) + s.Add.Checkbox(100, 120, false, true, "Hardcore", checkboxClickCallback) + s.Add.Checkbox(100, 140, true, false, "disabled checked test", checkboxClickCallback) + s.Add.Checkbox(100, 160, false, false, "disabled unchecked test", checkboxClickCallback) +} + +// Update the main menu scene +func (s *CheckboxTestScene) Update() { + if s.Paused() { + return + } + + if !s.booted { + s.boot() + } + + s.BaseScene.Update() +} + +func checkboxClickCallback(thisComponent akara.Component) bool { + this := thisComponent.(*d2components.Checkbox) + if this.Checkbox.GetEnabled() { + text := this.Checkbox.Label.GetText() + if this.Checkbox.GetPressed() { + log.Printf("%s enabled", text) + } else { + log.Printf("%s disabled", text) + } + } + + return false +} diff --git a/d2core/d2systems/scene_widget_system.go b/d2core/d2systems/scene_widget_system.go index 95ac3e97..424d9cb4 100644 --- a/d2core/d2systems/scene_widget_system.go +++ b/d2core/d2systems/scene_widget_system.go @@ -3,6 +3,8 @@ package d2systems import ( "fmt" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2cache" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" @@ -27,12 +29,13 @@ func NewUIWidgetFactory( shapeFactory *ShapeSystem, ) *UIWidgetFactory { sys := &UIWidgetFactory{ - Logger: l, - SpriteFactory: spriteFactory, - ShapeSystem: shapeFactory, - bitmapFontCache: d2cache.CreateCache(fontCacheBudget), - buttonLoadQueue: make(buttonLoadQueue), - labelLoadQueue: make(labelLoadQueue), + Logger: l, + SpriteFactory: spriteFactory, + ShapeSystem: shapeFactory, + bitmapFontCache: d2cache.CreateCache(fontCacheBudget), + buttonLoadQueue: make(buttonLoadQueue), + checkboxLoadQueue: make(checkboxLoadQueue), + labelLoadQueue: make(labelLoadQueue), } sys.BaseSystem = b @@ -48,6 +51,12 @@ type buttonLoadQueueEntry struct { type buttonLoadQueue = map[akara.EID]buttonLoadQueueEntry +type checkboxLoadQueueEntry struct { + sprite akara.EID +} + +type checkboxLoadQueue = map[akara.EID]checkboxLoadQueueEntry + type labelLoadQueueEntry struct { table, sprite akara.EID } @@ -62,12 +71,14 @@ type UIWidgetFactory struct { *SpriteFactory *ShapeSystem buttonLoadQueue + checkboxLoadQueue labelLoadQueue - bitmapFontCache d2interface.Cache - labelsToUpdate *akara.Subscription - buttonsToUpdate *akara.Subscription - booted bool - Components struct { + bitmapFontCache d2interface.Cache + labelsToUpdate *akara.Subscription + buttonsToUpdate *akara.Subscription + checkboxesToUpdate *akara.Subscription + booted bool + Components struct { File d2components.FileFactory Transform d2components.TransformFactory Interactive d2components.InteractiveFactory @@ -76,6 +87,7 @@ type UIWidgetFactory struct { BitmapFont d2components.BitmapFontFactory Label d2components.LabelFactory Button d2components.ButtonFactory + Checkbox d2components.CheckboxFactory Sprite d2components.SpriteFactory Color d2components.ColorFactory Texture d2components.TextureFactory @@ -103,6 +115,7 @@ func (t *UIWidgetFactory) setupFactories() { t.InjectComponent(&d2components.BitmapFont{}, &t.Components.BitmapFont.ComponentFactory) t.InjectComponent(&d2components.Label{}, &t.Components.Label.ComponentFactory) t.InjectComponent(&d2components.Button{}, &t.Components.Button.ComponentFactory) + t.InjectComponent(&d2components.Checkbox{}, &t.Components.Checkbox.ComponentFactory) t.InjectComponent(&d2components.Sprite{}, &t.Components.Sprite.ComponentFactory) t.InjectComponent(&d2components.Color{}, &t.Components.Color.ComponentFactory) t.InjectComponent(&d2components.Ready{}, &t.Components.Ready.ComponentFactory) @@ -121,8 +134,14 @@ func (t *UIWidgetFactory) setupSubscriptions() { Require(&d2components.Ready{}). Build() + checkboxesToUpdate := t.NewComponentFilter(). + Require(&d2components.Checkbox{}). + Require(&d2components.Ready{}). + Build() + t.labelsToUpdate = t.AddSubscription(labelsToUpdate) t.buttonsToUpdate = t.AddSubscription(buttonsToUpdate) + t.checkboxesToUpdate = t.AddSubscription(checkboxesToUpdate) } func (t *UIWidgetFactory) boot() { @@ -155,6 +174,14 @@ func (t *UIWidgetFactory) Update() { t.processButton(buttonEID) } + for checkboxEID := range t.checkboxLoadQueue { + if time.Since(start) > maxTimePerUpdate { + return + } + + t.processCheckbox(checkboxEID) + } + for labelEID := range t.labelLoadQueue { if time.Since(start) > maxTimePerUpdate { return @@ -171,6 +198,14 @@ func (t *UIWidgetFactory) Update() { t.updateButton(buttonEID) } + for _, checkboxEID := range t.checkboxesToUpdate.GetEntities() { + if time.Since(start) > maxTimePerUpdate { + return + } + + t.updateCheckbox(checkboxEID) + } + for _, labelEID := range t.labelsToUpdate.GetEntities() { if time.Since(start) > maxTimePerUpdate { return @@ -481,11 +516,10 @@ func (t *UIWidgetFactory) renderButtonStates(buttonEID akara.EID) { delete(t.buttonLoadQueue, buttonEID) } - func (t *UIWidgetFactory) updateButton(buttonEID akara.EID) { button, btnFound := t.Components.Button.Get(buttonEID) - if ! btnFound { + if !btnFound { return } @@ -512,3 +546,90 @@ func (t *UIWidgetFactory) updateButton(buttonEID akara.EID) { texture.Texture = button.GetCurrentTexture() } + +// Checkbox creates a checkbox ui widget. A Checkbox widget is composed of a Checkbox component that tracks the logic, +// and a SegmentedSprite to be displayed in the scene. +func (t *UIWidgetFactory) Checkbox(x, y float64, checkedState bool, enabled bool, callback func(akara.Component) bool) akara.EID { + checkboxEID := t.NewEntity() + + checkbox := t.Components.Checkbox.Add(checkboxEID) + checkbox.Layout.X, checkbox.Layout.Y = x, y + checkbox.Layout.ClickableRect = rectangle.New(x, y, float64(checkbox.Layout.FixedWidth), float64(checkbox.Layout.FixedHeight)) + + checkboxTrs := t.Components.Transform.Add(checkboxEID) + checkboxTrs.Translation.X, checkboxTrs.Translation.Y = x, y + + checkbox.Checkbox.SetPressed(checkedState) + checkbox.Checkbox.SetEnabled(enabled) + checkbox.Checkbox.OnActivated(callback) + + img, pal := checkbox.Layout.SpritePath, checkbox.Layout.PalettePath + sx, sy, base := checkbox.Layout.XSegments, checkbox.Layout.YSegments, checkbox.Layout.BaseFrame + + spriteEID := t.SpriteFactory.SegmentedSprite(x, y, img, pal, sx, sy, base) + + entry := checkboxLoadQueueEntry{ + sprite: spriteEID, + } + + t.checkboxLoadQueue[checkboxEID] = entry + + return checkboxEID +} + +// processCheckbox creates a checkbox after all of the prerequisite components are ready. +// This adds interactivity and prepares the checkbox for rendering in the scene. +func (t *UIWidgetFactory) processCheckbox(checkboxEID akara.EID) { + // get the queue entry + entry, found := t.checkboxLoadQueue[checkboxEID] + if !found { + return + } + + spriteEID := entry.sprite + + // check if sprite is ready to be used + if _, spriteReady := t.Components.Ready.Get(spriteEID); !spriteReady { + return + } + + checkbox, found := t.Components.Checkbox.Get(checkboxEID) + if !found { + checkbox = t.Components.Checkbox.Add(checkboxEID) + } + + checkboxNode := t.Components.SceneGraphNode.Add(checkboxEID) + + sprite, found := t.Components.Sprite.Get(spriteEID) + if found { + checkbox.Sprite = sprite.Sprite + t.Components.SceneGraphNode.Add(spriteEID).SetParent(checkboxNode.Node) + } + + interactive := t.Components.Interactive.Add(checkboxEID) + interactive.InputVector.SetMouseButton(d2input.MouseButtonLeft) + interactive.CursorPosition = checkbox.Layout.ClickableRect + interactive.Callback = func() bool { + return checkbox.Activate(checkbox) + } + + t.Components.Texture.Add(checkboxEID) + + t.Components.Ready.Add(checkboxEID) + + delete(t.checkboxLoadQueue, checkboxEID) +} + +// updateCheckbox refreshes the rendering logic for a checkbox, +// causing any changes that have occurred to appear in the scene. +func (t *UIWidgetFactory) updateCheckbox(checkboxEID akara.EID) { + checkbox, found := t.Components.Checkbox.Get(checkboxEID) + if !found { + return + } + + checkbox.Update() + + checkboxTexture, _ := t.Components.Texture.Get(checkboxEID) + checkboxTexture.Texture = checkbox.Sprite.GetCurrentFrameSurface() +} From db87175872c6980e5eb6f7586530b31e3eb6e8ca Mon Sep 17 00:00:00 2001 From: ThomasChr Date: Fri, 1 Jan 2021 20:49:49 +0100 Subject: [PATCH 61/70] Render HUD before Panels (in this Case 'Panels' only does mean Inventory Panel). This is to avoid Entity Labels to be renderd above the Inventory Panel. Fixes #936 --- d2game/d2player/game_controls.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 9b278869..196964fe 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -795,11 +795,11 @@ func (g *GameControls) isInActiveMenusRect(px, py int) bool { // Render draws the GameControls onto the target func (g *GameControls) Render(target d2interface.Surface) error { - if err := g.renderPanels(target); err != nil { + if err := g.hud.Render(target); err != nil { return err } - if err := g.hud.Render(target); err != nil { + if err := g.renderPanels(target); err != nil { return err } From 826b1224f6f6d0a1744b1f080949bb43cc5e736b Mon Sep 17 00:00:00 2001 From: Ziemas Date: Sat, 2 Jan 2021 01:56:09 +0100 Subject: [PATCH 62/70] This DCC frame size calculation seems useless TBH there some to be some other overcomplicated things going on in DCCAnimation but too tired to use brain right now. --- d2core/d2asset/dcc_animation.go | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/d2core/d2asset/dcc_animation.go b/d2core/d2asset/dcc_animation.go index 9961b5ea..326f8124 100644 --- a/d2core/d2asset/dcc_animation.go +++ b/d2core/d2asset/dcc_animation.go @@ -2,9 +2,6 @@ package d2asset import ( "errors" - "math" - - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" @@ -132,24 +129,11 @@ func (a *DCCAnimation) decodeDirection(directionIndex int) error { func (a *DCCAnimation) decodeFrame(directionIndex int) animationFrame { dccDirection := a.dcc.Directions[directionIndex] - minX, minY := math.MaxInt32, math.MaxInt32 - maxX, maxY := math.MinInt32, math.MinInt32 - - for _, dccFrame := range dccDirection.Frames { - minX = d2math.MinInt(minX, dccFrame.Box.Left) - minY = d2math.MinInt(minY, dccFrame.Box.Top) - maxX = d2math.MaxInt(maxX, dccFrame.Box.Right()) - maxY = d2math.MaxInt(maxY, dccFrame.Box.Bottom()) - } - - frameWidth := maxX - minX - frameHeight := maxY - minY - frame := animationFrame{ - width: frameWidth, - height: frameHeight, - offsetX: minX, - offsetY: minY, + width: dccDirection.Box.Width, + height: dccDirection.Box.Height, + offsetX: dccDirection.Box.Left, + offsetY: dccDirection.Box.Top, decoded: true, } From 03855960cd6ad94c9001ad484384c5dc665de0f5 Mon Sep 17 00:00:00 2001 From: Ian Ling Date: Sun, 3 Jan 2021 12:48:16 -0800 Subject: [PATCH 63/70] De-lint ecs branch --- d2app/app_ecs.go | 4 +- d2common/d2geom/rectangle/deconstruct.go | 6 +- d2common/d2geom/rectangle/doc.go | 4 + d2common/d2geom/rectangle/fit_inside.go | 2 +- d2common/d2geom/rectangle/get_point.go | 8 +- d2common/d2geom/rectangle/get_points.go | 2 + d2common/d2geom/rectangle/get_random_point.go | 1 + .../rectangle/get_random_point_outside.go | 3 +- d2common/d2geom/rectangle/intersection.go | 2 +- d2common/d2geom/rectangle/marching_ants.go | 89 ------------------- d2common/d2geom/rectangle/merge_points.go | 2 +- d2common/d2geom/rectangle/namespace.go | 23 +++-- d2common/d2geom/rectangle/overlaps.go | 2 +- d2common/d2geom/rectangle/perimeter_point.go | 3 +- d2common/d2geom/rectangle/rectangle.go | 30 ++++--- d2common/d2interface/renderer.go | 1 + d2common/d2math/constants.go | 1 + d2common/d2math/euler.go | 22 ++++- d2common/d2math/matrix3.go | 2 + d2common/d2math/matrix4.go | 11 ++- d2common/d2math/quaternion.go | 37 +++++--- d2common/d2math/vector2.go | 5 +- d2common/d2math/vector3.go | 5 +- d2common/d2math/vector4.go | 5 +- d2common/d2scene/node.go | 2 +- d2common/d2scene/node_test.go | 3 +- d2common/d2sprite/sprite.go | 5 +- d2core/d2bitmapfont/bitmap_font.go | 2 + d2core/d2bitmapfont/doc.go | 2 + d2core/d2button/button.go | 34 ++----- d2core/d2button/button_layouts.go | 39 ++++---- d2core/d2button/button_states.go | 4 - d2core/d2button/button_tooltips.go | 2 +- d2core/d2button/doc.go | 2 + d2core/d2checkbox/checkbox.go | 53 ++++++----- d2core/d2checkbox/colors.go | 2 - d2core/d2checkbox/doc.go | 2 + d2core/d2components/bitmap_font.go | 2 +- d2core/d2components/camera.go | 8 +- d2core/d2components/dirty.go | 2 +- d2core/d2components/draw_effect.go | 4 +- d2core/d2components/file_loaded.go | 2 +- d2core/d2components/interactive.go | 3 +- d2core/d2components/locale.go | 2 +- d2core/d2components/ready.go | 2 +- d2core/d2components/rectangle.go | 3 +- d2core/d2components/scene_graph_node.go | 1 + d2core/d2components/size.go | 3 +- d2core/d2components/transform.go | 8 +- d2core/d2components/ui_checkbox.go | 3 +- d2core/d2label/doc.go | 2 + d2core/d2label/label.go | 11 ++- d2core/d2render/ebiten/ebiten_renderer.go | 5 ++ d2core/d2systems/app_bootstrap.go | 9 +- d2core/d2systems/asset_loader.go | 54 +++++------ d2core/d2systems/file_handle_resolver.go | 62 ++++++++----- d2core/d2systems/file_source_resolver.go | 8 +- d2core/d2systems/file_type_resolver.go | 7 +- d2core/d2systems/game_client_bootstrap.go | 3 +- d2core/d2systems/game_config.go | 8 +- d2core/d2systems/game_object_factory.go | 4 +- d2core/d2systems/movement.go | 4 +- d2core/d2systems/render.go | 1 + d2core/d2systems/scene_base.go | 1 + d2core/d2systems/scene_ebiten_splash.go | 24 ++--- d2core/d2systems/scene_loading_screen.go | 9 +- d2core/d2systems/scene_main_menu.go | 6 +- d2core/d2systems/scene_mouse_cursor.go | 22 ++--- d2core/d2systems/scene_object_factory.go | 11 ++- d2core/d2systems/scene_shape_system.go | 16 ++-- d2core/d2systems/scene_sprite_system.go | 23 ++--- d2core/d2systems/scene_test_button.go | 9 +- d2core/d2systems/scene_test_checkbox.go | 20 +++-- d2core/d2systems/scene_test_label.go | 11 ++- d2core/d2systems/scene_widget_system.go | 40 ++++----- d2core/d2systems/timescale.go | 7 +- d2core/d2ui/color_tokens.go | 1 + d2game/d2player/quest_log.go | 2 +- 78 files changed, 439 insertions(+), 406 deletions(-) create mode 100644 d2common/d2geom/rectangle/doc.go delete mode 100644 d2common/d2geom/rectangle/marching_ants.go create mode 100644 d2core/d2bitmapfont/doc.go create mode 100644 d2core/d2button/doc.go create mode 100644 d2core/d2checkbox/doc.go create mode 100644 d2core/d2label/doc.go diff --git a/d2app/app_ecs.go b/d2app/app_ecs.go index 01d4b991..913f1c5e 100644 --- a/d2app/app_ecs.go +++ b/d2app/app_ecs.go @@ -1,10 +1,12 @@ package d2app import ( - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2systems" "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2systems" ) +// Run initializes the ECS framework func Run() { cfg := akara.NewWorldConfig().With(&d2systems.AppBootstrap{}) akara.NewWorld(cfg) diff --git a/d2common/d2geom/rectangle/deconstruct.go b/d2common/d2geom/rectangle/deconstruct.go index 5dc40fae..049839e2 100644 --- a/d2common/d2geom/rectangle/deconstruct.go +++ b/d2common/d2geom/rectangle/deconstruct.go @@ -10,10 +10,8 @@ func Deconstruct(r *Rectangle, to []*point.Point) []*point.Point { to = make([]*point.Point, 0) } - to = append(to, point.New(r.X, r.Y)) - to = append(to, point.New(r.Right(), r.Y)) - to = append(to, point.New(r.Right(), r.Bottom())) - to = append(to, point.New(r.X, r.Bottom())) + to = append(to, point.New(r.X, r.Y), point.New(r.Right(), r.Y), + point.New(r.Right(), r.Bottom()), point.New(r.X, r.Bottom())) return to } diff --git a/d2common/d2geom/rectangle/doc.go b/d2common/d2geom/rectangle/doc.go new file mode 100644 index 00000000..9754274a --- /dev/null +++ b/d2common/d2geom/rectangle/doc.go @@ -0,0 +1,4 @@ +// Package rectangle provides an abstraction of a rectangle in 2D space, +// with methods for performing various operations and comparisons +// between different Rectangles. +package rectangle diff --git a/d2common/d2geom/rectangle/fit_inside.go b/d2common/d2geom/rectangle/fit_inside.go index 3e9af8db..af2c32b0 100644 --- a/d2common/d2geom/rectangle/fit_inside.go +++ b/d2common/d2geom/rectangle/fit_inside.go @@ -1,6 +1,6 @@ package rectangle -// Adjusts rectangle `a`, changing its width, height and position, +// FitInside Adjusts rectangle `a`, changing its width, height and position, // so that it fits inside the area of rectangle `b`, while maintaining its original // aspect ratio. func FitInside(a, b *Rectangle) *Rectangle { diff --git a/d2common/d2geom/rectangle/get_point.go b/d2common/d2geom/rectangle/get_point.go index 642ae313..c70458b0 100644 --- a/d2common/d2geom/rectangle/get_point.go +++ b/d2common/d2geom/rectangle/get_point.go @@ -4,6 +4,7 @@ import "github.com/gravestench/pho/geom/point" // GetPoint calculates the coordinates of a point at a certain `position` on the // Rectangle's perimeter, assigns to and returns the given point, or creates a point if nil. +//nolint:gomnd // math func GetPoint(r *Rectangle, position float64, p *point.Point) *point.Point { if p == nil { p = point.New(0, 0) @@ -16,7 +17,8 @@ func GetPoint(r *Rectangle, position float64, p *point.Point) *point.Point { perimeter := Perimeter(r) * position - if position > 0.5 { + switch { + case position > 0.5: perimeter -= r.Width + r.Height if perimeter <= r.Width { @@ -26,10 +28,10 @@ func GetPoint(r *Rectangle, position float64, p *point.Point) *point.Point { // face 4 p.X, p.Y = r.X, r.Bottom()-(perimeter-r.Width) } - } else if position <= r.Width { + case position <= r.Width: // face 1 p.X, p.Y = r.X+perimeter, r.Y - } else { + default: // face 2 p.X, p.Y = r.Right(), r.Y+(perimeter-r.Width) } diff --git a/d2common/d2geom/rectangle/get_points.go b/d2common/d2geom/rectangle/get_points.go index 652685bc..28a43401 100644 --- a/d2common/d2geom/rectangle/get_points.go +++ b/d2common/d2geom/rectangle/get_points.go @@ -4,6 +4,8 @@ import ( "github.com/gravestench/pho/geom/point" ) +// ByStepRate is a special value that tells GetPoints to use the stepRate instead of quantity +// for generating perimeter points const ByStepRate = -1 // GetPoints returns a slice of points from the perimeter of the Rectangle, diff --git a/d2common/d2geom/rectangle/get_random_point.go b/d2common/d2geom/rectangle/get_random_point.go index 1f37eeff..665f852f 100644 --- a/d2common/d2geom/rectangle/get_random_point.go +++ b/d2common/d2geom/rectangle/get_random_point.go @@ -7,6 +7,7 @@ import ( ) // GetRandomPoint returns a random point within the Rectangle's bounds. +//nolint:gosec // not crypto/security-related, it's okay if we use a weak random number generator func GetRandomPoint(r *Rectangle, p *point.Point) *point.Point { if p == nil { p = point.New(0, 0) diff --git a/d2common/d2geom/rectangle/get_random_point_outside.go b/d2common/d2geom/rectangle/get_random_point_outside.go index 456614c7..5545e846 100644 --- a/d2common/d2geom/rectangle/get_random_point_outside.go +++ b/d2common/d2geom/rectangle/get_random_point_outside.go @@ -7,8 +7,9 @@ import ( "github.com/gravestench/pho/phomath" ) -// Calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` +// GetRandomPointOutside calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` // Rectangle. The inner Rectangle must be fully contained within the outer rectangle. +//nolint:gosec // not crypto/security-related, it's okay if we use a weak random number generator func GetRandomPointOutside(outer, inner *Rectangle, out *point.Point) *point.Point { if out == nil { out = point.New(0, 0) diff --git a/d2common/d2geom/rectangle/intersection.go b/d2common/d2geom/rectangle/intersection.go index 1a7bdfef..49abe224 100644 --- a/d2common/d2geom/rectangle/intersection.go +++ b/d2common/d2geom/rectangle/intersection.go @@ -6,7 +6,7 @@ import ( "github.com/gravestench/pho/geom/intersects" ) -// Takes two Rectangles and first checks to see if they intersect. +// Intersection takes two Rectangles and first checks to see if they intersect. // If they intersect it will return the area of intersection in the `out` Rectangle. // If they do not intersect, the `out` Rectangle will have a width and height of zero. // The given `output` rectangle will be assigned the intsersect values and returned. diff --git a/d2common/d2geom/rectangle/marching_ants.go b/d2common/d2geom/rectangle/marching_ants.go deleted file mode 100644 index 374477c7..00000000 --- a/d2common/d2geom/rectangle/marching_ants.go +++ /dev/null @@ -1,89 +0,0 @@ -package rectangle - -import ( - "math" - - "github.com/gravestench/pho/geom/point" -) - -const ( - AutoStep = -1 - AutoQuantity = -1 -) - -// Returns an array of points from the perimeter of the Rectangle, -// where each point is spaced out based on either the `step` value, or the `quantity`. -func MarchingAnts(r *Rectangle, step float64, quantity int, out []*point.Point) []*point.Point { - if step <= 0 { - step = AutoStep - } - - if quantity <= 0 { - quantity = AutoQuantity - } - - if out == nil { - out = make([]*point.Point, quantity) - } - - if step == AutoStep && quantity == AutoQuantity { - return /* bail */ out - } - - if step == AutoStep { - step = Perimeter(r) / float64(quantity) - } else { - quantity = int(math.Round(Perimeter(r) / step)) - } - - const ( - top = iota - right - bottom - left - numFaces - ) - - x, y := r.X, r.Y - face := top - - for idx := 0; idx < quantity; idx++ { - out = append(out, point.New(x, y)) - - switch face { - case top: - x += step - - if x >= r.Right() { - face = (face + 1) % numFaces - y += x - r.Right() - x = r.Right() - } - case right: - y += step - - if y >= r.Bottom() { - face = (face + 1) % numFaces - x -= y - r.Bottom() - y = r.Bottom() - } - case bottom: - x -= step - - if x <= r.Left() { - face = (face + 1) % numFaces - y -= r.Left() - x - x = r.Left() - } - case left: - y -= step - - if y <= r.Top() { - face = (face + 1) % numFaces - y = r.Top() - } - } - } - - return out -} diff --git a/d2common/d2geom/rectangle/merge_points.go b/d2common/d2geom/rectangle/merge_points.go index 6db566c1..c6b40902 100644 --- a/d2common/d2geom/rectangle/merge_points.go +++ b/d2common/d2geom/rectangle/merge_points.go @@ -6,7 +6,7 @@ import ( "github.com/gravestench/pho/geom/point" ) -// Merges a Rectangle with a list of points by repositioning and/or resizing +// MergePoints merges a Rectangle with a list of points by repositioning and/or resizing // it such that all points are located on or within its bounds. func MergePoints(r *Rectangle, points []*point.Point) *Rectangle { minX, maxX, minY, maxY := r.X, r.Right(), r.Y, r.Bottom() diff --git a/d2common/d2geom/rectangle/namespace.go b/d2common/d2geom/rectangle/namespace.go index 7c7b1aec..4b0457f3 100644 --- a/d2common/d2geom/rectangle/namespace.go +++ b/d2common/d2geom/rectangle/namespace.go @@ -2,7 +2,8 @@ package rectangle import "github.com/gravestench/pho/geom/point" -type RectangleNamespace interface { +// Interface defines the generic interface for a Rectangle +type Interface interface { New(x, y, w, h float64) *Rectangle Contains(r *Rectangle, x, y float64) bool GetPoint(r *Rectangle, position float64, p *point.Point) *point.Point @@ -28,6 +29,7 @@ type RectangleNamespace interface { Union(r *Rectangle, other *Rectangle) *Rectangle } +// Namespace implements rectangle.Interface type Namespace struct{} // New creates a new Rectangle instance. @@ -75,7 +77,7 @@ func (*Namespace) ContainsPoint(r *Rectangle, p *point.Point) bool { return Contains(r, p.X, p.Y) } -// ContainsRect checks if a given point is inside a Rectangle's bounds. +// ContainsRectangle checks if a given point is inside a Rectangle's bounds. func (*Namespace) ContainsRectangle(r, other *Rectangle) bool { return ContainsRectangle(r, other) } @@ -97,18 +99,21 @@ func (*Namespace) Equals(a, b *Rectangle) bool { return Equals(a, b) } -// Adjusts rectangle, changing its width, height and position, +// FitInside adjusts rectangle, changing its width, height and position, // so that it fits inside the area of the source rectangle, while maintaining its original // aspect ratio. func (*Namespace) FitInside(inner, outer *Rectangle) *Rectangle { return FitInside(inner, outer) } +// Inflate increases the size of a Rectangle by a specified amount. +// The center of the Rectangle stays the same. The amounts are added to each side, +// so the actual increase in width or height is two times bigger than the respective argument. func (*Namespace) Inflate(r *Rectangle, x, y float64) *Rectangle { return Inflate(r, x, y) } -// Takes two Rectangles and first checks to see if they intersect. +// Intersection takes two Rectangles and first checks to see if they intersect. // If they intersect it will return the area of intersection in the `out` Rectangle. // If they do not intersect, the `out` Rectangle will have a width and height of zero. // The given `intersect` rectangle will be assigned the intsersect values and returned. @@ -125,7 +130,7 @@ func (*Namespace) MergePoints(r *Rectangle, points []*point.Point) *Rectangle { // MergeRectangle merges the given rectangle into this rectangle and returns this rectangle. // Neither rectangle should have a negative width or height. -func (*Namespace) MergeRectangle(r *Rectangle, other *Rectangle) *Rectangle { +func (*Namespace) MergeRectangle(r, other *Rectangle) *Rectangle { return MergeRectangle(r, other) } @@ -146,8 +151,8 @@ func (*Namespace) OffsetPoint(r *Rectangle, p *point.Point) *Rectangle { return OffsetPoint(r, p) } -// Checks if this Rectangle overlaps with another rectangle. -func (*Namespace) Overlaps(r *Rectangle, other *Rectangle) bool { +// Overlaps checks if this Rectangle overlaps with another rectangle. +func (*Namespace) Overlaps(r, other *Rectangle) bool { return Overlaps(r, other) } @@ -156,7 +161,7 @@ func (*Namespace) PerimeterPoint(r *Rectangle, angle float64, p *point.Point) *p return PerimeterPoint(r, angle, p) } -// Calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` +// GetRandomPointOutside calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` // Rectangle. The inner Rectangle must be fully contained within the outer rectangle. func (*Namespace) GetRandomPointOutside(r, other *Rectangle, out *point.Point) *point.Point { var outer, inner *Rectangle @@ -183,6 +188,6 @@ func (*Namespace) Scale(r *Rectangle, x, y float64) *Rectangle { // Union creates a new Rectangle or repositions and/or resizes an existing Rectangle so that it // encompasses the two given Rectangles, i.e. calculates their union. -func (*Namespace) Union(r *Rectangle, other *Rectangle) *Rectangle { +func (*Namespace) Union(r, other *Rectangle) *Rectangle { return Union(r, other, r) } diff --git a/d2common/d2geom/rectangle/overlaps.go b/d2common/d2geom/rectangle/overlaps.go index 0685c23a..66bb077c 100644 --- a/d2common/d2geom/rectangle/overlaps.go +++ b/d2common/d2geom/rectangle/overlaps.go @@ -1,6 +1,6 @@ package rectangle -// Checks if two Rectangles overlap. If a Rectangle is within another Rectangle, +// Overlaps checks if two Rectangles overlap. If a Rectangle is within another Rectangle, // the two will be considered overlapping. Thus, the Rectangles are treated as "solid". func Overlaps(a, b *Rectangle) bool { return a.X < b.Right() && diff --git a/d2common/d2geom/rectangle/perimeter_point.go b/d2common/d2geom/rectangle/perimeter_point.go index 466f72a8..7ee213ab 100644 --- a/d2common/d2geom/rectangle/perimeter_point.go +++ b/d2common/d2geom/rectangle/perimeter_point.go @@ -7,6 +7,7 @@ import ( "github.com/gravestench/pho/phomath" ) +// PerimeterPoint returns a Point from the perimeter of the Rectangle based on the given angle. func PerimeterPoint(r *Rectangle, angle float64, out *point.Point) *point.Point { if out == nil { out = point.New(0, 0) @@ -15,7 +16,7 @@ func PerimeterPoint(r *Rectangle, angle float64, out *point.Point) *point.Point angle = phomath.DegToRad(angle) polarity := map[bool]float64{true: 1, false: -1} s, c := math.Sin(angle), math.Cos(angle) - dx, dy := r.Width/2*polarity[c > 0], r.Height/2*polarity[s > 0] + dx, dy := r.Width/2*polarity[c > 0], r.Height/2*polarity[s > 0] //nolint:gomnd // just halving things... out.X = dx + r.CenterX() out.Y = dy + r.CenterY() diff --git a/d2common/d2geom/rectangle/rectangle.go b/d2common/d2geom/rectangle/rectangle.go index 57d5b599..287f94c7 100644 --- a/d2common/d2geom/rectangle/rectangle.go +++ b/d2common/d2geom/rectangle/rectangle.go @@ -18,7 +18,7 @@ func New(x, y, w, h float64) *Rectangle { } } -// Encapsulates a 2D rectangle defined by its corner point in the top-left and its extends +// Rectangle encapsulates a 2D rectangle defined by its corner point in the top-left and its extends // in x (width) and y (height) type Rectangle struct { Type geom.ShapeType @@ -45,6 +45,7 @@ func (r *Rectangle) SetLeft(value float64) *Rectangle { } r.X = value + return r } @@ -98,21 +99,25 @@ func (r *Rectangle) SetBottom(value float64) *Rectangle { return r } +// CenterX returns the X-coordinate of the center of the rectangle func (r *Rectangle) CenterX() float64 { - return r.X + r.Width/2 + return r.X + r.Width/2 //nolint:gomnd // just halving things... } +// SetCenterX sets the rectangle's position so that the X-coordinate of the center matches the given value func (r *Rectangle) SetCenterX(value float64) *Rectangle { - r.X = value - r.Width/2 + r.X = value - r.Width/2 //nolint:gomnd // just halving things... return r } +// CenterY returns the Y-coordinate of the center of the rectangle func (r *Rectangle) CenterY() float64 { - return r.Y + r.Height/2 + return r.Y + r.Height/2 //nolint:gomnd // just halving things... } +// SetCenterY sets the rectangle's position so that the Y-coordinate of the center matches the given value func (r *Rectangle) SetCenterY(value float64) *Rectangle { - r.Y = value - r.Height/2 + r.Y = value - r.Height/2 //nolint:gomnd // just halving things... return r } @@ -155,7 +160,7 @@ func (r *Rectangle) SetEmpty() *Rectangle { return r.SetTo(0, 0, 0, 0) } -// SetPosition sets the position of the rectangle. +// SetPosition sets the position of the rectangle. func (r *Rectangle) SetPosition(x, y float64) *Rectangle { r.X, r.Y = x, y return r @@ -243,7 +248,7 @@ func (r *Rectangle) ContainsPoint(p *point.Point) bool { return Contains(r, p.X, p.Y) } -// ContainsRect checks if a given point is inside a Rectangle's bounds. +// ContainsRectangle checks if a given point is inside a Rectangle's bounds. func (r *Rectangle) ContainsRectangle(other *Rectangle) bool { return ContainsRectangle(r, other) } @@ -265,7 +270,7 @@ func (r *Rectangle) Equals(other *Rectangle) bool { return Equals(r, other) } -// Adjusts rectangle, changing its width, height and position, +// FitInside adjusts rectangle, changing its width, height and position, // so that it fits inside the area of the source rectangle, while maintaining its original // aspect ratio. func (r *Rectangle) FitInside(other *Rectangle) *Rectangle { @@ -283,11 +288,14 @@ func (r *Rectangle) GetSize() *point.Point { return GetSize(r) } +// Inflate increases the size of a Rectangle by a specified amount. +// The center of the Rectangle stays the same. The amounts are added to each side, +// so the actual increase in width or height is two times bigger than the respective argument. func (r *Rectangle) Inflate(x, y float64) *Rectangle { return Inflate(r, x, y) } -// Takes two Rectangles and first checks to see if they intersect. +// Intersection takes two Rectangles and first checks to see if they intersect. // If they intersect it will return the area of intersection in the `out` Rectangle. // If they do not intersect, the `out` Rectangle will have a width and height of zero. // The given `intersect` rectangle will be assigned the intsersect values and returned. @@ -325,7 +333,7 @@ func (r *Rectangle) OffsetPoint(p *point.Point) *Rectangle { return OffsetPoint(r, p) } -// Checks if this Rectangle overlaps with another rectangle. +// Overlaps checks if this Rectangle overlaps with another rectangle. func (r *Rectangle) Overlaps(other *Rectangle) bool { return Overlaps(r, other) } @@ -335,7 +343,7 @@ func (r *Rectangle) PerimeterPoint(angle float64, p *point.Point) *point.Point { return PerimeterPoint(r, angle, p) } -// Calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` +// GetRandomPointOutside calculates a random point that lies within the `outer` Rectangle, but outside of the `inner` // Rectangle. The inner Rectangle must be fully contained within the outer rectangle. func (r *Rectangle) GetRandomPointOutside(other *Rectangle, out *point.Point) *point.Point { var outer, inner *Rectangle diff --git a/d2common/d2interface/renderer.go b/d2common/d2interface/renderer.go index 1843bf0a..b5b23142 100644 --- a/d2common/d2interface/renderer.go +++ b/d2common/d2interface/renderer.go @@ -23,4 +23,5 @@ type Renderer interface { ShowPanicScreen(message string) Print(target *ebiten.Image, str string) error PrintAt(target *ebiten.Image, str string, x, y int) + GetWindowSize() (int, int) } diff --git a/d2common/d2math/constants.go b/d2common/d2math/constants.go index 61e097ee..592a6c82 100644 --- a/d2common/d2math/constants.go +++ b/d2common/d2math/constants.go @@ -2,6 +2,7 @@ package d2math import "math" +// set up some constants for easy access const ( PI = math.Pi PI2 = PI * 2 diff --git a/d2common/d2math/euler.go b/d2common/d2math/euler.go index a1d96f3f..947498c4 100644 --- a/d2common/d2math/euler.go +++ b/d2common/d2math/euler.go @@ -2,6 +2,7 @@ package d2math import "math" +// define the different euler orders const ( EulerOrderXYZ = iota EulerOrderYXZ @@ -12,6 +13,7 @@ const ( numEulerOrders ) +// and define the default const ( EulerOrderDefault = EulerOrderXYZ ) @@ -21,6 +23,7 @@ func eulerNoop(_ *Euler) { /* do nothing */ } // static check that euler is Vector3Like var _ Vector3Like = &Euler{} +// NewEuler creates a Euler func NewEuler(x, y, z float64, order int) *Euler { return &Euler{ X: x, @@ -31,6 +34,7 @@ func NewEuler(x, y, z float64, order int) *Euler { } } +// Euler is an abstraction of a Euler angle type Euler struct { X, Y, Z float64 Order int @@ -38,7 +42,7 @@ type Euler struct { } // XY returns the x and y components of the quaternion -func (e *Euler) XY() (float64, float64) { +func (e *Euler) XY() (x, y float64) { return e.X, e.Y } @@ -47,22 +51,27 @@ func (e *Euler) XYZ() (x, y, z float64) { return e.X, e.Y, e.Z } +// SetX sets the x component func (e *Euler) SetX(v float64) *Euler { return e.Set(v, e.Y, e.Z, e.Order) } +// SetY sets the y component func (e *Euler) SetY(v float64) *Euler { return e.Set(e.X, v, e.Z, e.Order) } +// SetZ sets the z component func (e *Euler) SetZ(v float64) *Euler { return e.Set(e.X, e.Y, v, e.Order) } +// SetOrder sets the order of the components func (e *Euler) SetOrder(v int) *Euler { return e.Set(e.X, e.Y, e.Z, v) } +// Set sets the x, y, and z components, as well as the order func (e *Euler) Set(x, y, z float64, order int) *Euler { order = int(Clamp(float64(order), 0, numEulerOrders-1)) e.X, e.Y, e.Z, e.Order = x, y, z, order @@ -72,10 +81,12 @@ func (e *Euler) Set(x, y, z float64, order int) *Euler { return e } +// Copy copies the values and order from the given Euler into this one func (e *Euler) Copy(other *Euler) *Euler { return e.Set(other.X, other.Y, other.Z, other.Order) } +// SetFromQuaternion sets the values from a Quarternion in the specified order func (e *Euler) SetFromQuaternion(q *Quaternion, order int) *Euler { tmpMat4 := NewMatrix4(nil) @@ -84,6 +95,7 @@ func (e *Euler) SetFromQuaternion(q *Quaternion, order int) *Euler { return e.SetFromRotationMatrix(tmpMat4, order) } +// SetFromRotationMatrix sets the values from a matrix in the specified order func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { m := m4.Values @@ -100,6 +112,7 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { switch e.Order { case EulerOrderYXZ: x = math.Asin(-Clamp(m23, -1, 1)) + if math.Abs(m23) < epsilon { y = math.Atan2(m13, m33) z = math.Atan2(m21, m22) @@ -108,6 +121,7 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { } case EulerOrderZXY: x = math.Asin(Clamp(m32, -1, 1)) + if math.Abs(m32) < epsilon { y = math.Atan2(-m31, m33) z = math.Atan2(-m12, m22) @@ -116,6 +130,7 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { } case EulerOrderZYX: y = math.Asin(-Clamp(m31, -1, 1)) + if math.Abs(m31) < epsilon { x = math.Atan2(m32, m33) z = math.Atan2(m21, m11) @@ -124,6 +139,7 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { } case EulerOrderYZX: z = math.Asin(Clamp(m21, -1, 1)) + if math.Abs(m21) < epsilon { x = math.Atan2(-m23, m22) y = math.Atan2(-m31, m11) @@ -132,6 +148,7 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { } case EulerOrderXZY: z = math.Asin(-Clamp(m12, -1, 1)) + if math.Abs(m12) < epsilon { x = math.Atan2(m32, m22) y = math.Atan2(m13, m11) @@ -139,9 +156,10 @@ func (e *Euler) SetFromRotationMatrix(m4 *Matrix4, order int) *Euler { x = math.Atan2(-m23, m33) } case EulerOrderXYZ: - fallthrough + fallthrough //nolint:gocritic // it's better to be explicit and include the fallthrough to default default: y = math.Asin(Clamp(m13, -1, 1)) + if math.Abs(m13) < epsilon { x = math.Atan2(-m23, m33) z = math.Atan2(-m12, m11) diff --git a/d2common/d2math/matrix3.go b/d2common/d2math/matrix3.go index 893d955d..35bad82d 100644 --- a/d2common/d2math/matrix3.go +++ b/d2common/d2math/matrix3.go @@ -26,6 +26,7 @@ func (m *Matrix3) Clone() *Matrix3 { } // Copy the values of a given Matrix into this Matrix. +//nolint:dupl // functions are similar but they are for different things func (m *Matrix3) Copy(other *Matrix3) *Matrix3 { m.Values[0] = other.Values[0] m.Values[1] = other.Values[1] @@ -61,6 +62,7 @@ func (m *Matrix3) Identity() *Matrix3 { } // FromMatrix4 copies the values of a given Matrix4 into this Matrix3. +//nolint:dupl // functions are similar but they are for different things func (m *Matrix3) FromMatrix4(m4 *Matrix4) *Matrix3 { m.Values[0] = m4.Values[0] m.Values[1] = m4.Values[1] diff --git a/d2common/d2math/matrix4.go b/d2common/d2math/matrix4.go index 6cbdbbc3..46a4f6e4 100644 --- a/d2common/d2math/matrix4.go +++ b/d2common/d2math/matrix4.go @@ -64,6 +64,7 @@ func (m *Matrix4) Copy(other *Matrix4) *Matrix4 { } a := other.Values + return m.SetValues( a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], @@ -385,6 +386,7 @@ func (m *Matrix4) MultiplyMatrices(a, b *Matrix4) *Matrix4 { b43 := b.Values[11] b44 := b.Values[15] + //nolint:dupl // similar to another line in this file... return m.SetValues( a11*b11+a12*b21+a13*b31+a14*b41, a21*b11+a22*b21+a23*b31+a24*b41, @@ -493,6 +495,7 @@ func (m *Matrix4) Rotate(radians float64, axis Vector3Like) *Matrix4 { } // RotateX rotates this matrix on its X axis. +//nolint:dupl // RotateX, RotateY, and RotateZ are similar, but not duplicates func (m *Matrix4) RotateX(radians float64) *Matrix4 { c, s := math.Cos(radians), math.Sin(radians) @@ -513,6 +516,7 @@ func (m *Matrix4) RotateX(radians float64) *Matrix4 { } // RotateY rotates this matrix on its X axis. +//nolint:dupl // RotateX, RotateY, and RotateZ are similar, but not duplicates func (m *Matrix4) RotateY(radians float64) *Matrix4 { c, s := math.Cos(radians), math.Sin(radians) @@ -533,6 +537,7 @@ func (m *Matrix4) RotateY(radians float64) *Matrix4 { } // RotateZ rotates this matrix on its X axis. +//nolint:dupl // RotateX, RotateY, and RotateZ are similar, but not duplicates func (m *Matrix4) RotateZ(radians float64) *Matrix4 { c, s := math.Cos(radians), math.Sin(radians) @@ -601,7 +606,7 @@ func (m *Matrix4) Frustum(left, right, bottom, top, near, far float64) *Matrix4 // Perspective generates a perspective projection matrix with the given bounds. func (m *Matrix4) Perspective(fovy, aspect, near, far float64) *Matrix4 { - f, nf := 1/math.Tan(fovy/2), 1/(near-far) + f, nf := 1/math.Tan(fovy/2), 1/(near-far) //nolint:gomnd // halving things return m.SetValues( f/aspect, 0, 0, 0, @@ -638,6 +643,7 @@ func (m *Matrix4) Ortho(left, right, bottom, top, near, far float64) *Matrix4 { nf = 1 / nf } + //nolint:gomnd // it's math return m.SetValues( -2*lr, 0, 0, 0, 0, -2*bt, 0, 0, @@ -688,7 +694,7 @@ func (m *Matrix4) LookAtRightHanded(eye, target, up *Vector3) *Matrix4 { return m } -// LookAt generates a look-at matrix with the given eye position, target, and up axis. +// LookAt generates a look-at matrix with the given eye position, target, and up axis. func (m *Matrix4) LookAt(eye, target, up *Vector3) *Matrix4 { ex, ey, ez := eye.XYZ() tx, ty, tz := target.XYZ() @@ -802,6 +808,7 @@ func (m *Matrix4) MultiplyToMatrix4(src, out *Matrix4) *Matrix4 { sv[8], sv[9], sv[10], sv[11], sv[12], sv[13], sv[14], sv[15] + //nolint:dupl // similar to another line in this file... return out.SetValues( b00*a00+b01*a10+b02*a20+b03*a30, b01*a01+b01*a11+b02*a21+b03*a31, diff --git a/d2common/d2math/quaternion.go b/d2common/d2math/quaternion.go index 00414198..639ab753 100644 --- a/d2common/d2math/quaternion.go +++ b/d2common/d2math/quaternion.go @@ -4,6 +4,7 @@ import "math" func qNoop(_ *Quaternion) { /* no operation, the default OnChangeCallback */ } +// NewQuaternion returns a new Quaternion func NewQuaternion(x, y, z, w float64) *Quaternion { return &Quaternion{ X: x, @@ -24,7 +25,7 @@ type Quaternion struct { } // XY returns the x and y components of the quaternion -func (q *Quaternion) XY() (float64, float64) { +func (q *Quaternion) XY() (x, y float64) { return q.X, q.Y } @@ -147,7 +148,8 @@ func (q *Quaternion) Lerp(other *Quaternion, t float64) *Quaternion { func (q *Quaternion) RotationTo(a, b *Vector3) *Quaternion { dot := a.Dot(b) - if dot < (-1 + Epsilon) { + switch { + case dot < (-1 + Epsilon): tmpVec, xunit, yunit := NewVector3(0, 0, 0), NewVector3Right(), NewVector3Down() if tmpVec.Copy(xunit).Cross(a).Length() < Epsilon { @@ -157,9 +159,9 @@ func (q *Quaternion) RotationTo(a, b *Vector3) *Quaternion { tmpVec.Normalize() return q.SetAxisAngle(tmpVec, PI) - } else if dot > (1 - Epsilon) { + case dot > (1 - Epsilon): return q.Identity() - } else { + default: tmpVec := NewVector3(0, 0, 0).Copy(a).Cross(b) q.Set( @@ -201,7 +203,7 @@ func (q *Quaternion) Identity() *Quaternion { // SetAxisAngle sets the axis angle of this Quaternion. func (q *Quaternion) SetAxisAngle(axis *Vector3, radians float64) *Quaternion { - radians = radians / 2 + radians /= 2 s := math.Sin(radians) return q.Set( @@ -246,8 +248,10 @@ func (q *Quaternion) Slerp(other Vector4Like, t float64) *Quaternion { // calculate coefficients if (1 - cosom) > Epsilon { // standard case (slerp) - var omega = math.Acos(cosom) - var sinom = math.Sin(omega) + var ( + omega = math.Acos(cosom) + sinom = math.Sin(omega) + ) scale0 = math.Sin((1.0-t)*omega) / sinom scale1 = math.Sin(t*omega) / sinom @@ -323,6 +327,7 @@ func (q *Quaternion) CalculateW() *Quaternion { } // SetFromEuler sets this Quaternion from the given Euler, based on Euler order. +//nolint:gomnd // math func (q *Quaternion) SetFromEuler(e *Euler) *Quaternion { x, y, z := e.X/2, e.Y/2, e.Z/2 c1, c2, c3 := math.Cos(x), math.Cos(y), math.Cos(z) @@ -365,7 +370,7 @@ func (q *Quaternion) SetFromEuler(e *Euler) *Quaternion { c1*c2*c3+s1*s2*s3, ) case EulerOrderXYZ: - fallthrough + fallthrough //nolint:gocritic // it's better to be explicit and include the fallthrough to default default: q.Set( s1*c2*c3+c1*s2*s3, @@ -379,7 +384,10 @@ func (q *Quaternion) SetFromEuler(e *Euler) *Quaternion { } // SetFromRotationMatrix sets the rotation of this Quaternion from the given Matrix4. +//nolint:gomnd // math func (q *Quaternion) SetFromRotationMatrix(m4 *Matrix4) *Quaternion { + var s float64 + m11 := m4.Values[0] m12 := m4.Values[4] m13 := m4.Values[8] @@ -391,9 +399,9 @@ func (q *Quaternion) SetFromRotationMatrix(m4 *Matrix4) *Quaternion { m33 := m4.Values[10] trace := m11 + m22 + m33 - var s float64 - if trace > 0 { + switch { + case trace > 0: s = 0.5 / math.Sqrt(trace+1.0) return q.Set( @@ -402,7 +410,7 @@ func (q *Quaternion) SetFromRotationMatrix(m4 *Matrix4) *Quaternion { (m21-m12)*s, 0.25/s, ) - } else if m11 > m22 && m11 > m33 { + case m11 > m22 && m11 > m33: s = 2.0 * math.Sqrt(1.0+m11-m22-m33) return q.Set( @@ -411,7 +419,7 @@ func (q *Quaternion) SetFromRotationMatrix(m4 *Matrix4) *Quaternion { (m13+m31)/s, (m32-m23)/s, ) - } else if m22 > m33 { + case m22 > m33: s = 2.0 * math.Sqrt(1.0+m22-m11-m33) return q.Set( @@ -430,14 +438,15 @@ func (q *Quaternion) SetFromRotationMatrix(m4 *Matrix4) *Quaternion { 0.25*s, (m21-m12)/s, ) - } // FromMatrix3 converts the given Matrix into this Quaternion. +//nolint:gomnd // math func (q *Quaternion) FromMatrix3(m3 *Matrix3) *Quaternion { + var fRoot float64 + m := m3.Values fTrace := m[0] + m[4] + m[8] - var fRoot float64 siNext, tmp := []int{1, 2, 0}, []float64{0, 0, 0} diff --git a/d2common/d2math/vector2.go b/d2common/d2math/vector2.go index c9bfb00a..4c16cd5e 100644 --- a/d2common/d2math/vector2.go +++ b/d2common/d2math/vector2.go @@ -33,7 +33,7 @@ func (v *Vector2) Clone() *Vector2 { return NewVector2(v.X, v.Y) } -// Copy makes a clone of this Vector2. +// Copy copies the values from the given vector into this vector func (v *Vector2) Copy(source *Vector2) *Vector2 { return v.Set(source.X, source.Y) } @@ -136,7 +136,7 @@ func (v *Vector2) LengthSquared() float64 { return v.X*v.X + v.Y*v.Y } -// Length calculates the length (or magnitude) of this Vector. +// SetLength sets the length of the vector and returns the length (or magnitude) of this Vector. func (v *Vector2) SetLength(l float64) *Vector2 { return v.Normalize().Scale(l) } @@ -205,6 +205,7 @@ func (v *Vector2) Limit(l float64) *Vector2 { } // Reflect this Vector off a line defined by a normal. +//nolint:gomnd // math func (v *Vector2) Reflect(other *Vector2) *Vector2 { normal := other.Clone().Normalize() diff --git a/d2common/d2math/vector3.go b/d2common/d2math/vector3.go index 5657201e..a159e171 100644 --- a/d2common/d2math/vector3.go +++ b/d2common/d2math/vector3.go @@ -166,7 +166,9 @@ func (v *Vector3) SetFromMatrix4(m *Matrix4) *Vector3 { // SetFromMatrix4Column sets the components of this Vector3 from the column of the given Matrix4. func (v *Vector3) SetFromMatrix4Column(m *Matrix4, column int) *Vector3 { const m4order = 4 + column = int(Clamp(float64(column), 0, m4order-1)) + return v.SetFromSlice(m.Values[:], column*m4order) } @@ -227,7 +229,7 @@ func (v *Vector3) Distance(other *Vector3) float64 { return math.Sqrt(v.DistanceSquared(other)) } -// Length calculates the length (or magnitude) of this Vector, squared. +// LengthSquared calculates the length (or magnitude) of this Vector, squared. func (v *Vector3) LengthSquared() float64 { return v.X*v.X + v.Y*v.Y + v.Z*v.Z } @@ -391,6 +393,7 @@ func (v *Vector3) UnprojectViewMatrix(projection, world *Matrix4) *Vector3 { // be combined, i.e. projection * view * model. // After this operation, this vector's (x, y, z) components will // represent the unprojected 3D coordinate. +//nolint:gomnd // math func (v *Vector3) Unproject(viewport *Vector4, invProjectionView *Matrix4) *Vector3 { viewX := viewport.X viewY := viewport.Y diff --git a/d2common/d2math/vector4.go b/d2common/d2math/vector4.go index 55eb9dfa..897fa43b 100644 --- a/d2common/d2math/vector4.go +++ b/d2common/d2math/vector4.go @@ -2,6 +2,7 @@ package d2math import "math" +// Vector4Like is a generic interface for things like are like a Vector4 type Vector4Like interface { Vector2Like Vector3Like @@ -26,8 +27,8 @@ type Vector4 struct { X, Y, Z, W float64 } -// XYZ returns the x and y components of the vector -func (v *Vector4) XY() (float64, float64) { +// XY returns the x and y components of the vector +func (v *Vector4) XY() (x, y float64) { return v.X, v.Y } diff --git a/d2common/d2scene/node.go b/d2common/d2scene/node.go index 92dd2037..eba3a37d 100644 --- a/d2common/d2scene/node.go +++ b/d2common/d2scene/node.go @@ -45,7 +45,7 @@ func (n *Node) removeChild(m *Node) *Node { return n } - for idx := len(n.children)-1; idx >= 0; idx-- { + for idx := len(n.children) - 1; idx >= 0; idx-- { if n.children[idx] != m { continue } diff --git a/d2common/d2scene/node_test.go b/d2common/d2scene/node_test.go index 94b64b58..2b29039c 100644 --- a/d2common/d2scene/node_test.go +++ b/d2common/d2scene/node_test.go @@ -1,8 +1,9 @@ package d2scene import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" "testing" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" ) func TestNewNode(t *testing.T) { diff --git a/d2common/d2sprite/sprite.go b/d2common/d2sprite/sprite.go index 8c0e6160..4593923c 100644 --- a/d2common/d2sprite/sprite.go +++ b/d2common/d2sprite/sprite.go @@ -266,7 +266,8 @@ func (a *Sprite) GetCurrentFrameSize() (width, height int) { return width, height } -func (a *Sprite) GetCurrentFrameOffset() (int, int) { +// GetCurrentFrameOffset returns the X and Y offsets of the sprite's current frame +func (a *Sprite) GetCurrentFrameOffset() (x, y int) { f := a.directions[a.directionIndex].frames[a.frameIndex] return f.offsetX, f.offsetY } @@ -395,6 +396,7 @@ func (a *Sprite) SetColorMod(colorMod color.Color) { a.colorMod = colorMod } +// GetColorMod returns the Sprite's color mod func (a *Sprite) GetColorMod() color.Color { return a.colorMod } @@ -414,6 +416,7 @@ func (a *Sprite) SetEffect(e d2enum.DrawEffect) { a.effect = e } +// GetEffect returns the Sprite's current DrawEffect func (a *Sprite) GetEffect() d2enum.DrawEffect { return a.effect } diff --git a/d2core/d2bitmapfont/bitmap_font.go b/d2core/d2bitmapfont/bitmap_font.go index cd2caad2..418ad312 100644 --- a/d2core/d2bitmapfont/bitmap_font.go +++ b/d2core/d2bitmapfont/bitmap_font.go @@ -9,6 +9,7 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" ) +// New creates a new BitmapFont func New(s d2interface.Sprite, table []byte, col color.Color) *BitmapFont { return &BitmapFont{ Sprite: s, @@ -17,6 +18,7 @@ func New(s d2interface.Sprite, table []byte, col color.Color) *BitmapFont { } } +// Glyph is an abstraction of one glyph type Glyph struct { frame int width int diff --git a/d2core/d2bitmapfont/doc.go b/d2core/d2bitmapfont/doc.go new file mode 100644 index 00000000..f9de20be --- /dev/null +++ b/d2core/d2bitmapfont/doc.go @@ -0,0 +1,2 @@ +// Package d2bitmapfont provides all of the necessary facilities for rendering text in the UI +package d2bitmapfont diff --git a/d2core/d2button/button.go b/d2core/d2button/button.go index 9cdf71d9..eee690c2 100644 --- a/d2core/d2button/button.go +++ b/d2core/d2button/button.go @@ -17,11 +17,10 @@ type Button struct { PressedToggled d2interface.Surface Disabled d2interface.Surface } - callback buttonCallback - width, height int - enabled bool - pressed bool - toggled bool + callback buttonCallback + enabled bool + pressed bool + toggled bool } // New creates an instance of Button @@ -30,31 +29,10 @@ func New() *Button { enabled: true, } - //buttonLayout := GetLayout(t) - //btn.Layout = buttonLayout - // - //btn.normalSurface = ui.renderer.NewSurface(btn.width, btn.height) - // - //buttonSprite.SetPosition(0, 0) - //buttonSprite.SetEffect(d2enum.DrawEffectModulate) - // - //btn.createTooltip() - // - //ui.addWidget(btn) // important that this comes before prerenderStates! - // - //btn.prerenderStates(buttonSprite, &buttonLayout, lbl) - return btn } -type buttonStateDescriptor struct { - baseFrame int - offsetX, offsetY int - prerenderdestination *d2interface.Surface - fmtErr string -} - -// this is some jank shit, and if things go wrong you should suspect this func first +// GetButtonSize - this is some jank shit, and if things go wrong you should suspect this func first func (v *Button) GetButtonSize() (w, h int) { if v.Sprite == nil { return 0, 0 @@ -117,7 +95,7 @@ func (v *Button) GetToggled() bool { return v.toggled } -// Advance advances the button state +// GetCurrentTexture returns the relevant Surface, depending on the button's state func (v *Button) GetCurrentTexture() d2interface.Surface { if !v.enabled { return v.Surfaces.Disabled diff --git a/d2core/d2button/button_layouts.go b/d2core/d2button/button_layouts.go index 46c1d6d6..ce07f342 100644 --- a/d2core/d2button/button_layouts.go +++ b/d2core/d2button/button_layouts.go @@ -7,18 +7,18 @@ import ( // ButtonLayout defines the type of buttons type ButtonLayout struct { - SpritePath string - PalettePath string - FontPath string - ClickableRect *rectangle.Rectangle - XSegments int - YSegments int - BaseFrame int - DisabledFrame int - DisabledColor uint32 - TextOffset int - FixedWidth int - FixedHeight int + SpritePath string + PalettePath string + FontPath string + ClickableRect *rectangle.Rectangle + XSegments int + YSegments int + BaseFrame int + DisabledFrame int + DisabledColor uint32 + TextOffset int + FixedWidth int + FixedHeight int LabelColor uint32 Toggleable bool AllowFrameChange bool @@ -94,17 +94,12 @@ const ( buttonGoldCoinSegmentsY = 1 buttonGoldCoinDisabledFrame = -1 - pressedButtonOffset = 2 + pressedButtonOffset = 1 // nolint:varcheck,deadcode,unused // will be used eventually ) -// nolint:funlen // cant reduce +// GetLayout is a wrapper around GetLayouts for retrieving a specific layout (note: not necessary, can be removed) +// nolint:funlen // will not be hard-coded in here forever, can't really reduce this right now func GetLayout(t ButtonType) ButtonLayout { - layouts := GetLayouts() - - return layouts[t] -} - -func GetLayouts() map[ButtonType]ButtonLayout { const ( buyButtonBaseFrame = 2 // base frame offset of the "buy" button dc6 sellButtonBaseFrame = 4 // base frame offset of the "sell" button dc6 @@ -118,7 +113,7 @@ func GetLayouts() map[ButtonType]ButtonLayout { squelchChatButtonBaseFrame = 20 // base frame offset of the "?" button dc6 ) - return map[ButtonType]ButtonLayout{ + layouts := map[ButtonType]ButtonLayout{ ButtonTypeWide: { XSegments: buttonWideSegmentsX, YSegments: buttonWideSegmentsY, @@ -631,4 +626,6 @@ func GetLayouts() map[ButtonType]ButtonLayout { LabelColor: whiteAlpha100, }, } + + return layouts[t] } diff --git a/d2core/d2button/button_states.go b/d2core/d2button/button_states.go index 5251c526..f4ad3c7b 100644 --- a/d2core/d2button/button_states.go +++ b/d2core/d2button/button_states.go @@ -1,12 +1,8 @@ package d2button -type ButtonState int - - // ButtonStates const ( ButtonStatePressed = iota + 1 ButtonStateToggled ButtonStatePressedToggled ) - diff --git a/d2core/d2button/button_tooltips.go b/d2core/d2button/button_tooltips.go index dd584c7a..f60f2397 100644 --- a/d2core/d2button/button_tooltips.go +++ b/d2core/d2button/button_tooltips.go @@ -1,7 +1,7 @@ package d2button const ( - buttonTooltipNone int = iota + buttonTooltipNone int = iota // nolint:varcheck,deadcode // will be used eventually buttonTooltipClose buttonTooltipOk buttonTooltipBuy diff --git a/d2core/d2button/doc.go b/d2core/d2button/doc.go new file mode 100644 index 00000000..84dae347 --- /dev/null +++ b/d2core/d2button/doc.go @@ -0,0 +1,2 @@ +// Package d2button provides all of the necessary facilities for creating buttons in the UI +package d2button diff --git a/d2core/d2checkbox/checkbox.go b/d2core/d2checkbox/checkbox.go index 491834ae..d9546f77 100644 --- a/d2core/d2checkbox/checkbox.go +++ b/d2core/d2checkbox/checkbox.go @@ -1,27 +1,31 @@ package d2checkbox import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" + "github.com/gravestench/akara" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2label" - "github.com/gravestench/akara" - "image/color" - "math/rand" +) + +// set up defaults +const ( + CheckboxDefaultTextOffset = 18 + CheckboxDefaultWidth = 16 + CheckboxDefaultHeight = 15 ) type callbackFunc = func(this akara.Component) (preventPropagation bool) -// Button defines a standard wide UI button +// Checkbox defines a standard wide UI button type Checkbox struct { - Layout CheckboxLayout - Sprite d2interface.Sprite - Label *d2label.Label - callback callbackFunc - width, height int - pressed bool - enabled bool + Layout CheckboxLayout + Sprite d2interface.Sprite + Label *d2label.Label + callback callbackFunc + pressed bool + enabled bool } // CheckboxLayout defines the type of buttons @@ -58,6 +62,7 @@ func New() *Checkbox { return checkbox } +// GetDefaultLayout returns the default layout of a checkbox. func GetDefaultLayout() CheckboxLayout { return CheckboxLayout{ X: 0, @@ -70,9 +75,9 @@ func GetDefaultLayout() CheckboxLayout { BaseFrame: 0, DisabledFrame: -1, DisabledColor: lightGreyAlpha75, - TextOffset: 18, - FixedWidth: 16, - FixedHeight: 15, + TextOffset: CheckboxDefaultTextOffset, + FixedWidth: CheckboxDefaultWidth, + FixedHeight: CheckboxDefaultHeight, LabelColor: goldAlpha100, Toggleable: true, AllowFrameChange: true, @@ -116,35 +121,35 @@ func (v *Checkbox) SetEnabled(enabled bool) { v.enabled = enabled } -// GetChecked returns the enabled state +// GetPressed returns the enabled state func (v *Checkbox) GetPressed() bool { return v.pressed } -// SetEnabled sets the enabled state +// SetPressed sets the enabled state func (v *Checkbox) SetPressed(pressed bool) { v.pressed = pressed } +// Update updates the checkbox's sprite in accordance with the checkbox's current state. +// This ensures that the checkbox rendered in the UI accurately reflects the state of the checkbox. func (v *Checkbox) Update() { if v.Sprite == nil { return } - if v.GetEnabled() && v.GetPressed() { + switch { + case v.GetEnabled() && v.GetPressed(): // checked, enabled _ = v.Sprite.SetCurrentFrame(1) - } else if v.GetEnabled() { + case v.GetEnabled(): // unchecked, enabled _ = v.Sprite.SetCurrentFrame(0) - } else if v.GetPressed() { + case v.GetPressed(): // checked, disabled _ = v.Sprite.SetCurrentFrame(1) - v.Sprite.SetColorMod(color.RGBA{R: uint8(rand.Uint32() % 255), B: uint8(rand.Uint32() % 255), G: uint8(rand.Uint32() % 255), A: 0xff}) - v.Sprite.SetEffect(d2enum.DrawEffectPctTransparency25) - } else { + default: // unchecked, disabled _ = v.Sprite.SetCurrentFrame(0) - v.Sprite.SetColorMod(color.RGBA{R: uint8(rand.Uint32() % 255), B: uint8(rand.Uint32() % 255), G: uint8(rand.Uint32() % 255), A: 0xff}) } } diff --git a/d2core/d2checkbox/colors.go b/d2core/d2checkbox/colors.go index cd15f4cb..2bcc0551 100644 --- a/d2core/d2checkbox/colors.go +++ b/d2core/d2checkbox/colors.go @@ -1,8 +1,6 @@ package d2checkbox const ( - greyAlpha100 = 0x646464ff lightGreyAlpha75 = 0x808080c3 - whiteAlpha100 = 0xffffffff goldAlpha100 = 0xc7_b3_77_ff ) diff --git a/d2core/d2checkbox/doc.go b/d2core/d2checkbox/doc.go new file mode 100644 index 00000000..12af774d --- /dev/null +++ b/d2core/d2checkbox/doc.go @@ -0,0 +1,2 @@ +// Package d2checkbox provides all of the necessary facilities for creating checkboxes in the UI +package d2checkbox diff --git a/d2core/d2components/bitmap_font.go b/d2core/d2components/bitmap_font.go index 8535872f..f30adeba 100644 --- a/d2core/d2components/bitmap_font.go +++ b/d2core/d2components/bitmap_font.go @@ -1,3 +1,4 @@ +//nolint:dupl,golint,stylecheck // component declarations are supposed to look the same package d2components import ( @@ -39,4 +40,3 @@ func (m *BitmapFontFactory) Get(id akara.EID) (*BitmapFont, bool) { return component.(*BitmapFont), found } - diff --git a/d2core/d2components/camera.go b/d2core/d2components/camera.go index 0c3a3a8e..073371ab 100644 --- a/d2core/d2components/camera.go +++ b/d2core/d2components/camera.go @@ -12,7 +12,7 @@ const ( defaultCameraHeight = 600 defaultCameraNear = -100 defaultCameraFar = 100 - defaultCameraZ = -200 + defaultCameraZ = -200 //nolint:varcheck,deadcode // unused for now ) // static check that Camera implements Component @@ -30,8 +30,8 @@ type Camera struct { // The camera defaults to position (0,0), 800x600 resolution, and zoom of 1.0 func (*Camera) New() akara.Component { c := &Camera{ - Size: d2math.NewVector2(defaultCameraWidth, defaultCameraHeight), - Clip: d2math.NewVector2(defaultCameraNear, defaultCameraFar), + Size: d2math.NewVector2(defaultCameraWidth, defaultCameraHeight), + Clip: d2math.NewVector2(defaultCameraNear, defaultCameraFar), } w, h := c.Size.XY() @@ -39,7 +39,7 @@ func (*Camera) New() akara.Component { c.PerspectiveMatrix = d2math.NewMatrix4(nil).PerspectiveLH(w, h, n, f) - l, r, t, b := -(w / 2), w/2, -(h / 2), h/2 + l, r, t, b := -(w / 2), w/2, -(h / 2), h/2 //nolint:gomnd // halving things c.OrthogonalMatrix = d2math.NewMatrix4(nil).Ortho(l, r, t, b, n, f) diff --git a/d2core/d2components/dirty.go b/d2core/d2components/dirty.go index e5d599c3..222f308f 100644 --- a/d2core/d2components/dirty.go +++ b/d2core/d2components/dirty.go @@ -9,7 +9,7 @@ import ( var _ akara.Component = &Dirty{} // Dirty is a flag component that is used to denote a "dirty" state -type Dirty struct {} +type Dirty struct{} // New creates a new Dirty. By default, IsDirty is false. func (*Dirty) New() akara.Component { diff --git a/d2core/d2components/draw_effect.go b/d2core/d2components/draw_effect.go index f3234175..89806150 100644 --- a/d2core/d2components/draw_effect.go +++ b/d2core/d2components/draw_effect.go @@ -1,8 +1,10 @@ +//nolint:dupl,golint,stylecheck // component declarations are supposed to look the same package d2components import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" ) // static check that DrawEffect implements Component diff --git a/d2core/d2components/file_loaded.go b/d2core/d2components/file_loaded.go index 888a2feb..df91473b 100644 --- a/d2core/d2components/file_loaded.go +++ b/d2core/d2components/file_loaded.go @@ -9,7 +9,7 @@ import ( var _ akara.Component = &FileLoaded{} // FileLoaded is used to flag file entities as having been loaded. it is an empty struct. -type FileLoaded struct {} +type FileLoaded struct{} // New returns a FileLoaded component. By default, it contains an empty string. func (*FileLoaded) New() akara.Component { diff --git a/d2core/d2components/interactive.go b/d2core/d2components/interactive.go index 72e7703b..7ec55277 100644 --- a/d2core/d2components/interactive.go +++ b/d2core/d2components/interactive.go @@ -1,9 +1,10 @@ package d2components import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" "github.com/gravestench/akara" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" ) diff --git a/d2core/d2components/locale.go b/d2core/d2components/locale.go index 98f425f0..55e120b3 100644 --- a/d2core/d2components/locale.go +++ b/d2core/d2components/locale.go @@ -10,7 +10,7 @@ var _ akara.Component = &Locale{} // Locale represents a file as a path type Locale struct { - Code byte + Code byte String string } diff --git a/d2core/d2components/ready.go b/d2core/d2components/ready.go index d78d0de6..a85b7e14 100644 --- a/d2core/d2components/ready.go +++ b/d2core/d2components/ready.go @@ -10,7 +10,7 @@ var _ akara.Component = &Ready{} // Ready is used to signify when a UI component is ready to be used. // (files are loaded, surfaces rendered) -type Ready struct {} +type Ready struct{} // New returns a Ready component. This component is an empty tag component. func (*Ready) New() akara.Component { diff --git a/d2core/d2components/rectangle.go b/d2core/d2components/rectangle.go index 292b958e..996b75f7 100644 --- a/d2core/d2components/rectangle.go +++ b/d2core/d2components/rectangle.go @@ -2,8 +2,9 @@ package d2components import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" ) // static check that Rectangle implements Component diff --git a/d2core/d2components/scene_graph_node.go b/d2core/d2components/scene_graph_node.go index 5a067e74..cf0d4ac0 100644 --- a/d2core/d2components/scene_graph_node.go +++ b/d2core/d2components/scene_graph_node.go @@ -1,3 +1,4 @@ +//nolint:dupl,golint,stylecheck // component declarations are supposed to look the same package d2components import ( diff --git a/d2core/d2components/size.go b/d2core/d2components/size.go index 918ba988..3ede0f44 100644 --- a/d2core/d2components/size.go +++ b/d2core/d2components/size.go @@ -2,8 +2,9 @@ package d2components import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" ) // static check that Size implements Component diff --git a/d2core/d2components/transform.go b/d2core/d2components/transform.go index 74b20296..1f8734e6 100644 --- a/d2core/d2components/transform.go +++ b/d2core/d2components/transform.go @@ -13,8 +13,8 @@ var _ akara.Component = &Transform{} // Transform contains a vec3 for Translation, Rotation, and Scale type Transform struct { Translation *d2math.Vector3 - Rotation *d2math.Vector3 - Scale *d2math.Vector3 + Rotation *d2math.Vector3 + Scale *d2math.Vector3 } func (t *Transform) GetMatrix() *d2math.Matrix4 { @@ -30,8 +30,8 @@ func (t *Transform) GetMatrix() *d2math.Matrix4 { func (*Transform) New() akara.Component { return &Transform{ Translation: d2math.NewVector3(0, 0, 0), - Rotation: d2math.NewVector3(0, 0, 0), - Scale: d2math.NewVector3(1, 1, 1), + Rotation: d2math.NewVector3(0, 0, 0), + Scale: d2math.NewVector3(1, 1, 1), } } diff --git a/d2core/d2components/ui_checkbox.go b/d2core/d2components/ui_checkbox.go index 8d190582..07299726 100644 --- a/d2core/d2components/ui_checkbox.go +++ b/d2core/d2components/ui_checkbox.go @@ -2,8 +2,9 @@ package d2components import ( - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" ) // static check that Checkbox implements Component diff --git a/d2core/d2label/doc.go b/d2core/d2label/doc.go new file mode 100644 index 00000000..7fb2d17d --- /dev/null +++ b/d2core/d2label/doc.go @@ -0,0 +1,2 @@ +// Package d2label provides all of the necessary facilities for creating labels in the UI +package d2label diff --git a/d2core/d2label/label.go b/d2core/d2label/label.go index 425c3d72..f00e8c33 100644 --- a/d2core/d2label/label.go +++ b/d2core/d2label/label.go @@ -1,11 +1,12 @@ package d2label import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "image/color" "regexp" "strings" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2bitmapfont" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2ui" @@ -14,14 +15,14 @@ import ( // New creates a new label, initializing the unexported fields func New() *Label { return &Label{ - colors: map[int]color.Color{0: color.White}, + colors: map[int]color.Color{0: color.White}, backgroundColor: color.Transparent, } } // Label represents a user interface label type Label struct { - dirty bool // used to flag when to re-render the label + dirty bool // used to flag when to re-render the label text string // has color tokens rawText string // unmodified text Alignment d2ui.HorizontalAlign @@ -30,6 +31,7 @@ type Label struct { backgroundColor color.Color } +// Render renders the label on the given Surface func (v *Label) Render(target d2interface.Surface) { lines := strings.Split(v.text, "\n") yOffset := 0 @@ -107,7 +109,7 @@ func (v *Label) SetBackgroundColor(c color.Color) { r1, g1, b1, a1 := c.RGBA() r2, g2, b2, a2 := v.backgroundColor.RGBA() - if (r1==r2) && (g1==g2) && (b1==b2) && (a1==a2) { + if (r1 == r2) && (g1 == g2) && (b1 == b2) && (a1 == a2) { return } @@ -155,6 +157,7 @@ func (v *Label) processColorTokens(str string) string { return withoutTokens } +// GetAlignOffset returns the offset necessary to render the label with its set alignment func (v *Label) GetAlignOffset(textWidth int) int { switch v.Alignment { case d2ui.HorizontalAlignLeft: diff --git a/d2core/d2render/ebiten/ebiten_renderer.go b/d2core/d2render/ebiten/ebiten_renderer.go index faa0f528..f50bc665 100644 --- a/d2core/d2render/ebiten/ebiten_renderer.go +++ b/d2core/d2render/ebiten/ebiten_renderer.go @@ -183,3 +183,8 @@ func (r *Renderer) ShowPanicScreen(message string) { panic(err) } } + +// GetWindowSize returns the current window resolution +func (r *Renderer) GetWindowSize() (w, h int) { + return ebiten.WindowSize() +} diff --git a/d2core/d2systems/app_bootstrap.go b/d2core/d2systems/app_bootstrap.go index b4ba9fce..4363fef4 100644 --- a/d2core/d2systems/app_bootstrap.go +++ b/d2core/d2systems/app_bootstrap.go @@ -2,13 +2,15 @@ package d2systems import ( "fmt" - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" - "github.com/pkg/profile" - "gopkg.in/alecthomas/kingpin.v2" "os" "path" "strings" + "github.com/pkg/profile" + "gopkg.in/alecthomas/kingpin.v2" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" + "github.com/gravestench/akara" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" @@ -126,6 +128,7 @@ func (m *AppBootstrap) setupSubscriptions() { m.subscribedConfigs = m.World.AddSubscription(gameConfigs) } +// nolint:dupl // setting up component factories looks very similar across different systems func (m *AppBootstrap) setupFactories() { m.Debug("setting up component factories") diff --git a/d2core/d2systems/asset_loader.go b/d2core/d2systems/asset_loader.go index 5d8134a3..eb6e9df0 100644 --- a/d2core/d2systems/asset_loader.go +++ b/d2core/d2systems/asset_loader.go @@ -1,10 +1,11 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "io" "time" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" + "github.com/gravestench/akara" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2cache" @@ -43,32 +44,32 @@ var _ akara.System = &AssetLoaderSystem{} type AssetLoaderSystem struct { akara.BaseSubscriberSystem *d2util.Logger - fileSub *akara.Subscription - sourceSub *akara.Subscription - gameConfigs *akara.Subscription - cache *d2cache.Cache + fileSub *akara.Subscription + sourceSub *akara.Subscription + gameConfigs *akara.Subscription + cache *d2cache.Cache localeString string // related to file "/data/local/use" - Components struct { - File d2components.FileFactory - FileType d2components.FileTypeFactory - FileHandle d2components.FileHandleFactory - FileSource d2components.FileSourceFactory - GameConfig d2components.GameConfigFactory - StringTable d2components.StringTableFactory - FontTable d2components.FontTableFactory - DataDictionary d2components.DataDictionaryFactory - Palette d2components.PaletteFactory + Components struct { + File d2components.FileFactory + FileType d2components.FileTypeFactory + FileHandle d2components.FileHandleFactory + FileSource d2components.FileSourceFactory + GameConfig d2components.GameConfigFactory + StringTable d2components.StringTableFactory + FontTable d2components.FontTableFactory + DataDictionary d2components.DataDictionaryFactory + Palette d2components.PaletteFactory PaletteTransform d2components.PaletteTransformFactory - Cof d2components.CofFactory - Dc6 d2components.Dc6Factory - Dcc d2components.DccFactory - Ds1 d2components.Ds1Factory - Dt1 d2components.Dt1Factory - Wav d2components.WavFactory - AnimationData d2components.AnimationDataFactory - Locale d2components.LocaleFactory - BitmapFont d2components.BitmapFontFactory - FileLoaded d2components.FileLoadedFactory + Cof d2components.CofFactory + Dc6 d2components.Dc6Factory + Dcc d2components.DccFactory + Ds1 d2components.Ds1Factory + Dt1 d2components.Dt1Factory + Wav d2components.WavFactory + AnimationData d2components.AnimationDataFactory + Locale d2components.LocaleFactory + BitmapFont d2components.BitmapFontFactory + FileLoaded d2components.FileLoadedFactory } } @@ -149,6 +150,7 @@ func (m *AssetLoaderSystem) Update() { for _, eid := range m.fileSub.GetEntities() { m.loadAsset(eid) + if time.Since(start) > maxTimePerUpdate { break } @@ -249,7 +251,7 @@ func (m *AssetLoaderSystem) assignFromCache(id akara.EID, path string, t d2enum. return found } -//nolint:gocyclo // this big switch statement is unfortunate, but necessary +//nolint:gocyclo,funlen // this big switch statement is unfortunate, but necessary func (m *AssetLoaderSystem) parseAndCache(id akara.EID, path string, t d2enum.FileType, data []byte) { switch t { case d2enum.FileTypeStringTable: diff --git a/d2core/d2systems/file_handle_resolver.go b/d2core/d2systems/file_handle_resolver.go index 195d61f9..a4f8126d 100644 --- a/d2core/d2systems/file_handle_resolver.go +++ b/d2core/d2systems/file_handle_resolver.go @@ -1,9 +1,10 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "strings" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" @@ -41,20 +42,20 @@ const ( type FileHandleResolver struct { akara.BaseSubscriberSystem *d2util.Logger - cache *d2cache.Cache - filesToLoad *akara.Subscription - sourcesToUse *akara.Subscription - localesToCheck *akara.Subscription - locale struct { + cache *d2cache.Cache + filesToLoad *akara.Subscription + sourcesToUse *akara.Subscription + localesToCheck *akara.Subscription + locale struct { charset string language string } Components struct { - File d2components.FileFactory - FileType d2components.FileTypeFactory + File d2components.FileFactory + FileType d2components.FileTypeFactory FileSource d2components.FileSourceFactory FileHandle d2components.FileHandleFactory - Locale d2components.LocaleFactory + Locale d2components.LocaleFactory } } @@ -106,6 +107,7 @@ func (m *FileHandleResolver) setupSubscriptions() { m.localesToCheck = m.World.AddSubscription(localesToCheck) } +// nolint:dupl // setting up component factories looks very similar across different systems func (m *FileHandleResolver) setupFactories() { m.Debug("setting up component factories") @@ -128,7 +130,7 @@ func (m *FileHandleResolver) Update() { for _, eid := range locales { locale, _ := m.Components.Locale.Get(eid) m.locale.language = locale.String - m.locale.charset = d2resource.GetFontCharset(locale.String) + m.locale.charset = d2resource.GetFontCharset(locale.String) m.RemoveEntity(eid) } @@ -146,8 +148,10 @@ func (m *FileHandleResolver) Update() { } } -// try to load a file with a source, returns true if loaded +// try to load a file with a source, returns true if successfully loaded from either +// the filesystem or from the cache func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool { + // verify file and source exist fp, found := m.Components.File.Get(fileID) if !found { return false @@ -175,11 +179,17 @@ func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool fp.Path = strings.ReplaceAll(fp.Path, d2resource.LanguageTableToken, m.locale.language) } - cacheKey := m.makeCacheKey(fp.Path, sourceFp.Path) - if entry, found := m.cache.Retrieve(cacheKey); found { - component := m.Components.FileHandle.Add(fileID) - component.Data = entry.(d2interface.DataStream) + if m.loadFile(fileID, ft, fp, sourceFp, source) { + return true + } + return true +} + +func (m *FileHandleResolver) loadFile(fileID akara.EID, fileType *d2components.FileType, + fp, sourceFp *d2components.File, source *d2components.FileSource) bool { + // check the cache first + if m.fileIsLoaded(fileID, fp.Path, sourceFp.Path) { return true } @@ -187,7 +197,7 @@ func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool if err != nil { // HACK: sound environment stuff doesnt specify the path, just the filename // so we gotta check this edge case - if ft.Type != d2enum.FileTypeWAV { + if fileType.Type != d2enum.FileTypeWAV { return false } @@ -198,12 +208,8 @@ func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool tryPath := strings.ReplaceAll(fp.Path, "sfx", "music") tmpComponent := &d2components.File{Path: tryPath} - cacheKey = m.makeCacheKey(tryPath, sourceFp.Path) - if entry, found := m.cache.Retrieve(cacheKey); found { - component := m.Components.FileHandle.Add(fileID) - component.Data = entry.(d2interface.DataStream) + if m.fileIsLoaded(fileID, tryPath, sourceFp.Path) { fp.Path = tryPath - return true } @@ -220,6 +226,7 @@ func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool component := m.Components.FileHandle.Add(fileID) component.Data = data + cacheKey := m.makeCacheKey(fp.Path, sourceFp.Path) if err := m.cache.Insert(cacheKey, data, fileHandleCacheEntryWeight); err != nil { m.Error(err.Error()) } @@ -231,3 +238,16 @@ func (m *FileHandleResolver) makeCacheKey(path, source string) string { const sep = "->" return strings.Join([]string{source, path}, sep) } + +// check if the given file is already cached +func (m *FileHandleResolver) fileIsLoaded(fileID akara.EID, path, source string) bool { + cacheKey := m.makeCacheKey(path, source) + if entry, found := m.cache.Retrieve(cacheKey); found { + component := m.Components.FileHandle.Add(fileID) + component.Data = entry.(d2interface.DataStream) + + return true + } + + return false +} diff --git a/d2core/d2systems/file_source_resolver.go b/d2core/d2systems/file_source_resolver.go index 21734c4d..f55b7fcc 100644 --- a/d2core/d2systems/file_source_resolver.go +++ b/d2core/d2systems/file_source_resolver.go @@ -25,10 +25,10 @@ const ( type FileSourceResolver struct { akara.BaseSubscriberSystem *d2util.Logger - filesToCheck *akara.Subscription - Components struct { - File d2components.FileFactory - FileType d2components.FileTypeFactory + filesToCheck *akara.Subscription + Components struct { + File d2components.FileFactory + FileType d2components.FileTypeFactory FileSource d2components.FileSourceFactory } } diff --git a/d2core/d2systems/file_type_resolver.go b/d2core/d2systems/file_type_resolver.go index b3f8b479..95ba97ad 100644 --- a/d2core/d2systems/file_type_resolver.go +++ b/d2core/d2systems/file_type_resolver.go @@ -1,11 +1,12 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" "os" "path/filepath" "strings" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/gravestench/akara" @@ -31,8 +32,8 @@ type FileTypeResolver struct { akara.BaseSubscriberSystem *d2util.Logger filesToCheck *akara.Subscription - Components struct { - File d2components.FileFactory + Components struct { + File d2components.FileFactory FileType d2components.FileTypeFactory } } diff --git a/d2core/d2systems/game_client_bootstrap.go b/d2core/d2systems/game_client_bootstrap.go index 060c2c8c..f430c0f4 100644 --- a/d2core/d2systems/game_client_bootstrap.go +++ b/d2core/d2systems/game_client_bootstrap.go @@ -1,9 +1,10 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/gravestench/akara" "gopkg.in/alecthomas/kingpin.v2" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) const ( diff --git a/d2core/d2systems/game_config.go b/d2core/d2systems/game_config.go index 88931ce2..563ade3a 100644 --- a/d2core/d2systems/game_config.go +++ b/d2core/d2systems/game_config.go @@ -33,13 +33,13 @@ type GameConfigSystem struct { *d2util.Logger filesToCheck *akara.Subscription gameConfigs *akara.Subscription - Components struct { + Components struct { GameConfig d2components.GameConfigFactory - File d2components.FileFactory - FileType d2components.FileTypeFactory + File d2components.FileFactory + FileType d2components.FileTypeFactory FileHandle d2components.FileHandleFactory FileSource d2components.FileSourceFactory - Dirty d2components.DirtyFactory + Dirty d2components.DirtyFactory } activeConfig *d2components.GameConfig } diff --git a/d2core/d2systems/game_object_factory.go b/d2core/d2systems/game_object_factory.go index 8ba973fc..b9219d34 100644 --- a/d2core/d2systems/game_object_factory.go +++ b/d2core/d2systems/game_object_factory.go @@ -19,8 +19,8 @@ type GameObjectFactory struct { akara.BaseSystem *d2util.Logger Sprites *SpriteFactory - Shapes *ShapeSystem - UI *UIWidgetFactory + Shapes *ShapeSystem + UI *UIWidgetFactory } // Init will initialize the Game Object Factory by injecting all of the factory subsystems into the world diff --git a/d2core/d2systems/movement.go b/d2core/d2systems/movement.go index def28952..f1b78fc7 100644 --- a/d2core/d2systems/movement.go +++ b/d2core/d2systems/movement.go @@ -22,9 +22,9 @@ type MovementSystem struct { akara.BaseSubscriberSystem *d2util.Logger movableEntities *akara.Subscription - Components struct { + Components struct { Transform d2components.TransformFactory - Velocity d2components.VelocityFactory + Velocity d2components.VelocityFactory } } diff --git a/d2core/d2systems/render.go b/d2core/d2systems/render.go index 3ef09891..bc44518c 100644 --- a/d2core/d2systems/render.go +++ b/d2core/d2systems/render.go @@ -221,6 +221,7 @@ func (m *RenderSystem) updateWorld() error { return m.World.Update(elapsed) } +// StartGameLoop starts the game loop func (m *RenderSystem) StartGameLoop() error { m.Info("starting game loop ...") diff --git a/d2core/d2systems/scene_base.go b/d2core/d2systems/scene_base.go index a50bed49..fb9258b8 100644 --- a/d2core/d2systems/scene_base.go +++ b/d2core/d2systems/scene_base.go @@ -452,6 +452,7 @@ func (s *BaseScene) renderViewportsToMainViewport() { } } +// RegisterTerminalCommand registers a command that can be executed from the terminal func (s *BaseScene) RegisterTerminalCommand(name, desc string, fn interface{}) { regID := s.NewEntity() reg := s.Components.CommandRegistration.Add(regID) diff --git a/d2core/d2systems/scene_ebiten_splash.go b/d2core/d2systems/scene_ebiten_splash.go index 4d7e978b..ca6d742d 100644 --- a/d2core/d2systems/scene_ebiten_splash.go +++ b/d2core/d2systems/scene_ebiten_splash.go @@ -1,11 +1,13 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" - "github.com/gravestench/akara" "image/color" "math" + "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" ) @@ -15,7 +17,7 @@ const ( const ( splashDelaySeconds = 0.5 - splashTimeout = 3 + splashTimeout = 3 ) // static check that EbitenSplashScene implements the scene interface @@ -26,7 +28,7 @@ var _ d2interface.Scene = &EbitenSplashScene{} func NewEbitenSplashScene() *EbitenSplashScene { scene := &EbitenSplashScene{ BaseScene: NewBaseScene(sceneKeyEbitenSplash), - delay: splashDelaySeconds, + delay: splashDelaySeconds, } scene.backgroundColor = color.Black @@ -37,10 +39,10 @@ func NewEbitenSplashScene() *EbitenSplashScene { // EbitenSplashScene represents the in-game terminal for typing commands type EbitenSplashScene struct { *BaseScene - booted bool - squares []akara.EID + booted bool + squares []akara.EID timeElapsed float64 - delay float64 + delay float64 } // Init the terminal @@ -105,7 +107,7 @@ func (s *EbitenSplashScene) createSplash() { size := 10 totalW, totalH := len(flags[0])*size, len(flags)*size - ox, oy := (800-totalW)/2, (600-totalH)/2 + ox, oy := (800-totalW)/2, (600-totalH)/2 //nolint:gomnd // halving things... for y, row := range flags { for x, col := range row { @@ -148,6 +150,7 @@ func (s *EbitenSplashScene) updateSplash() { if s.timeElapsed >= splashTimeout { vpAlpha, _ := s.Components.Alpha.Get(s.Viewports[0]) vpAlpha.Alpha -= 0.0425 + if vpAlpha.Alpha <= 0 { vpAlpha.Alpha = 0 @@ -161,8 +164,9 @@ func (s *EbitenSplashScene) updateSplash() { // fade all of the squares for idx, id := range s.squares { - a := math.Sin(s.timeElapsed*2 + -90 + (float64(idx)/numSquares)) - a = (a+1)/2 // clamp between 0..1 + a := math.Sin(s.timeElapsed*2 + -90 + (float64(idx) / numSquares)) + // clamp between 0..1 + a = (a + 1) / 2 //nolint:gomnd // halving things alpha, found := s.Components.Alpha.Get(id) if !found { diff --git a/d2core/d2systems/scene_loading_screen.go b/d2core/d2systems/scene_loading_screen.go index b67fab8f..463402cb 100644 --- a/d2core/d2systems/scene_loading_screen.go +++ b/d2core/d2systems/scene_loading_screen.go @@ -155,6 +155,7 @@ func (s *LoadingScene) updateLoadProgress() { s.progress = 1 - ((untyped + unhandled + unparsed) / 3 / loaded) } +//nolint:gomnd // arbitrary numbers for test scene func (s *LoadingScene) updateViewportAlpha() { if len(s.Viewports) < 1 { return @@ -196,15 +197,15 @@ func (s *LoadingScene) updateLoadingSpritePosition() { return } - centerX, centerY := viewport.Width/2, viewport.Height/2 + centerX, centerY := viewport.Width/2, viewport.Height/2 //nolint:gomnd // divide by two to get half, self-explanatory frameW, frameH := sprite.GetCurrentFrameSize() // we add the frameH in the Y because sprites are supposed to be drawn from bottom to top transform.Translation.Set( - float64(centerX-(frameW/2)), - float64(centerY+(frameH/2)), + float64(centerX-(frameW/2)), //nolint:gomnd // halving things... + float64(centerY+(frameH/2)), //nolint:gomnd // halving things... transform.Translation.Z, - ) + ) } func (s *LoadingScene) updateLoadingSpriteFrame() { diff --git a/d2core/d2systems/scene_main_menu.go b/d2core/d2systems/scene_main_menu.go index 78409545..a8a31e7b 100644 --- a/d2core/d2systems/scene_main_menu.go +++ b/d2core/d2systems/scene_main_menu.go @@ -15,6 +15,7 @@ const ( sceneKeyMainMenu = "Main Menu" ) +//nolint:varcheck,deadcode,unused // unused for now const ( viewportMainBackground = iota + 1 viewportTrademark @@ -111,6 +112,7 @@ func (s *MainMenuScene) createButtons() { s.Debug("creating buttons") } +//nolint:gomnd // arbitrary numbers for test scene func (s *MainMenuScene) createTrademarkScreen() { s.Debug("creating trademark screen") @@ -134,12 +136,14 @@ func (s *MainMenuScene) createTrademarkScreen() { alpha := s.Components.Alpha.Add(s.sprites.trademark) go func() { + minAlphaThreshold := 1e-3 alpha.Alpha = 1.0 for alpha.Alpha > 0 { alpha.Alpha *= 0.725 - if alpha.Alpha <= 1e-3 { + if alpha.Alpha <= minAlphaThreshold { + // if it's close enough to zero, just set it to zero alpha.Alpha = 0 return } diff --git a/d2core/d2systems/scene_mouse_cursor.go b/d2core/d2systems/scene_mouse_cursor.go index 809677f2..987e1119 100644 --- a/d2core/d2systems/scene_mouse_cursor.go +++ b/d2core/d2systems/scene_mouse_cursor.go @@ -16,9 +16,9 @@ const ( const ( fadeTimeout = time.Second * 4 - fadeTime = time.Second ) +// NewMouseCursorScene creates a mouse cursor scene func NewMouseCursorScene() *MouseCursorScene { scene := &MouseCursorScene{ BaseScene: NewBaseScene(sceneKeyMouseCursor), @@ -30,17 +30,18 @@ func NewMouseCursorScene() *MouseCursorScene { // static check that MouseCursorScene implements the scene interface var _ d2interface.Scene = &MouseCursorScene{} +// MouseCursorScene is a scene that renders a mouse cursor in the window type MouseCursorScene struct { - *BaseScene - booted bool - cursor akara.EID lastTimeMoved time.Time - debug struct { + *BaseScene + cursor akara.EID + booted bool + debug struct { enabled bool } - test bool } +// Init does basic scene initialization func (s *MouseCursorScene) Init(world *akara.World) { s.World = world @@ -65,6 +66,7 @@ func (s *MouseCursorScene) createMouseCursor() { s.cursor = s.Add.Sprite(0, 0, d2resource.CursorDefault, d2resource.PaletteUnits) } +// Update updates the state of the scene func (s *MouseCursorScene) Update() { for _, id := range s.Viewports { s.Components.Priority.Add(id).Priority = scenePriorityMouseCursor @@ -109,15 +111,15 @@ func (s *MouseCursorScene) handleCursorFade() { return } - shouldFadeOut := time.Now().Sub(s.lastTimeMoved) > fadeTimeout + shouldFadeOut := time.Since(s.lastTimeMoved) > fadeTimeout if shouldFadeOut { - alpha.Alpha = math.Max(alpha.Alpha*0.825, 0) + alpha.Alpha = math.Max(alpha.Alpha*0.825, 0) // nolint:gomnd // arbitrary example number for test scene } else { - alpha.Alpha = math.Min(alpha.Alpha+0.125, 1) + alpha.Alpha = math.Min(alpha.Alpha+0.125, 1) // nolint:gomnd // arbitrary example number for test scene } - if alpha.Alpha > 1e-1 && alpha.Alpha < 1 { + if alpha.Alpha > 1e-1 && alpha.Alpha < 1 { // nolint:gomnd // arbitrary example number for test scene switch s.debug.enabled { case true: s.Infof("fading %.2f", alpha.Alpha) diff --git a/d2core/d2systems/scene_object_factory.go b/d2core/d2systems/scene_object_factory.go index 0939cbcb..4f5880d1 100644 --- a/d2core/d2systems/scene_object_factory.go +++ b/d2core/d2systems/scene_object_factory.go @@ -1,11 +1,12 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" "image/color" "path/filepath" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2checkbox" + "github.com/gravestench/akara" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" @@ -53,6 +54,7 @@ func (s *sceneObjectFactory) Viewport(priority, width, height int) akara.EID { eid := s.NewEntity() s.Components.Viewport.Add(eid) + s.Components.Priority.Add(eid).Priority = priority if priority == mainViewport { @@ -103,7 +105,7 @@ func (s *sceneObjectFactory) Button(x, y float64, btnType d2button.ButtonType, t s.addBasicComponents(buttonEID) btnTRS := s.Components.Transform.Add(buttonEID) - btnTRS.Translation.X, btnTRS.Translation.Y = float64(x), float64(y) + btnTRS.Translation.X, btnTRS.Translation.Y = x, y btnNode := s.Components.SceneGraphNode.Add(buttonEID) @@ -129,7 +131,8 @@ func (s *sceneObjectFactory) Label(text, fontSpritePath, palettePath string) aka } // Checkbox creates a Checkbox in the scene, with an attached Label -func (s *sceneObjectFactory) Checkbox(x, y float64, checkedState bool, enabled bool, text string, callback func(akara.Component) bool) akara.EID { +func (s *sceneObjectFactory) Checkbox(x, y float64, checkedState, enabled bool, + text string, callback func(akara.Component) bool) akara.EID { checkboxEID := s.sceneSystems.UI.Checkbox(x, y, checkedState, enabled, callback) s.SceneObjects = append(s.SceneObjects, checkboxEID) diff --git a/d2core/d2systems/scene_shape_system.go b/d2core/d2systems/scene_shape_system.go index 9b92e5c7..31b85db2 100644 --- a/d2core/d2systems/scene_shape_system.go +++ b/d2core/d2systems/scene_shape_system.go @@ -29,13 +29,13 @@ type ShapeSystem struct { akara.BaseSubscriberSystem *d2util.Logger RenderSystem *RenderSystem - Components struct { + Components struct { Transform d2components.TransformFactory - Color d2components.ColorFactory + Color d2components.ColorFactory Rectangle d2components.RectangleFactory - Texture d2components.TextureFactory - Size d2components.SizeFactory - Origin d2components.OriginFactory + Texture d2components.TextureFactory + Size d2components.SizeFactory + Origin d2components.OriginFactory } loadQueue spriteLoadQueue shapesToRender *akara.Subscription @@ -90,8 +90,8 @@ func (t *ShapeSystem) Update() { } } -// ComponentFactory queues a sprite spriteation to be loaded -func (t *ShapeSystem) Rectangle(x, y, width, height int, color color.Color) akara.EID { +// Rectangle creates a rectangle to be rendered in the scene +func (t *ShapeSystem) Rectangle(x, y, width, height int, rectangleColor color.Color) akara.EID { t.Debug("creating rectangle") eid := t.NewEntity() @@ -101,7 +101,7 @@ func (t *ShapeSystem) Rectangle(x, y, width, height int, color color.Color) akar r.Width, r.Height = float64(width), float64(height) c := t.Components.Color.Add(eid) - c.Color = color + c.Color = rectangleColor texture := t.Components.Texture.Add(eid) texture.Texture = t.RenderSystem.renderer.NewSurface(width, height) diff --git a/d2core/d2systems/scene_sprite_system.go b/d2core/d2systems/scene_sprite_system.go index 38c5b7d4..7f90dbe2 100644 --- a/d2core/d2systems/scene_sprite_system.go +++ b/d2core/d2systems/scene_sprite_system.go @@ -2,10 +2,12 @@ package d2systems import ( "fmt" + "time" + + "github.com/gravestench/akara" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2cache" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2math" - "github.com/gravestench/akara" - "time" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2sprite" @@ -136,7 +138,7 @@ func (t *SpriteFactory) Update() { } } -// ComponentFactory queues a sprite spriteation to be loaded +// Sprite creates a sprite to be rendered in the scene func (t *SpriteFactory) Sprite(x, y float64, imgPath, palPath string) akara.EID { spriteID := t.NewEntity() @@ -155,7 +157,7 @@ func (t *SpriteFactory) Sprite(x, y float64, imgPath, palPath string) akara.EID return spriteID } -// ComponentFactory queues a segmented sprite spriteation to be loaded. +// SegmentedSprite queues a segmented sprite spriteation to be loaded. // A segmented sprite is a sprite that has many frames that form the entire sprite. func (t *SpriteFactory) SegmentedSprite(x, y float64, imgPath, palPath string, xseg, yseg, frame int) akara.EID { spriteID := t.Sprite(x, y, imgPath, palPath) @@ -260,6 +262,8 @@ func (t *SpriteFactory) tryRenderingSprite(eid akara.EID) { } func (t *SpriteFactory) renderSegmentedSprite(id akara.EID, seg *d2components.SegmentedSprite) { + fmtErr := "SetCurrentFrame error %s: \n\tsprite: %v\n\tframe count: %v\n\tframe tried: %v\n\t%v" + sprite, found := t.Components.Sprite.Get(id) if !found { return @@ -277,6 +281,7 @@ func (t *SpriteFactory) renderSegmentedSprite(id akara.EID, seg *d2components.Se // first, we're going to determine the width and height of the texture we need for y := 0; y < segmentsY; y++ { fullWidth = 0 + for x := 0; x < segmentsX; x++ { idx := x + y*segmentsX + frameOffset if idx >= numFrames { @@ -284,8 +289,6 @@ func (t *SpriteFactory) renderSegmentedSprite(id akara.EID, seg *d2components.Se } if err := sprite.SetCurrentFrame(idx); err != nil { - fmtErr := "SetCurrentFrame error %s: \n\tsprite: %v\n\tframe count: %v\n\tframe tried: %v\n\t%v" - t.Errorf(fmtErr, err.Error(), sprite.SpritePath, sprite.GetFrameCount(), idx, seg) } @@ -310,21 +313,13 @@ func (t *SpriteFactory) renderSegmentedSprite(id akara.EID, seg *d2components.Se } if err := sprite.SetCurrentFrame(idx); err != nil { - fmtErr := "SetCurrentFrame error %s: \n\tsprite: %v\n\tframe count: %v\n\tframe tried: %v\n\t%v" - t.Errorf(fmtErr, err.Error(), sprite.SpritePath, sprite.GetFrameCount(), idx, seg) } target.PushTranslation(x+offsetX, y+offsetY) - // TODO: PushEffect and PushColor don't seem to be working? - // see d2sprite/sprite.go for old implementation - //target.PushEffect(sprite.GetEffect()) - //target.PushColor(sprite.GetColorMod()) target.Render(sprite.GetCurrentFrameSurface()) target.Pop() - //target.Pop() - //target.Pop() frameWidth, frameHeight := sprite.GetCurrentFrameSize() maxFrameHeight = d2math.MaxInt(maxFrameHeight, frameHeight) diff --git a/d2core/d2systems/scene_test_button.go b/d2core/d2systems/scene_test_button.go index 01ca9d5d..99320a4e 100644 --- a/d2core/d2systems/scene_test_button.go +++ b/d2core/d2systems/scene_test_button.go @@ -1,9 +1,10 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" "github.com/gravestench/akara" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" ) @@ -29,7 +30,7 @@ var _ d2interface.Scene = &ButtonTestScene{} // or start the map engine test. type ButtonTestScene struct { *BaseScene - booted bool + booted bool buttons *akara.Subscription } @@ -61,7 +62,7 @@ func (s *ButtonTestScene) boot() { } func (s *ButtonTestScene) createButtons() { - s.Add.Button(100, 100, d2button.ButtonTypeBuy, "Test") + s.Add.Button(100, 100, d2button.ButtonTypeBuy, "Test") //nolint:gomnd // arbitrary example numbers for test scene } // Update the main menu scene @@ -74,7 +75,7 @@ func (s *ButtonTestScene) Update() { s.boot() } - for _, eid := range s.buttons.GetEntities() { + for _, eid := range s.buttons.GetEntities() { s.updateButtonPosition(eid) } diff --git a/d2core/d2systems/scene_test_checkbox.go b/d2core/d2systems/scene_test_checkbox.go index fbf0f16c..bee3b626 100644 --- a/d2core/d2systems/scene_test_checkbox.go +++ b/d2core/d2systems/scene_test_checkbox.go @@ -1,11 +1,13 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" - "github.com/gravestench/akara" "image/color" "log" + + "github.com/gravestench/akara" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" ) const ( @@ -53,20 +55,27 @@ func (s *CheckboxTestScene) boot() { return } + viewport, found := s.Components.Viewport.Get(s.Viewports[0]) + if !found { + return + } + s.AddSystem(NewMouseCursorScene()) - s.Add.Rectangle(0, 0, 640, 480, color.RGBA{R: 0xcc, G: 0xcc, B: 0xcc, A: 0xff}) + s.Add.Rectangle(0, 0, viewport.Width, viewport.Height, color.White) s.createCheckboxes() s.booted = true } +//nolint:gomnd // arbitrary example numbers for test func (s *CheckboxTestScene) createCheckboxes() { s.Add.Checkbox(100, 100, true, true, "Expansion character", checkboxClickCallback) s.Add.Checkbox(100, 120, false, true, "Hardcore", checkboxClickCallback) s.Add.Checkbox(100, 140, true, false, "disabled checked test", checkboxClickCallback) - s.Add.Checkbox(100, 160, false, false, "disabled unchecked test", checkboxClickCallback) + s.Add.Checkbox(100, 160, false, false, "disabled unchecked test", + checkboxClickCallback) } // Update the main menu scene @@ -86,6 +95,7 @@ func checkboxClickCallback(thisComponent akara.Component) bool { this := thisComponent.(*d2components.Checkbox) if this.Checkbox.GetEnabled() { text := this.Checkbox.Label.GetText() + if this.Checkbox.GetPressed() { log.Printf("%s enabled", text) } else { diff --git a/d2core/d2systems/scene_test_label.go b/d2core/d2systems/scene_test_label.go index 384cd82d..735d6413 100644 --- a/d2core/d2systems/scene_test_label.go +++ b/d2core/d2systems/scene_test_label.go @@ -33,7 +33,7 @@ var _ d2interface.Scene = &LabelTestScene{} type LabelTestScene struct { *BaseScene booted bool - labels *akara.Subscription + labels *akara.Subscription velocity d2components.VelocityFactory } @@ -62,6 +62,7 @@ func (s *LabelTestScene) boot() { s.booted = true } +//nolint:gosec,gomnd // test scene, weak RNG is fine func (s *LabelTestScene) createLabels() { fonts := []string{ d2resource.Font6, @@ -86,11 +87,15 @@ func (s *LabelTestScene) createLabels() { c := s.Components.Color.Add(labelEID) - r, g, b, a := uint8(rand.Intn(255)), uint8(rand.Intn(255)), uint8(rand.Intn(255)), uint8(rand.Intn(255)) + r, g, b, a := uint8(rand.Intn(255)), uint8(rand.Intn(255)), + uint8(rand.Intn(255)), uint8(rand.Intn(255)) c.Color = color.RGBA{r, g, b, a} + windowWidth, windowHeight := s.Render.renderer.GetWindowSize() trs := s.Components.Transform.Add(labelEID) - trs.Translation.Set(rand.Float64()*800, rand.Float64()*600, 1) + trs.Translation.Set(rand.Float64()*float64(windowWidth), + rand.Float64()*float64(windowHeight), + 1) v := s.velocity.Add(labelEID) diff --git a/d2core/d2systems/scene_widget_system.go b/d2core/d2systems/scene_widget_system.go index 424d9cb4..e9779557 100644 --- a/d2core/d2systems/scene_widget_system.go +++ b/d2core/d2systems/scene_widget_system.go @@ -2,6 +2,11 @@ package d2systems import ( "fmt" + "image/color" + "time" + + "github.com/gravestench/akara" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2cache" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2geom/rectangle" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2input" @@ -11,16 +16,13 @@ import ( "github.com/OpenDiablo2/OpenDiablo2/d2core/d2bitmapfont" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" - "github.com/gravestench/akara" - "image/color" - "time" ) const ( fontCacheBudget = 64 ) -// NewWidgetFactory creates a new ui widget factory which is intended +// NewUIWidgetFactory creates a new ui widget factory which is intended // to be embedded in the game object factory system. func NewUIWidgetFactory( b akara.BaseSystem, @@ -441,6 +443,7 @@ func (t *UIWidgetFactory) processButton(buttonEID akara.EID) { sprite, found := t.Components.Sprite.Get(spriteEID) if found { button.Sprite = sprite.Sprite + t.Components.SceneGraphNode.Add(spriteEID).SetParent(buttonNode.Node) } @@ -466,32 +469,24 @@ func (t *UIWidgetFactory) processButtonStates(buttonEID akara.EID) { img, pal := button.Layout.SpritePath, button.Layout.PalettePath sx, sy := button.Layout.XSegments, button.Layout.YSegments - var normal, pressed, toggled, pressedToggled, disabled akara.EID - - normal = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame) - // by default, all other states are whatever the normal state is - pressed = normal - toggled = normal - pressedToggled = normal - disabled = normal - + normal := t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame) button.States.Normal = normal - button.States.Pressed = pressed - button.States.Toggled = toggled - button.States.PressedToggled = pressedToggled - button.States.Disabled = disabled + button.States.Pressed = normal + button.States.Toggled = normal + button.States.PressedToggled = normal + button.States.Disabled = normal // if it's got other states (most buttons do...), then we handle it if button.Layout.HasImage && button.Layout.AllowFrameChange { - pressed = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStatePressed) - toggled = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStateToggled) - pressedToggled = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStatePressedToggled) + button.States.Pressed = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStatePressed) + button.States.Toggled = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStateToggled) + button.States.PressedToggled = t.SegmentedSprite(0, 0, img, pal, sx, sy, baseFrame+d2button.ButtonStatePressedToggled) // also, not all buttons have a disabled state // this stupid fucking -1 needs to be a constant if button.Layout.DisabledFrame != isNotSegmented { - disabled = t.SegmentedSprite(0, 0, img, pal, sx, sy, button.Layout.DisabledFrame) + button.States.Disabled = t.SegmentedSprite(0, 0, img, pal, sx, sy, button.Layout.DisabledFrame) } } } @@ -549,7 +544,7 @@ func (t *UIWidgetFactory) updateButton(buttonEID akara.EID) { // Checkbox creates a checkbox ui widget. A Checkbox widget is composed of a Checkbox component that tracks the logic, // and a SegmentedSprite to be displayed in the scene. -func (t *UIWidgetFactory) Checkbox(x, y float64, checkedState bool, enabled bool, callback func(akara.Component) bool) akara.EID { +func (t *UIWidgetFactory) Checkbox(x, y float64, checkedState, enabled bool, callback func(akara.Component) bool) akara.EID { checkboxEID := t.NewEntity() checkbox := t.Components.Checkbox.Add(checkboxEID) @@ -603,6 +598,7 @@ func (t *UIWidgetFactory) processCheckbox(checkboxEID akara.EID) { sprite, found := t.Components.Sprite.Get(spriteEID) if found { checkbox.Sprite = sprite.Sprite + t.Components.SceneGraphNode.Add(spriteEID).SetParent(checkboxNode.Node) } diff --git a/d2core/d2systems/timescale.go b/d2core/d2systems/timescale.go index d0d52489..a61b13c9 100644 --- a/d2core/d2systems/timescale.go +++ b/d2core/d2systems/timescale.go @@ -1,9 +1,10 @@ package d2systems import ( - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" "time" + "github.com/OpenDiablo2/OpenDiablo2/d2core/d2components" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" "github.com/gravestench/akara" @@ -26,9 +27,9 @@ var _ akara.System = &TimeScaleSystem{} type TimeScaleSystem struct { akara.BaseSystem *d2util.Logger - scale float64 + scale float64 Components struct { - Dirty d2components.DirtyFactory + Dirty d2components.DirtyFactory CommandRegistration d2components.CommandRegistrationFactory } } diff --git a/d2core/d2ui/color_tokens.go b/d2core/d2ui/color_tokens.go index 8c2c8845..6fc35ff4 100644 --- a/d2core/d2ui/color_tokens.go +++ b/d2core/d2ui/color_tokens.go @@ -41,6 +41,7 @@ const ( ColorTokenCharacterType = ColorTokenGreen ) +// nolint:golint // these constants are self-explanatory const ( ColorGrey100Alpha = 0x69_69_69_ff ColorWhite100Alpha = 0xff_ff_ff_ff diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index d395be25..c35d866a 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -562,7 +562,7 @@ func (s *QuestLog) cordsToQuestID(act, number int) int { return key } -//nolint:deadcode,unused // I think, it will be used, if not, we can just remove it +//nolint:varcheck,unused // I think, it will be used, if not, we can just remove it func (s *QuestLog) questIDToCords(id int) (act, number int) { act = 1 From a1e858b4df77ca396535ef988aa6761c5264ca93 Mon Sep 17 00:00:00 2001 From: gravestench Date: Mon, 4 Jan 2021 00:35:49 -0800 Subject: [PATCH 64/70] bugfix: file_handle_resolver --- d2core/d2systems/file_handle_resolver.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/d2core/d2systems/file_handle_resolver.go b/d2core/d2systems/file_handle_resolver.go index a4f8126d..efd25c8f 100644 --- a/d2core/d2systems/file_handle_resolver.go +++ b/d2core/d2systems/file_handle_resolver.go @@ -183,7 +183,7 @@ func (m *FileHandleResolver) loadFileWithSource(fileID, sourceID akara.EID) bool return true } - return true + return false } func (m *FileHandleResolver) loadFile(fileID akara.EID, fileType *d2components.FileType, From 164d8c93d087a1932722d9bc6e9a4429cf2f8abe Mon Sep 17 00:00:00 2001 From: Ian Ling Date: Mon, 4 Jan 2021 01:17:52 -0800 Subject: [PATCH 65/70] Add boot state to scenes, fix loading screen scene --- d2common/d2enum/scene_state.go | 11 ++++++ d2common/d2interface/scene.go | 2 + d2common/d2sprite/sprite.go | 2 +- d2core/d2asset/animation.go | 2 +- d2core/d2systems/scene_base.go | 50 +++++++++++++----------- d2core/d2systems/scene_ebiten_splash.go | 11 +++--- d2core/d2systems/scene_loading_screen.go | 30 ++++++++++---- d2core/d2systems/scene_main_menu.go | 14 +++++-- d2core/d2systems/scene_mouse_cursor.go | 13 ++++-- d2core/d2systems/scene_terminal.go | 11 +++--- d2core/d2systems/scene_test_button.go | 13 ++++-- d2core/d2systems/scene_test_checkbox.go | 13 ++++-- d2core/d2systems/scene_test_label.go | 13 ++++-- d2core/d2systems/scene_widget_system.go | 7 ++-- 14 files changed, 127 insertions(+), 65 deletions(-) create mode 100644 d2common/d2enum/scene_state.go diff --git a/d2common/d2enum/scene_state.go b/d2common/d2enum/scene_state.go new file mode 100644 index 00000000..83d08634 --- /dev/null +++ b/d2common/d2enum/scene_state.go @@ -0,0 +1,11 @@ +package d2enum + +// SceneState enumerates the different states a scene can be in +type SceneState int + +// Scene states +const ( + SceneStateUninitialized SceneState = iota + SceneStateBooting + SceneStateBooted +) diff --git a/d2common/d2interface/scene.go b/d2common/d2interface/scene.go index 72f3e2f8..b5540adb 100644 --- a/d2common/d2interface/scene.go +++ b/d2common/d2interface/scene.go @@ -1,12 +1,14 @@ package d2interface import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/gravestench/akara" ) // Scene is an extension of akara.System type Scene interface { akara.SystemInitializer + State() d2enum.SceneState Key() string Booted() bool Paused() bool diff --git a/d2common/d2sprite/sprite.go b/d2common/d2sprite/sprite.go index 4593923c..2ff8438f 100644 --- a/d2common/d2sprite/sprite.go +++ b/d2common/d2sprite/sprite.go @@ -332,7 +332,7 @@ func (a *Sprite) GetDirection() int { // SetCurrentFrame sets sprite at a specific frame func (a *Sprite) SetCurrentFrame(frameIndex int) error { - if frameIndex >= a.GetFrameCount() { + if frameIndex >= a.GetFrameCount() || frameIndex < 0 { return errors.New("invalid frame index") } diff --git a/d2core/d2asset/animation.go b/d2core/d2asset/animation.go index 94fe94af..b03aae64 100644 --- a/d2core/d2asset/animation.go +++ b/d2core/d2asset/animation.go @@ -323,7 +323,7 @@ func (a *Animation) GetDirection() int { // SetCurrentFrame sets animation at a specific frame func (a *Animation) SetCurrentFrame(frameIndex int) error { - if frameIndex >= a.GetFrameCount() { + if frameIndex >= a.GetFrameCount() || frameIndex < 0 { return errors.New("invalid frame index") } diff --git a/d2core/d2systems/scene_base.go b/d2core/d2systems/scene_base.go index fb9258b8..37d9298c 100644 --- a/d2core/d2systems/scene_base.go +++ b/d2core/d2systems/scene_base.go @@ -2,6 +2,7 @@ package d2systems import ( "fmt" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "sort" @@ -82,7 +83,7 @@ type BaseScene struct { } *d2util.Logger key string - booted bool + state d2enum.SceneState paused bool Add *sceneObjectFactory Viewports []akara.EID @@ -92,9 +93,14 @@ type BaseScene struct { gameConfigs *akara.Subscription } +// State returns the scene's current state +func (s *BaseScene) State() d2enum.SceneState { + return s.state +} + // Booted returns whether or not the scene has booted func (s *BaseScene) Booted() bool { - return s.booted + return s.state == d2enum.SceneStateBooted } // Paused returns whether or not the scene is paused @@ -113,17 +119,20 @@ func (s *BaseScene) Init(world *akara.World) { } func (s *BaseScene) boot() { - s.Debug("base scene booting ...") + if s.state == d2enum.SceneStateUninitialized { + s.Debug("base scene booting ...") - s.Add = &sceneObjectFactory{ - BaseScene: s, - Logger: d2util.NewLogger(), + s.Add = &sceneObjectFactory{ + BaseScene: s, + Logger: d2util.NewLogger(), + } + + s.Add.SetPrefix(fmt.Sprintf("%s -> %s", s.key, "Object Factory")) + + s.bindRequiredSystems() + s.state = d2enum.SceneStateBooting } - s.Add.SetPrefix(fmt.Sprintf("%s -> %s", s.key, "Object Factory")) - - s.bindRequiredSystems() - if !s.requiredSystemsPresent() { return } @@ -144,7 +153,7 @@ func (s *BaseScene) boot() { gameConfigs := s.NewComponentFilter().Require(&d2components.GameConfig{}).Build() s.gameConfigs = s.World.AddSubscription(gameConfigs) - s.booted = true + s.state = d2enum.SceneStateBooted } func (s *BaseScene) bindRequiredSystems() { @@ -205,23 +214,23 @@ func (s *BaseScene) setupSceneObjectFactories() { func (s *BaseScene) setupFactories() { s.Debug("setting up component factories") - s.InjectComponent(&d2components.MainViewport{}, &s.Components.MainViewport.ComponentFactory) + s.InjectComponent(&d2components.SceneGraphNode{}, &s.Components.SceneGraphNode.ComponentFactory) s.InjectComponent(&d2components.Viewport{}, &s.Components.Viewport.ComponentFactory) + s.InjectComponent(&d2components.MainViewport{}, &s.Components.MainViewport.ComponentFactory) s.InjectComponent(&d2components.ViewportFilter{}, &s.Components.ViewportFilter.ComponentFactory) - s.InjectComponent(&d2components.Camera{}, &s.Components.Camera.ComponentFactory) s.InjectComponent(&d2components.Priority{}, &s.Components.Priority.ComponentFactory) + s.InjectComponent(&d2components.Camera{}, &s.Components.Camera.ComponentFactory) s.InjectComponent(&d2components.Texture{}, &s.Components.Texture.ComponentFactory) s.InjectComponent(&d2components.Interactive{}, &s.Components.Interactive.ComponentFactory) s.InjectComponent(&d2components.Transform{}, &s.Components.Transform.ComponentFactory) - s.InjectComponent(&d2components.Origin{}, &s.Components.Origin.ComponentFactory) - s.InjectComponent(&d2components.Alpha{}, &s.Components.Alpha.ComponentFactory) - s.InjectComponent(&d2components.SceneGraphNode{}, &s.Components.SceneGraphNode.ComponentFactory) - s.InjectComponent(&d2components.DrawEffect{}, &s.Components.DrawEffect.ComponentFactory) s.InjectComponent(&d2components.Sprite{}, &s.Components.Sprite.ComponentFactory) s.InjectComponent(&d2components.SegmentedSprite{}, &s.Components.SegmentedSprite.ComponentFactory) + s.InjectComponent(&d2components.Origin{}, &s.Components.Origin.ComponentFactory) + s.InjectComponent(&d2components.Alpha{}, &s.Components.Alpha.ComponentFactory) + s.InjectComponent(&d2components.DrawEffect{}, &s.Components.DrawEffect.ComponentFactory) s.InjectComponent(&d2components.Rectangle{}, &s.Components.Rectangle.ComponentFactory) - s.InjectComponent(&d2components.Checkbox{}, &s.Components.Checkbox.ComponentFactory) s.InjectComponent(&d2components.Label{}, &s.Components.Label.ComponentFactory) + s.InjectComponent(&d2components.Checkbox{}, &s.Components.Checkbox.ComponentFactory) s.InjectComponent(&d2components.Color{}, &s.Components.Color.ComponentFactory) s.InjectComponent(&d2components.CommandRegistration{}, &s.Components.CommandRegistration.ComponentFactory) s.InjectComponent(&d2components.Dirty{}, &s.Components.Dirty.ComponentFactory) @@ -235,11 +244,8 @@ func (s *BaseScene) Key() string { // Update performs scene boot and renders the scene viewports func (s *BaseScene) Update() { - if !s.booted { + if !s.Booted() { s.boot() - } - - if !s.booted { return } diff --git a/d2core/d2systems/scene_ebiten_splash.go b/d2core/d2systems/scene_ebiten_splash.go index ca6d742d..d8748d13 100644 --- a/d2core/d2systems/scene_ebiten_splash.go +++ b/d2core/d2systems/scene_ebiten_splash.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "math" @@ -39,7 +40,7 @@ func NewEbitenSplashScene() *EbitenSplashScene { // EbitenSplashScene represents the in-game terminal for typing commands type EbitenSplashScene struct { *BaseScene - booted bool + state d2enum.SceneState squares []akara.EID timeElapsed float64 delay float64 @@ -53,14 +54,14 @@ func (s *EbitenSplashScene) Init(world *akara.World) { } func (s *EbitenSplashScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } s.createSplash() - s.booted = true + s.state = d2enum.SceneStateBooted } // Update and render the terminal to the terminal viewport @@ -73,11 +74,11 @@ func (s *EbitenSplashScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } - if !s.booted { + if s.state != d2enum.SceneStateBooted { return } diff --git a/d2core/d2systems/scene_loading_screen.go b/d2core/d2systems/scene_loading_screen.go index 463402cb..a0a9df57 100644 --- a/d2core/d2systems/scene_loading_screen.go +++ b/d2core/d2systems/scene_loading_screen.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "math" @@ -37,9 +38,10 @@ type LoadingScene struct { stage2 *akara.Subscription // has type, no handle stage3 *akara.Subscription // has handle, no asset stage4 *akara.Subscription // is loaded + total *akara.Subscription // total files } progress float64 - booted bool + state d2enum.SceneState } // Init the loading scene @@ -56,6 +58,15 @@ func (s *LoadingScene) Init(world *akara.World) { func (s *LoadingScene) setupSubscriptions() { s.Debug("setting up component subscriptions") + total := s.NewComponentFilter(). + Require( + &d2components.File{}, + ). + Forbid( + &d2components.FileSource{}, + ). + Build() + stage1 := s.NewComponentFilter(). Require( &d2components.File{}, @@ -102,6 +113,7 @@ func (s *LoadingScene) setupSubscriptions() { ). Build() + s.loadStages.total = s.World.AddSubscription(total) // total count of all files at all stages s.loadStages.stage1 = s.World.AddSubscription(stage1) // has path, no type s.loadStages.stage2 = s.World.AddSubscription(stage2) // has type, no handle s.loadStages.stage3 = s.World.AddSubscription(stage3) // has handle, no asset @@ -109,14 +121,14 @@ func (s *LoadingScene) setupSubscriptions() { } func (s *LoadingScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } s.createLoadingScreen() - s.booted = true + s.state = d2enum.SceneStateBooted } func (s *LoadingScene) createLoadingScreen() { @@ -134,10 +146,14 @@ func (s *LoadingScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + s.updateLoadProgress() s.updateViewportAlpha() s.updateLoadingSpritePosition() @@ -147,12 +163,10 @@ func (s *LoadingScene) Update() { } func (s *LoadingScene) updateLoadProgress() { - untyped := float64(len(s.loadStages.stage1.GetEntities())) - unhandled := float64(len(s.loadStages.stage2.GetEntities())) - unparsed := float64(len(s.loadStages.stage3.GetEntities())) + total := float64(len(s.loadStages.total.GetEntities())) loaded := float64(len(s.loadStages.stage4.GetEntities())) - s.progress = 1 - ((untyped + unhandled + unparsed) / 3 / loaded) + s.progress = loaded / total } //nolint:gomnd // arbitrary numbers for test scene diff --git a/d2core/d2systems/scene_main_menu.go b/d2core/d2systems/scene_main_menu.go index a8a31e7b..26924b7b 100644 --- a/d2core/d2systems/scene_main_menu.go +++ b/d2core/d2systems/scene_main_menu.go @@ -39,8 +39,8 @@ var _ d2interface.Scene = &MainMenuScene{} // or start the map engine test. type MainMenuScene struct { *BaseScene - booted bool logoInit bool + state d2enum.SceneState sprites struct { trademark akara.EID logoFireLeft akara.EID @@ -59,18 +59,20 @@ func (s *MainMenuScene) Init(world *akara.World) { } func (s *MainMenuScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } + s.state = d2enum.SceneStateBooting + s.setupViewports() s.createBackground() s.createButtons() s.createTrademarkScreen() s.createLogo() - s.booted = true + s.state = d2enum.SceneStateBooted } func (s *MainMenuScene) setupViewports() { @@ -170,10 +172,14 @@ func (s *MainMenuScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + if !s.logoInit { s.Debug("attempting logo sprite init") s.initLogoSprites() diff --git a/d2core/d2systems/scene_mouse_cursor.go b/d2core/d2systems/scene_mouse_cursor.go index 987e1119..6ac0b05a 100644 --- a/d2core/d2systems/scene_mouse_cursor.go +++ b/d2core/d2systems/scene_mouse_cursor.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "math" "time" @@ -35,7 +36,7 @@ type MouseCursorScene struct { lastTimeMoved time.Time *BaseScene cursor akara.EID - booted bool + state d2enum.SceneState debug struct { enabled bool } @@ -49,7 +50,7 @@ func (s *MouseCursorScene) Init(world *akara.World) { } func (s *MouseCursorScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } @@ -58,7 +59,7 @@ func (s *MouseCursorScene) boot() { s.createMouseCursor() - s.booted = true + s.state = d2enum.SceneStateBooted } func (s *MouseCursorScene) createMouseCursor() { @@ -76,10 +77,14 @@ func (s *MouseCursorScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + s.updateCursorTransform() s.handleCursorFade() diff --git a/d2core/d2systems/scene_terminal.go b/d2core/d2systems/scene_terminal.go index 961a0c11..ccda806a 100644 --- a/d2core/d2systems/scene_terminal.go +++ b/d2core/d2systems/scene_terminal.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "time" @@ -44,7 +45,7 @@ type TerminalScene struct { d2interface.Terminal d2interface.InputManager commandsToRegister *akara.Subscription - booted bool + state d2enum.SceneState } // Init the terminal @@ -70,14 +71,14 @@ func (s *TerminalScene) setupSubscriptions() { } func (s *TerminalScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } s.createTerminal() - s.booted = true + s.state = d2enum.SceneStateBooted } // Update and render the terminal to the terminal viewport @@ -90,11 +91,11 @@ func (s *TerminalScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } - if !s.booted { + if s.state != d2enum.SceneStateBooted { return } diff --git a/d2core/d2systems/scene_test_button.go b/d2core/d2systems/scene_test_button.go index 99320a4e..aa9b9915 100644 --- a/d2core/d2systems/scene_test_button.go +++ b/d2core/d2systems/scene_test_button.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "github.com/gravestench/akara" "github.com/OpenDiablo2/OpenDiablo2/d2core/d2button" @@ -30,7 +31,7 @@ var _ d2interface.Scene = &ButtonTestScene{} // or start the map engine test. type ButtonTestScene struct { *BaseScene - booted bool + state d2enum.SceneState buttons *akara.Subscription } @@ -49,7 +50,7 @@ func (s *ButtonTestScene) Init(world *akara.World) { } func (s *ButtonTestScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } @@ -58,7 +59,7 @@ func (s *ButtonTestScene) boot() { s.createButtons() - s.booted = true + s.state = d2enum.SceneStateBooted } func (s *ButtonTestScene) createButtons() { @@ -71,10 +72,14 @@ func (s *ButtonTestScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + for _, eid := range s.buttons.GetEntities() { s.updateButtonPosition(eid) } diff --git a/d2core/d2systems/scene_test_checkbox.go b/d2core/d2systems/scene_test_checkbox.go index bee3b626..88b4c232 100644 --- a/d2core/d2systems/scene_test_checkbox.go +++ b/d2core/d2systems/scene_test_checkbox.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "log" @@ -31,7 +32,7 @@ var _ d2interface.Scene = &CheckboxTestScene{} // or start the map engine test. type CheckboxTestScene struct { *BaseScene - booted bool + state d2enum.SceneState checkboxes *akara.Subscription } @@ -50,7 +51,7 @@ func (s *CheckboxTestScene) Init(world *akara.World) { } func (s *CheckboxTestScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } @@ -66,7 +67,7 @@ func (s *CheckboxTestScene) boot() { s.createCheckboxes() - s.booted = true + s.state = d2enum.SceneStateBooted } //nolint:gomnd // arbitrary example numbers for test @@ -84,10 +85,14 @@ func (s *CheckboxTestScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + s.BaseScene.Update() } diff --git a/d2core/d2systems/scene_test_label.go b/d2core/d2systems/scene_test_label.go index 735d6413..3ce2d275 100644 --- a/d2core/d2systems/scene_test_label.go +++ b/d2core/d2systems/scene_test_label.go @@ -1,6 +1,7 @@ package d2systems import ( + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "math/rand" @@ -32,7 +33,7 @@ var _ d2interface.Scene = &LabelTestScene{} // or start the map engine test. type LabelTestScene struct { *BaseScene - booted bool + state d2enum.SceneState labels *akara.Subscription velocity d2components.VelocityFactory } @@ -50,7 +51,7 @@ func (s *LabelTestScene) Init(world *akara.World) { } func (s *LabelTestScene) boot() { - if !s.BaseScene.booted { + if !s.BaseScene.Booted() { s.BaseScene.boot() return } @@ -59,7 +60,7 @@ func (s *LabelTestScene) boot() { s.createLabels() - s.booted = true + s.state = d2enum.SceneStateBooted } //nolint:gosec,gomnd // test scene, weak RNG is fine @@ -111,9 +112,13 @@ func (s *LabelTestScene) Update() { return } - if !s.booted { + if s.state == d2enum.SceneStateUninitialized { s.boot() } + if s.state != d2enum.SceneStateBooted { + return + } + s.BaseScene.Update() } diff --git a/d2core/d2systems/scene_widget_system.go b/d2core/d2systems/scene_widget_system.go index e9779557..59e5d7a3 100644 --- a/d2core/d2systems/scene_widget_system.go +++ b/d2core/d2systems/scene_widget_system.go @@ -2,6 +2,7 @@ package d2systems import ( "fmt" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum" "image/color" "time" @@ -75,11 +76,11 @@ type UIWidgetFactory struct { buttonLoadQueue checkboxLoadQueue labelLoadQueue + state d2enum.SceneState bitmapFontCache d2interface.Cache labelsToUpdate *akara.Subscription buttonsToUpdate *akara.Subscription checkboxesToUpdate *akara.Subscription - booted bool Components struct { File d2components.FileFactory Transform d2components.TransformFactory @@ -155,7 +156,7 @@ func (t *UIWidgetFactory) boot() { return } - t.booted = true + t.state = d2enum.SceneStateBooted } // Update processes the load queues and update the widgets. The load queues are necessary because @@ -163,7 +164,7 @@ func (t *UIWidgetFactory) boot() { func (t *UIWidgetFactory) Update() { start := time.Now() - if !t.booted { + if t.state != d2enum.SceneStateBooted { t.boot() return } From b77d793698004c3ba6693d7f53e382cf2604016b Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Thu, 7 Jan 2021 06:45:05 +0100 Subject: [PATCH 66/70] added label-button widget (#989) Co-authored-by: M. Sz --- d2core/d2ui/label_button.go | 121 ++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 d2core/d2ui/label_button.go diff --git a/d2core/d2ui/label_button.go b/d2core/d2ui/label_button.go new file mode 100644 index 00000000..0c8c1e38 --- /dev/null +++ b/d2core/d2ui/label_button.go @@ -0,0 +1,121 @@ +package d2ui + +import ( + "image/color" + + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" +) + +const ( + white = 0xffffffff +) + +// static checks to ensure LabelButton implemented Widget and ClickableWidget +var _ Widget = &LabelButton{} +var _ ClickableWidget = &LabelButton{} + +// LabelButton represents LabelButton +type LabelButton struct { + *BaseWidget + stdColor color.Color + hoverColor color.Color + onClick func() + label *Label + + *d2util.Logger +} + +// NewLabelButton creates a label-button +func (ui *UIManager) NewLabelButton(font, palette string) *LabelButton { + base := NewBaseWidget(ui) + base.SetVisible(true) + + result := &LabelButton{ + BaseWidget: base, + stdColor: d2util.Color(white), + } + + result.label = ui.NewLabel(font, palette) + result.label.Alignment = HorizontalAlignCenter + result.label.Color[0] = result.stdColor + + ui.addWidget(result) + + return result +} + +// SetText sets button's text +func (b *LabelButton) SetText(text string) { + b.label.SetText(text) + b.width, b.height = b.label.GetSize() +} + +// SetColors sets label-button colors (on normal and hovered state) +func (b *LabelButton) SetColors(normColor, hoverColor color.Color) { + b.stdColor = normColor + b.hoverColor = hoverColor +} + +// GetSize returns label's size +func (b *LabelButton) GetSize() (x, y int) { + return b.label.GetSize() +} + +// GetPosition returns real position (including offset for the alignment) +func (b *LabelButton) GetPosition() (x, y int) { + return b.x - b.label.getAlignOffset(b.width), b.y +} + +// OnActivated defines the callback handler for the activate event +func (b *LabelButton) OnActivated(cb func()) { + b.onClick = cb +} + +// Activate calls the on activated callback handler, if any +func (b *LabelButton) Activate() { + if b.onClick == nil { + return + } + + b.onClick() +} + +// SetEnabled sets the enabled state +func (b *LabelButton) SetEnabled(_ bool) { + // noop +} + +// GetEnabled returns the enabled state +func (b *LabelButton) GetEnabled() bool { + return true +} + +// SetPressed sets the pressed state of the button +func (b *LabelButton) SetPressed(_ bool) { + // noop +} + +// GetPressed returns the pressed state of the button +func (b *LabelButton) GetPressed() bool { + return false +} + +// Advance advances the label-button +func (b *LabelButton) Advance(_ float64) error { + return nil +} + +// Render renders label-button +func (b *LabelButton) Render(target d2interface.Surface) { + target.PushTranslation(b.GetPosition()) + defer target.Pop() + + b.label.Render(target) + + if b.isHovered() { + b.label.Color[0] = b.hoverColor + } else { + b.label.Color[0] = b.stdColor + } +} From 6addf7a2430ba141c86d8a9f1f0fc4e983bf8abf Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Thu, 7 Jan 2021 06:48:12 +0100 Subject: [PATCH 67/70] removed links to closed issues from code (#1005) Co-authored-by: M. Sz Co-authored-by: gravestench --- d2common/d2enum/numeric_labels.go | 6 +++++- d2core/d2inventory/inventory_item_factory.go | 1 - d2core/d2map/d2mapentity/factory.go | 1 - d2core/d2ui/button.go | 4 +--- d2game/d2player/hud.go | 2 -- 5 files changed, 6 insertions(+), 8 deletions(-) diff --git a/d2common/d2enum/numeric_labels.go b/d2common/d2enum/numeric_labels.go index 6383b6e5..eb2253b6 100644 --- a/d2common/d2enum/numeric_labels.go +++ b/d2common/d2enum/numeric_labels.go @@ -2,7 +2,9 @@ package d2enum // there are labels for "numeric labels (see AssetManager.TranslateLabel) const ( - CancelLabel = iota + RepairAll = iota + _ + CancelLabel CopyrightLabel AllRightsReservedLabel SinglePlayerLabel @@ -62,6 +64,8 @@ const ( // BaseLabelNumbers returns base label value (#n in english string table table) func BaseLabelNumbers(idx int) int { baseLabelNumbers := []int{ + 128, // repairAll + 127, // main menu labels 1612, // CANCEL 1613, // (c) 2000 Blizzard Entertainment diff --git a/d2core/d2inventory/inventory_item_factory.go b/d2core/d2inventory/inventory_item_factory.go index fb081fcc..7cf1d273 100644 --- a/d2core/d2inventory/inventory_item_factory.go +++ b/d2core/d2inventory/inventory_item_factory.go @@ -136,7 +136,6 @@ func (f *InventoryItemFactory) GetMiscItemByCode(code string) (*InventoryItemMis // GetWeaponItemByCode returns the weapon item for the given code func (f *InventoryItemFactory) GetWeaponItemByCode(code string) (*InventoryItemWeapon, error) { - // https://github.com/OpenDiablo2/OpenDiablo2/issues/796 result := f.asset.Records.Item.Weapons[code] if result == nil { return nil, fmt.Errorf("could not find weapon entry for code '%s'", code) diff --git a/d2core/d2map/d2mapentity/factory.go b/d2core/d2map/d2mapentity/factory.go index 1e24824d..181b05c2 100644 --- a/d2core/d2map/d2mapentity/factory.go +++ b/d2core/d2map/d2mapentity/factory.go @@ -237,7 +237,6 @@ func (f *MapEntityFactory) NewCastOverlay(x, y int, overlayRecord *d2records.Ove return nil, err } - // https://github.com/OpenDiablo2/OpenDiablo2/issues/767 animation.Rewind() animation.ResetPlayedCount() diff --git a/d2core/d2ui/button.go b/d2core/d2ui/button.go index 91bd8437..71b0cefd 100644 --- a/d2core/d2ui/button.go +++ b/d2core/d2ui/button.go @@ -863,8 +863,6 @@ type buttonStateDescriptor struct { func (v *Button) createTooltip() { var t *Tooltip - // this is also related with https://github.com/OpenDiablo2/OpenDiablo2/issues/944 - // all strings starting with "#" could be wrong translated to another locales switch v.buttonLayout.Tooltip { case buttonTooltipNone: return @@ -885,7 +883,7 @@ func (v *Button) createTooltip() { t.SetText(v.manager.asset.TranslateString("NPCRepairItems")) case buttonTooltipRepairAll: t = v.manager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, TooltipXCenter, TooltipYBottom) - t.SetText(v.manager.asset.TranslateString("#128")) + t.SetText(v.manager.asset.TranslateLabel(d2enum.RepairAll)) case buttonTooltipLeftArrow: t = v.manager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, TooltipXCenter, TooltipYBottom) t.SetText(v.manager.asset.TranslateString("KeyLeft")) diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index caa2b44e..4b7a2bef 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -258,7 +258,6 @@ func (h *HUD) loadCustomWidgets() { } func (h *HUD) loadSkillResources() { - // https://github.com/OpenDiablo2/OpenDiablo2/issues/799 genericSkillsSprite, err := h.uiManager.NewSprite(d2resource.GenericSkills, d2resource.PaletteSky) if err != nil { h.Error(err.Error()) @@ -376,7 +375,6 @@ func (h *HUD) onToggleRunButton(noButton bool) { h.hero.ToggleRunWalk() h.updateRunTooltipText() - // https://github.com/OpenDiablo2/OpenDiablo2/issues/800 h.hero.SetIsRunning(h.hero.IsRunToggled()) } From 0e95fd44cee6348dae4869031f04fd2759cba137 Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Thu, 7 Jan 2021 06:51:36 +0100 Subject: [PATCH 68/70] removed unused fields from d2player.GameControl.actionableRegions (#997) Co-authored-by: M. Sz Co-authored-by: gravestench --- d2game/d2player/game_controls.go | 51 -------------------------------- d2game/d2player/hud.go | 30 +++++++++---------- 2 files changed, 14 insertions(+), 67 deletions(-) diff --git a/d2game/d2player/game_controls.go b/d2game/d2player/game_controls.go index 196964fe..8a4eb155 100644 --- a/d2game/d2player/game_controls.go +++ b/d2game/d2player/game_controls.go @@ -37,11 +37,8 @@ const mouseBtnActionsThreshold = 0.25 const ( // Since they require special handling, not considering (1) globes, (2) content of the mini panel, (3) belt leftSkill actionableType = iota - newStats xp - walkRun stamina - newSkills rightSkill hpGlobe manaGlobe @@ -53,31 +50,16 @@ const ( leftSkillWidth, leftSkillHeight = 117, 550, 50, 50 - newStatsX, - newStatsY, - newStatsWidth, - newStatsHeight = 206, 563, 30, 30 - xpX, xpY, xpWidth, xpHeight = 253, 560, 125, 5 - walkRunX, - walkRunY, - walkRunWidth, - walkRunHeight = 255, 573, 17, 20 - staminaX, staminaY, staminaWidth, staminaHeight = 273, 573, 105, 20 - newSkillsX, - newSkillsY, - newSkillsWidth, - newSkillsHeight = 562, 563, 30, 30 - rightSkillX, rightSkillY, rightSkillWidth, @@ -156,36 +138,18 @@ func NewGameControls( Width: leftSkillWidth, Height: leftSkillHeight, }}, - {newStats, d2geom.Rectangle{ - Left: newStatsX, - Top: newStatsY, - Width: newStatsWidth, - Height: newStatsHeight, - }}, {xp, d2geom.Rectangle{ Left: xpX, Top: xpY, Width: xpWidth, Height: xpHeight, }}, - {walkRun, d2geom.Rectangle{ - Left: walkRunX, - Top: walkRunY, - Width: walkRunWidth, - Height: walkRunHeight, - }}, {stamina, d2geom.Rectangle{ Left: staminaX, Top: staminaY, Width: staminaWidth, Height: staminaHeight, }}, - {newSkills, d2geom.Rectangle{ - Left: newSkillsX, - Top: newSkillsY, - Width: newSkillsWidth, - Height: newSkillsHeight, - }}, {rightSkill, d2geom.Rectangle{ Left: rightSkillX, Top: rightSkillY, @@ -857,11 +821,8 @@ func (g *GameControls) ToggleManaStats() { func (g *GameControls) onHoverActionable(item actionableType) { hoverMap := map[actionableType]func(){ leftSkill: func() {}, - newStats: func() {}, xp: func() {}, - walkRun: func() {}, stamina: func() {}, - newSkills: func() {}, rightSkill: func() {}, hpGlobe: func() {}, manaGlobe: func() {}, @@ -883,26 +844,14 @@ func (g *GameControls) onClickActionable(item actionableType) { g.toggleLeftSkillPanel() }, - newStats: func() { - g.Info("New Stats Selector Action Pressed") - }, - xp: func() { g.Info("XP Action Pressed") }, - walkRun: func() { - g.Info("Walk/Run Action Pressed") - }, - stamina: func() { g.Info("Stamina Action Pressed") }, - newSkills: func() { - g.Info("New Skills Selector Action Pressed") - }, - rightSkill: func() { g.toggleRightSkillPanel() }, diff --git a/d2game/d2player/hud.go b/d2game/d2player/hud.go index 4b7a2bef..e68608c7 100644 --- a/d2game/d2player/hud.go +++ b/d2game/d2player/hud.go @@ -312,21 +312,6 @@ func (h *HUD) loadTooltips() { labelY := staminaExperienceY - halfLabelHeight h.staminaTooltip.SetPosition(labelX, labelY) - // runwalk tooltip - h.runWalkTooltip = h.uiManager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, d2ui.TooltipXCenter, d2ui.TooltipYBottom) - rect = &h.actionableRegions[walkRun].rect - - halfButtonWidth = rect.Width >> 1 - halfButtonHeight := rect.Height >> 1 - - centerX = rect.Left + halfButtonWidth - centerY := rect.Top + halfButtonHeight - - _, labelHeight = h.runWalkTooltip.GetSize() - labelX = centerX - labelY = centerY - halfButtonHeight - labelHeight - h.runWalkTooltip.SetPosition(labelX, labelY) - // experience tooltip h.experienceTooltip = h.uiManager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, d2ui.TooltipXCenter, d2ui.TooltipYTop) rect = &h.actionableRegions[stamina].rect @@ -347,8 +332,21 @@ func (h *HUD) loadUIButtons() { h.runButton = h.uiManager.NewButton(d2ui.ButtonTypeRun, "") h.runButton.SetPosition(runButtonX, runButtonY) h.runButton.OnActivated(func() { h.onToggleRunButton(false) }) - h.runButton.SetTooltip(h.runWalkTooltip) + + h.runWalkTooltip = h.uiManager.NewTooltip(d2resource.Font16, d2resource.PaletteSky, d2ui.TooltipXCenter, d2ui.TooltipYTop) + // we must set text first, and then we're getting its height h.updateRunTooltipText() + + bw, bh := h.runButton.GetSize() + _, lh := h.runWalkTooltip.GetSize() + // nolint:gomnd // dividing by 2 (const) + labelX := runButtonX + bw/2 + // nolint:gomnd // dividing by 2 (const) + labelY := runButtonY - bh/2 - lh/2 + + h.runWalkTooltip.SetPosition(labelX, labelY) + h.runButton.SetTooltip(h.runWalkTooltip) + h.panelGroup.AddWidget(h.runButton) if h.hero.IsRunToggled() { From 5cd404e4a542cb2305f2b559d4f18ef35a3be5ce Mon Sep 17 00:00:00 2001 From: gucio321 <73652197+gucio321@users.noreply.github.com> Date: Thu, 7 Jan 2021 06:53:01 +0100 Subject: [PATCH 69/70] d2ui.Frame refactor (#994) * d2ui.Frame refactor * removed unneccessery d2asset.AssetManager argument from d2ui.NewUIFrame * d2ui.Frame refactor * removed unneccessery d2asset.AssetManager argument from d2ui.NewUIFrame Co-authored-by: M. Sz Co-authored-by: Tim Sarbin Co-authored-by: gravestench --- d2core/d2ui/frame.go | 45 ++++++++++++----------------- d2game/d2player/hero_stats_panel.go | 2 +- d2game/d2player/inventory.go | 2 +- d2game/d2player/quest_log.go | 2 +- d2game/d2player/skilltree.go | 5 ++-- 5 files changed, 24 insertions(+), 32 deletions(-) diff --git a/d2core/d2ui/frame.go b/d2core/d2ui/frame.go index 4d66c1cd..4255d61e 100644 --- a/d2core/d2ui/frame.go +++ b/d2core/d2ui/frame.go @@ -3,7 +3,7 @@ package d2ui import ( "github.com/OpenDiablo2/OpenDiablo2/d2common/d2interface" "github.com/OpenDiablo2/OpenDiablo2/d2common/d2resource" - "github.com/OpenDiablo2/OpenDiablo2/d2core/d2asset" + "github.com/OpenDiablo2/OpenDiablo2/d2common/d2util" ) // static check that UIFrame implements Widget @@ -21,9 +21,9 @@ const ( // when it is visible. type UIFrame struct { *BaseWidget - asset *d2asset.AssetManager frame *Sprite frameOrientation frameOrientation + *d2util.Logger } // frame indices into dc6 images for panels @@ -41,11 +41,7 @@ const ( ) // NewUIFrame creates a new Frame instance -func NewUIFrame( - asset *d2asset.AssetManager, - uiManager *UIManager, - frameOrientation frameOrientation, -) *UIFrame { +func (ui *UIManager) NewUIFrame(frameOrientation frameOrientation) *UIFrame { var originX, originY = 0, 0 switch frameOrientation { @@ -57,32 +53,29 @@ func NewUIFrame( originY = 0 } - base := NewBaseWidget(uiManager) + base := NewBaseWidget(ui) + base.SetVisible(false) base.SetPosition(originX, originY) frame := &UIFrame{ BaseWidget: base, - asset: asset, frameOrientation: frameOrientation, + Logger: ui.Logger, } - frame.Load() - frame.asset.Logger.SetPrefix(logPrefix) // workaround + sprite, err := ui.NewSprite(d2resource.Frame, d2resource.PaletteSky) + if err != nil { + frame.Error(err.Error()) + } + + frame.frame = sprite + frame.calculateSize() + + ui.addWidget(frame) return frame } -// Load the necessary frame resources -func (u *UIFrame) Load() { - sprite, err := u.manager.NewSprite(d2resource.Frame, d2resource.PaletteSky) - if err != nil { - u.asset.Logger.Error(err.Error()) - } - - u.frame = sprite - u.calculateSize() -} - func (u *UIFrame) calculateSize() { var framesWidth, framesHeight []int @@ -111,7 +104,7 @@ func (u *UIFrame) calculateSize() { for i := range framesWidth { w, _, err := u.frame.GetFrameSize(framesWidth[i]) if err != nil { - u.asset.Logger.Error(err.Error()) + u.Error(err.Error()) } u.width += w @@ -120,7 +113,7 @@ func (u *UIFrame) calculateSize() { for i := range framesHeight { _, h, err := u.frame.GetFrameSize(framesHeight[i]) if err != nil { - u.asset.Logger.Error(err.Error()) + u.Error(err.Error()) } u.height += h @@ -132,11 +125,11 @@ func (u *UIFrame) Render(target d2interface.Surface) { switch u.frameOrientation { case FrameLeft: if err := u.renderLeft(target); err != nil { - u.asset.Logger.Error("Render error" + err.Error()) + u.Error("Render error" + err.Error()) } case FrameRight: if err := u.renderRight(target); err != nil { - u.asset.Logger.Error("Render error" + err.Error()) + u.Error("Render error" + err.Error()) } } } diff --git a/d2game/d2player/hero_stats_panel.go b/d2game/d2player/hero_stats_panel.go index 8bc889aa..759e2451 100644 --- a/d2game/d2player/hero_stats_panel.go +++ b/d2game/d2player/hero_stats_panel.go @@ -149,7 +149,7 @@ func (s *HeroStatsPanel) Load() { s.panelGroup = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityHeroStatsPanel) s.newStatPoints = s.uiManager.NewWidgetGroup(d2ui.RenderPriorityHeroStatsPanel) - frame := d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameLeft) + frame := s.uiManager.NewUIFrame(d2ui.FrameLeft) s.panelGroup.AddWidget(frame) s.panel, err = s.uiManager.NewSprite(d2resource.InventoryCharacterPanel, d2resource.PaletteSky) diff --git a/d2game/d2player/inventory.go b/d2game/d2player/inventory.go index 4b0875d3..d28a4c29 100644 --- a/d2game/d2player/inventory.go +++ b/d2game/d2player/inventory.go @@ -104,7 +104,7 @@ func (g *Inventory) Load() { g.panelGroup = g.uiManager.NewWidgetGroup(d2ui.RenderPriorityInventory) - frame := d2ui.NewUIFrame(g.asset, g.uiManager, d2ui.FrameRight) + frame := g.uiManager.NewUIFrame(d2ui.FrameRight) g.panelGroup.AddWidget(frame) g.panel, err = g.uiManager.NewSprite(d2resource.InventoryCharacterPanel, d2resource.PaletteSky) diff --git a/d2game/d2player/quest_log.go b/d2game/d2player/quest_log.go index 1c1ab5c5..4de2b90f 100644 --- a/d2game/d2player/quest_log.go +++ b/d2game/d2player/quest_log.go @@ -213,7 +213,7 @@ func (s *QuestLog) Load() { s.Error(err.Error()) } - frame := d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameLeft) + frame := s.uiManager.NewUIFrame(d2ui.FrameLeft) s.panelGroup.AddWidget(frame) s.panel, err = s.uiManager.NewSprite(d2resource.QuestLogBg, d2resource.PaletteSky) diff --git a/d2game/d2player/skilltree.go b/d2game/d2player/skilltree.go index 91bceec4..b60c6509 100644 --- a/d2game/d2player/skilltree.go +++ b/d2game/d2player/skilltree.go @@ -127,7 +127,6 @@ type skillTree struct { skills map[int]*d2hero.HeroSkill skillIcons []*skillIcon heroClass d2enum.Hero - frame *d2ui.UIFrame availSPLabel *d2ui.Label closeButton *d2ui.Button tab [numTabs]*skillTreeTab @@ -153,8 +152,8 @@ func (s *skillTree) load() { s.panel = s.uiManager.NewCustomWidget(s.Render, 400, 600) s.panelGroup.AddWidget(s.panel) - s.frame = d2ui.NewUIFrame(s.asset, s.uiManager, d2ui.FrameRight) - s.panelGroup.AddWidget(s.frame) + frame := s.uiManager.NewUIFrame(d2ui.FrameRight) + s.panelGroup.AddWidget(frame) s.closeButton = s.uiManager.NewButton(d2ui.ButtonTypeSquareClose, "") s.closeButton.SetVisible(false) From db83814527210a8a4caa1c74fe80bbd038c95c06 Mon Sep 17 00:00:00 2001 From: Intyre Date: Fri, 8 Jan 2021 21:46:11 +0100 Subject: [PATCH 70/70] d2mpq refactored (#1020) * d2mpq refactor * d2mpq refactor last standing lint error * d2mpq refactor: less linter noise * d2mpq refactor: more linter issues --- d2common/d2fileformats/d2mpq/crypto.go | 131 +++++ d2common/d2fileformats/d2mpq/crypto_buff.go | 32 -- .../d2fileformats/d2mpq/hash_entry_map.go | 35 -- d2common/d2fileformats/d2mpq/mpq.go | 472 ++++++------------ d2common/d2fileformats/d2mpq/mpq_block.go | 77 +++ .../d2fileformats/d2mpq/mpq_data_stream.go | 8 +- d2common/d2fileformats/d2mpq/mpq_hash.go | 45 ++ d2common/d2fileformats/d2mpq/mpq_header.go | 36 ++ d2common/d2fileformats/d2mpq/mpq_stream.go | 285 +++++------ d2common/d2interface/archive.go | 5 +- d2common/d2loader/asset/types/source_types.go | 3 +- d2common/d2loader/mpq/source.go | 2 +- utils/extract-mpq/extract-mpq.go | 4 +- 13 files changed, 575 insertions(+), 560 deletions(-) create mode 100644 d2common/d2fileformats/d2mpq/crypto.go delete mode 100644 d2common/d2fileformats/d2mpq/crypto_buff.go delete mode 100644 d2common/d2fileformats/d2mpq/hash_entry_map.go create mode 100644 d2common/d2fileformats/d2mpq/mpq_block.go create mode 100644 d2common/d2fileformats/d2mpq/mpq_hash.go create mode 100644 d2common/d2fileformats/d2mpq/mpq_header.go diff --git a/d2common/d2fileformats/d2mpq/crypto.go b/d2common/d2fileformats/d2mpq/crypto.go new file mode 100644 index 00000000..636c8bc2 --- /dev/null +++ b/d2common/d2fileformats/d2mpq/crypto.go @@ -0,0 +1,131 @@ +package d2mpq + +import ( + "encoding/binary" + "io" + "strings" +) + +var cryptoBuffer [0x500]uint32 //nolint:gochecknoglobals // will fix later.. +var cryptoBufferReady bool //nolint:gochecknoglobals // will fix later.. + +func cryptoLookup(index uint32) uint32 { + if !cryptoBufferReady { + cryptoInitialize() + + cryptoBufferReady = true + } + + return cryptoBuffer[index] +} + +//nolint:gomnd // Decryption magic +func cryptoInitialize() { + seed := uint32(0x00100001) + + for index1 := 0; index1 < 0x100; index1++ { + index2 := index1 + + for i := 0; i < 5; i++ { + seed = (seed*125 + 3) % 0x2AAAAB + temp1 := (seed & 0xFFFF) << 0x10 + seed = (seed*125 + 3) % 0x2AAAAB + temp2 := seed & 0xFFFF + cryptoBuffer[index2] = temp1 | temp2 + index2 += 0x100 + } + } +} + +//nolint:gomnd // Decryption magic +func decrypt(data []uint32, seed uint32) { + seed2 := uint32(0xeeeeeeee) + + for i := 0; i < len(data); i++ { + seed2 += cryptoLookup(0x400 + (seed & 0xff)) + result := data[i] + result ^= seed + seed2 + + seed = ((^seed << 21) + 0x11111111) | (seed >> 11) + seed2 = result + seed2 + (seed2 << 5) + 3 + data[i] = result + } +} + +//nolint:gomnd // Decryption magic +func decryptBytes(data []byte, seed uint32) { + seed2 := uint32(0xEEEEEEEE) + for i := 0; i < len(data)-3; i += 4 { + seed2 += cryptoLookup(0x400 + (seed & 0xFF)) + result := binary.LittleEndian.Uint32(data[i : i+4]) + result ^= seed + seed2 + seed = ((^seed << 21) + 0x11111111) | (seed >> 11) + seed2 = result + seed2 + (seed2 << 5) + 3 + + data[i+0] = uint8(result & 0xff) + data[i+1] = uint8((result >> 8) & 0xff) + data[i+2] = uint8((result >> 16) & 0xff) + data[i+3] = uint8((result >> 24) & 0xff) + } +} + +//nolint:gomnd // Decryption magic +func decryptTable(r io.Reader, size uint32, name string) ([]uint32, error) { + seed := hashString(name, 3) + seed2 := uint32(0xEEEEEEEE) + size *= 4 + + table := make([]uint32, size) + buf := make([]byte, 4) + + for i := uint32(0); i < size; i++ { + seed2 += cryptoBuffer[0x400+(seed&0xff)] + + if _, err := r.Read(buf); err != nil { + return table, err + } + + result := binary.LittleEndian.Uint32(buf) + result ^= seed + seed2 + + seed = ((^seed << 21) + 0x11111111) | (seed >> 11) + seed2 = result + seed2 + (seed2 << 5) + 3 + table[i] = result + } + + return table, nil +} + +func hashFilename(key string) uint64 { + a, b := hashString(key, 1), hashString(key, 2) + return uint64(a)<<32 | uint64(b) +} + +//nolint:gomnd // Decryption magic +func hashString(key string, hashType uint32) uint32 { + seed1 := uint32(0x7FED7FED) + seed2 := uint32(0xEEEEEEEE) + + /* prepare seeds. */ + for _, char := range strings.ToUpper(key) { + seed1 = cryptoLookup((hashType*0x100)+uint32(char)) ^ (seed1 + seed2) + seed2 = uint32(char) + seed1 + seed2 + (seed2 << 5) + 3 + } + + return seed1 +} + +//nolint:unused,deadcode,gomnd // will use this for creating mpq's +func encrypt(data []uint32, seed uint32) { + seed2 := uint32(0xeeeeeeee) + + for i := 0; i < len(data); i++ { + seed2 += cryptoLookup(0x400 + (seed & 0xff)) + result := data[i] + result ^= seed + seed2 + + seed = ((^seed << 21) + 0x11111111) | (seed >> 11) + seed2 = data[i] + seed2 + (seed2 << 5) + 3 + data[i] = result + } +} diff --git a/d2common/d2fileformats/d2mpq/crypto_buff.go b/d2common/d2fileformats/d2mpq/crypto_buff.go deleted file mode 100644 index 7618743b..00000000 --- a/d2common/d2fileformats/d2mpq/crypto_buff.go +++ /dev/null @@ -1,32 +0,0 @@ -package d2mpq - -var cryptoBuffer [0x500]uint32 //nolint:gochecknoglobals // will fix later.. -var cryptoBufferReady bool //nolint:gochecknoglobals // will fix later.. - -func cryptoLookup(index uint32) uint32 { - if !cryptoBufferReady { - cryptoInitialize() - - cryptoBufferReady = true - } - - return cryptoBuffer[index] -} - -//nolint:gomnd // magic cryptographic stuff here... -func cryptoInitialize() { - seed := uint32(0x00100001) - - for index1 := 0; index1 < 0x100; index1++ { - index2 := index1 - - for i := 0; i < 5; i++ { - seed = (seed*125 + 3) % 0x2AAAAB - temp1 := (seed & 0xFFFF) << 0x10 - seed = (seed*125 + 3) % 0x2AAAAB - temp2 := seed & 0xFFFF - cryptoBuffer[index2] = temp1 | temp2 - index2 += 0x100 - } - } -} diff --git a/d2common/d2fileformats/d2mpq/hash_entry_map.go b/d2common/d2fileformats/d2mpq/hash_entry_map.go deleted file mode 100644 index ab9c0ca1..00000000 --- a/d2common/d2fileformats/d2mpq/hash_entry_map.go +++ /dev/null @@ -1,35 +0,0 @@ -package d2mpq - -// HashEntryMap represents a hash entry map -type HashEntryMap struct { - entries map[uint64]HashTableEntry -} - -// Insert inserts a hash entry into the table -func (hem *HashEntryMap) Insert(entry *HashTableEntry) { - if hem.entries == nil { - hem.entries = make(map[uint64]HashTableEntry) - } - - hem.entries[uint64(entry.NamePartA)<<32|uint64(entry.NamePartB)] = *entry -} - -// Find finds a hash entry -func (hem *HashEntryMap) Find(fileName string) (*HashTableEntry, bool) { - if hem.entries == nil { - return nil, false - } - - hashA := hashString(fileName, 1) - hashB := hashString(fileName, 2) - - entry, found := hem.entries[uint64(hashA)<<32|uint64(hashB)] - - return &entry, found -} - -// Contains returns true if the hash entry contains the values -func (hem *HashEntryMap) Contains(fileName string) bool { - _, found := hem.Find(fileName) - return found -} diff --git a/d2common/d2fileformats/d2mpq/mpq.go b/d2common/d2fileformats/d2mpq/mpq.go index 23deed54..59f3a8b1 100644 --- a/d2common/d2fileformats/d2mpq/mpq.go +++ b/d2common/d2fileformats/d2mpq/mpq.go @@ -2,10 +2,9 @@ package d2mpq import ( "bufio" - "encoding/binary" "errors" + "fmt" "io/ioutil" - "log" "os" "path" "path/filepath" @@ -19,33 +18,11 @@ var _ d2interface.Archive = &MPQ{} // Static check to confirm struct conforms to // MPQ represents an MPQ archive type MPQ struct { - filePath string - file *os.File - hashEntryMap HashEntryMap - blockTableEntries []BlockTableEntry - data Data -} - -// Data Represents a MPQ file -type Data struct { - Magic [4]byte - HeaderSize uint32 - ArchiveSize uint32 - FormatVersion uint16 - BlockSize uint16 - HashTableOffset uint32 - BlockTableOffset uint32 - HashTableEntries uint32 - BlockTableEntries uint32 -} - -// HashTableEntry represents a hashed file entry in the MPQ file -type HashTableEntry struct { // 16 bytes - NamePartA uint32 - NamePartB uint32 - Locale uint16 - Platform uint16 - BlockIndex uint32 + filePath string + file *os.File + hashes map[uint64]*Hash + blocks []*Block + header Header } // PatchInfo represents patch info for the MPQ. @@ -53,71 +30,153 @@ type PatchInfo struct { Length uint32 // Length of patch info header, in bytes Flags uint32 // Flags. 0x80000000 = MD5 (?) DataSize uint32 // Uncompressed size of the patch file - Md5 [16]byte // MD5 of the entire patch file after decompression + MD5 [16]byte // MD5 of the entire patch file after decompression } -// FileFlag represents flags for a file record in the MPQ archive -type FileFlag uint32 - -const ( - // FileImplode - File is compressed using PKWARE Data compression library - FileImplode FileFlag = 0x00000100 - // FileCompress - File is compressed using combination of compression methods - FileCompress FileFlag = 0x00000200 - // FileEncrypted - The file is encrypted - FileEncrypted FileFlag = 0x00010000 - // FileFixKey - The decryption key for the file is altered according to the position of the file in the archive - FileFixKey FileFlag = 0x00020000 - // FilePatchFile - The file contains incremental patch for an existing file in base MPQ - FilePatchFile FileFlag = 0x00100000 - // FileSingleUnit - Instead of being divided to 0x1000-bytes blocks, the file is stored as single unit - FileSingleUnit FileFlag = 0x01000000 - // FileDeleteMarker - File is a deletion marker, indicating that the file no longer exists. This is used to allow patch - // archives to delete files present in lower-priority archives in the search chain. The file usually - // has length of 0 or 1 byte and its name is a hash - FileDeleteMarker FileFlag = 0x02000000 - // FileSectorCrc - File has checksums for each sector. Ignored if file is not compressed or imploded. - FileSectorCrc FileFlag = 0x04000000 - // FileExists - Set if file exists, reset when the file was deleted - FileExists FileFlag = 0x80000000 -) - -// BlockTableEntry represents an entry in the block table -type BlockTableEntry struct { // 16 bytes - FilePosition uint32 - CompressedFileSize uint32 - UncompressedFileSize uint32 - Flags FileFlag - // Local Stuff... - FileName string - EncryptionSeed uint32 -} - -// HasFlag returns true if the specified flag is present -func (v BlockTableEntry) HasFlag(flag FileFlag) bool { - return (v.Flags & flag) != 0 -} - -// Load loads an MPQ file and returns a MPQ structure -func Load(fileName string) (d2interface.Archive, error) { - result := &MPQ{filePath: fileName} +// New loads an MPQ file and only reads the header +func New(fileName string) (*MPQ, error) { + mpq := &MPQ{filePath: fileName} var err error if runtime.GOOS == "linux" { - result.file, err = openIgnoreCase(fileName) + mpq.file, err = openIgnoreCase(fileName) } else { - result.file, err = os.Open(fileName) //nolint:gosec // Will fix later + mpq.file, err = os.Open(fileName) //nolint:gosec // Will fix later } if err != nil { return nil, err } - if err := result.readHeader(); err != nil { + if err := mpq.readHeader(); err != nil { + return nil, fmt.Errorf("failed to read reader: %v", err) + } + + return mpq, nil +} + +// FromFile loads an MPQ file and returns a MPQ structure +func FromFile(fileName string) (*MPQ, error) { + mpq, err := New(fileName) + if err != nil { return nil, err } - return result, nil + if err := mpq.readHashTable(); err != nil { + return nil, fmt.Errorf("failed to read hash table: %v", err) + } + + if err := mpq.readBlockTable(); err != nil { + return nil, fmt.Errorf("failed to read block table: %v", err) + } + + return mpq, nil +} + +// getFileBlockData gets a block table entry +func (mpq *MPQ) getFileBlockData(fileName string) (*Block, error) { + fileEntry, ok := mpq.hashes[hashFilename(fileName)] + if !ok { + return nil, errors.New("file not found") + } + + if fileEntry.BlockIndex >= uint32(len(mpq.blocks)) { + return nil, errors.New("invalid block index") + } + + return mpq.blocks[fileEntry.BlockIndex], nil +} + +// Close closes the MPQ file +func (mpq *MPQ) Close() error { + return mpq.file.Close() +} + +// ReadFile reads a file from the MPQ and returns a memory stream +func (mpq *MPQ) ReadFile(fileName string) ([]byte, error) { + fileBlockData, err := mpq.getFileBlockData(fileName) + if err != nil { + return []byte{}, err + } + + fileBlockData.FileName = strings.ToLower(fileName) + + stream, err := CreateStream(mpq, fileBlockData, fileName) + if err != nil { + return []byte{}, err + } + + buffer := make([]byte, fileBlockData.UncompressedFileSize) + if _, err := stream.Read(buffer, 0, fileBlockData.UncompressedFileSize); err != nil { + return []byte{}, err + } + + return buffer, nil +} + +// ReadFileStream reads the mpq file data and returns a stream +func (mpq *MPQ) ReadFileStream(fileName string) (d2interface.DataStream, error) { + fileBlockData, err := mpq.getFileBlockData(fileName) + if err != nil { + return nil, err + } + + fileBlockData.FileName = strings.ToLower(fileName) + + stream, err := CreateStream(mpq, fileBlockData, fileName) + if err != nil { + return nil, err + } + + return &MpqDataStream{stream: stream}, nil +} + +// ReadTextFile reads a file and returns it as a string +func (mpq *MPQ) ReadTextFile(fileName string) (string, error) { + data, err := mpq.ReadFile(fileName) + + if err != nil { + return "", err + } + + return string(data), nil +} + +// Listfile returns the list of files in this MPQ +func (mpq *MPQ) Listfile() ([]string, error) { + data, err := mpq.ReadFile("(listfile)") + + if err != nil { + return nil, err + } + + raw := strings.TrimRight(string(data), "\x00") + s := bufio.NewScanner(strings.NewReader(raw)) + + var filePaths []string + + for s.Scan() { + filePath := s.Text() + filePaths = append(filePaths, filePath) + } + + return filePaths, nil +} + +// Path returns the MPQ file path +func (mpq *MPQ) Path() string { + return mpq.filePath +} + +// Contains returns bool for whether the given filename exists in the mpq +func (mpq *MPQ) Contains(filename string) bool { + _, ok := mpq.hashes[hashFilename(filename)] + return ok +} + +// Size returns the size of the mpq in bytes +func (mpq *MPQ) Size() uint32 { + return mpq.header.ArchiveSize } func openIgnoreCase(mpqPath string) (*os.File, error) { @@ -142,258 +201,5 @@ func openIgnoreCase(mpqPath string) (*os.File, error) { } } - file, err := os.Open(path.Join(mpqDir, mpqName)) //nolint:gosec // Will fix later - - return file, err -} - -func (v *MPQ) readHeader() error { - err := binary.Read(v.file, binary.LittleEndian, &v.data) - - if err != nil { - return err - } - - if string(v.data.Magic[:]) != "MPQ\x1A" { - return errors.New("invalid mpq header") - } - - err = v.loadHashTable() - if err != nil { - return err - } - - v.loadBlockTable() - - return nil -} - -func (v *MPQ) loadHashTable() error { - _, err := v.file.Seek(int64(v.data.HashTableOffset), 0) - if err != nil { - log.Panic(err) - } - - hashData := make([]uint32, v.data.HashTableEntries*4) //nolint:gomnd // // Decryption magic - hash := make([]byte, 4) - - for i := range hashData { - _, err := v.file.Read(hash) - if err != nil { - log.Print(err) - } - - hashData[i] = binary.LittleEndian.Uint32(hash) - } - - decrypt(hashData, hashString("(hash table)", 3)) - - for i := uint32(0); i < v.data.HashTableEntries; i++ { - v.hashEntryMap.Insert(&HashTableEntry{ - NamePartA: hashData[i*4], - NamePartB: hashData[(i*4)+1], - // https://github.com/OpenDiablo2/OpenDiablo2/issues/812 - Locale: uint16(hashData[(i*4)+2] >> 16), //nolint:gomnd // // binary data - Platform: uint16(hashData[(i*4)+2] & 0xFFFF), //nolint:gomnd // // binary data - BlockIndex: hashData[(i*4)+3], - }) - } - - return nil -} - -func (v *MPQ) loadBlockTable() { - _, err := v.file.Seek(int64(v.data.BlockTableOffset), 0) - if err != nil { - log.Panic(err) - } - - blockData := make([]uint32, v.data.BlockTableEntries*4) //nolint:gomnd // // binary data - hash := make([]byte, 4) - - for i := range blockData { - _, err = v.file.Read(hash) //nolint:errcheck // Will fix later - if err != nil { - log.Print(err) - } - - blockData[i] = binary.LittleEndian.Uint32(hash) - } - - decrypt(blockData, hashString("(block table)", 3)) - - for i := uint32(0); i < v.data.BlockTableEntries; i++ { - v.blockTableEntries = append(v.blockTableEntries, BlockTableEntry{ - FilePosition: blockData[(i * 4)], - CompressedFileSize: blockData[(i*4)+1], - UncompressedFileSize: blockData[(i*4)+2], - Flags: FileFlag(blockData[(i*4)+3]), - }) - } -} - -func decrypt(data []uint32, seed uint32) { - seed2 := uint32(0xeeeeeeee) //nolint:gomnd // Decryption magic - - for i := 0; i < len(data); i++ { - seed2 += cryptoLookup(0x400 + (seed & 0xff)) //nolint:gomnd // Decryption magic - result := data[i] - result ^= seed + seed2 - - seed = ((^seed << 21) + 0x11111111) | (seed >> 11) - seed2 = result + seed2 + (seed2 << 5) + 3 //nolint:gomnd // Decryption magic - data[i] = result - } -} - -func decryptBytes(data []byte, seed uint32) { - seed2 := uint32(0xEEEEEEEE) //nolint:gomnd // Decryption magic - for i := 0; i < len(data)-3; i += 4 { - seed2 += cryptoLookup(0x400 + (seed & 0xFF)) //nolint:gomnd // Decryption magic - result := binary.LittleEndian.Uint32(data[i : i+4]) - result ^= seed + seed2 - seed = ((^seed << 21) + 0x11111111) | (seed >> 11) - seed2 = result + seed2 + (seed2 << 5) + 3 //nolint:gomnd // Decryption magic - - data[i+0] = uint8(result & 0xff) //nolint:gomnd // Decryption magic - data[i+1] = uint8((result >> 8) & 0xff) //nolint:gomnd // Decryption magic - data[i+2] = uint8((result >> 16) & 0xff) //nolint:gomnd // Decryption magic - data[i+3] = uint8((result >> 24) & 0xff) //nolint:gomnd // Decryption magic - } -} - -func hashString(key string, hashType uint32) uint32 { - seed1 := uint32(0x7FED7FED) //nolint:gomnd // Decryption magic - seed2 := uint32(0xEEEEEEEE) //nolint:gomnd // Decryption magic - - /* prepare seeds. */ - for _, char := range strings.ToUpper(key) { - seed1 = cryptoLookup((hashType*0x100)+uint32(char)) ^ (seed1 + seed2) - seed2 = uint32(char) + seed1 + seed2 + (seed2 << 5) + 3 //nolint:gomnd // Decryption magic - } - - return seed1 -} - -// GetFileBlockData gets a block table entry -func (v *MPQ) getFileBlockData(fileName string) (BlockTableEntry, error) { - fileEntry, found := v.hashEntryMap.Find(fileName) - - if !found || fileEntry.BlockIndex >= uint32(len(v.blockTableEntries)) { - return BlockTableEntry{}, errors.New("file not found") - } - - return v.blockTableEntries[fileEntry.BlockIndex], nil -} - -// Close closes the MPQ file -func (v *MPQ) Close() { - err := v.file.Close() - if err != nil { - log.Panic(err) - } -} - -// FileExists checks the mpq to see if the file exists -func (v *MPQ) FileExists(fileName string) bool { - return v.hashEntryMap.Contains(fileName) -} - -// ReadFile reads a file from the MPQ and returns a memory stream -func (v *MPQ) ReadFile(fileName string) ([]byte, error) { - fileBlockData, err := v.getFileBlockData(fileName) - if err != nil { - return []byte{}, err - } - - fileBlockData.FileName = strings.ToLower(fileName) - - fileBlockData.calculateEncryptionSeed() - mpqStream, err := CreateStream(v, fileBlockData, fileName) - - if err != nil { - return []byte{}, err - } - - buffer := make([]byte, fileBlockData.UncompressedFileSize) - mpqStream.Read(buffer, 0, fileBlockData.UncompressedFileSize) - - return buffer, nil -} - -// ReadFileStream reads the mpq file data and returns a stream -func (v *MPQ) ReadFileStream(fileName string) (d2interface.DataStream, error) { - fileBlockData, err := v.getFileBlockData(fileName) - - if err != nil { - return nil, err - } - - fileBlockData.FileName = strings.ToLower(fileName) - fileBlockData.calculateEncryptionSeed() - - mpqStream, err := CreateStream(v, fileBlockData, fileName) - if err != nil { - return nil, err - } - - return &MpqDataStream{stream: mpqStream}, nil -} - -// ReadTextFile reads a file and returns it as a string -func (v *MPQ) ReadTextFile(fileName string) (string, error) { - data, err := v.ReadFile(fileName) - - if err != nil { - return "", err - } - - return string(data), nil -} - -func (v *BlockTableEntry) calculateEncryptionSeed() { - fileName := path.Base(v.FileName) - v.EncryptionSeed = hashString(fileName, 3) - - if !v.HasFlag(FileFixKey) { - return - } - - v.EncryptionSeed = (v.EncryptionSeed + v.FilePosition) ^ v.UncompressedFileSize -} - -// GetFileList returns the list of files in this MPQ -func (v *MPQ) GetFileList() ([]string, error) { - data, err := v.ReadFile("(listfile)") - - if err != nil { - return nil, err - } - - raw := strings.TrimRight(string(data), "\x00") - s := bufio.NewScanner(strings.NewReader(raw)) - - var filePaths []string - - for s.Scan() { - filePath := s.Text() - filePaths = append(filePaths, filePath) - } - - return filePaths, nil -} - -// Path returns the MPQ file path -func (v *MPQ) Path() string { - return v.filePath -} - -// Contains returns bool for whether the given filename exists in the mpq -func (v *MPQ) Contains(filename string) bool { - return v.hashEntryMap.Contains(filename) -} - -// Size returns the size of the mpq in bytes -func (v *MPQ) Size() uint32 { - return v.data.ArchiveSize + return os.Open(path.Join(mpqDir, mpqName)) //nolint:gosec // Will fix later } diff --git a/d2common/d2fileformats/d2mpq/mpq_block.go b/d2common/d2fileformats/d2mpq/mpq_block.go new file mode 100644 index 00000000..112e0e89 --- /dev/null +++ b/d2common/d2fileformats/d2mpq/mpq_block.go @@ -0,0 +1,77 @@ +package d2mpq + +import ( + "io" + "strings" +) + +// FileFlag represents flags for a file record in the MPQ archive +type FileFlag uint32 + +const ( + // FileImplode - File is compressed using PKWARE Data compression library + FileImplode FileFlag = 0x00000100 + // FileCompress - File is compressed using combination of compression methods + FileCompress FileFlag = 0x00000200 + // FileEncrypted - The file is encrypted + FileEncrypted FileFlag = 0x00010000 + // FileFixKey - The decryption key for the file is altered according to the position of the file in the archive + FileFixKey FileFlag = 0x00020000 + // FilePatchFile - The file contains incremental patch for an existing file in base MPQ + FilePatchFile FileFlag = 0x00100000 + // FileSingleUnit - Instead of being divided to 0x1000-bytes blocks, the file is stored as single unit + FileSingleUnit FileFlag = 0x01000000 + // FileDeleteMarker - File is a deletion marker, indicating that the file no longer exists. This is used to allow patch + // archives to delete files present in lower-priority archives in the search chain. The file usually + // has length of 0 or 1 byte and its name is a hash + FileDeleteMarker FileFlag = 0x02000000 + // FileSectorCrc - File has checksums for each sector. Ignored if file is not compressed or imploded. + FileSectorCrc FileFlag = 0x04000000 + // FileExists - Set if file exists, reset when the file was deleted + FileExists FileFlag = 0x80000000 +) + +// Block represents an entry in the block table +type Block struct { // 16 bytes + FilePosition uint32 + CompressedFileSize uint32 + UncompressedFileSize uint32 + Flags FileFlag + // Local Stuff... + FileName string + EncryptionSeed uint32 +} + +// HasFlag returns true if the specified flag is present +func (b *Block) HasFlag(flag FileFlag) bool { + return (b.Flags & flag) != 0 +} + +func (b *Block) calculateEncryptionSeed(fileName string) { + fileName = fileName[strings.LastIndex(fileName, `\`)+1:] + seed := hashString(fileName, 3) + b.EncryptionSeed = (seed + b.FilePosition) ^ b.UncompressedFileSize +} + +//nolint:gomnd // number +func (mpq *MPQ) readBlockTable() error { + if _, err := mpq.file.Seek(int64(mpq.header.BlockTableOffset), io.SeekStart); err != nil { + return err + } + + blockData, err := decryptTable(mpq.file, mpq.header.BlockTableEntries, "(block table)") + if err != nil { + return err + } + + for n, i := uint32(0), uint32(0); i < mpq.header.BlockTableEntries; n, i = n+4, i+1 { + mpq.blocks = append(mpq.blocks, &Block{ + FilePosition: blockData[n], + CompressedFileSize: blockData[n+1], + UncompressedFileSize: blockData[n+2], + Flags: FileFlag(blockData[n+3]), + }) + } + + return nil +} diff --git a/d2common/d2fileformats/d2mpq/mpq_data_stream.go b/d2common/d2fileformats/d2mpq/mpq_data_stream.go index db66260c..3a92064a 100644 --- a/d2common/d2fileformats/d2mpq/mpq_data_stream.go +++ b/d2common/d2fileformats/d2mpq/mpq_data_stream.go @@ -11,14 +11,14 @@ type MpqDataStream struct { // Read reads data from the data stream func (m *MpqDataStream) Read(p []byte) (n int, err error) { - totalRead := m.stream.Read(p, 0, uint32(len(p))) - return int(totalRead), nil + totalRead, err := m.stream.Read(p, 0, uint32(len(p))) + return int(totalRead), err } // Seek sets the position of the data stream func (m *MpqDataStream) Seek(offset int64, whence int) (int64, error) { - m.stream.CurrentPosition = uint32(offset + int64(whence)) - return int64(m.stream.CurrentPosition), nil + m.stream.Position = uint32(offset + int64(whence)) + return int64(m.stream.Position), nil } // Close closes the data stream diff --git a/d2common/d2fileformats/d2mpq/mpq_hash.go b/d2common/d2fileformats/d2mpq/mpq_hash.go new file mode 100644 index 00000000..3f1f744a --- /dev/null +++ b/d2common/d2fileformats/d2mpq/mpq_hash.go @@ -0,0 +1,45 @@ +package d2mpq + +import "io" + +// Hash represents a hashed file entry in the MPQ file +type Hash struct { // 16 bytes + A uint32 + B uint32 + Locale uint16 + Platform uint16 + BlockIndex uint32 +} + +// Name64 returns part A and B as uint64 +func (h *Hash) Name64() uint64 { + return uint64(h.A)<<32 | uint64(h.B) +} + +//nolint:gomnd // number +func (mpq *MPQ) readHashTable() error { + if _, err := mpq.file.Seek(int64(mpq.header.HashTableOffset), io.SeekStart); err != nil { + return err + } + + hashData, err := decryptTable(mpq.file, mpq.header.HashTableEntries, "(hash table)") + if err != nil { + return err + } + + mpq.hashes = make(map[uint64]*Hash) + + for n, i := uint32(0), uint32(0); i < mpq.header.HashTableEntries; n, i = n+4, i+1 { + e := &Hash{ + A: hashData[n], + B: hashData[n+1], + // https://github.com/OpenDiablo2/OpenDiablo2/issues/812 + Locale: uint16(hashData[n+2] >> 16), //nolint:gomnd // // binary data + Platform: uint16(hashData[n+2] & 0xFFFF), //nolint:gomnd // // binary data + BlockIndex: hashData[n+3], + } + mpq.hashes[e.Name64()] = e + } + + return nil +} diff --git a/d2common/d2fileformats/d2mpq/mpq_header.go b/d2common/d2fileformats/d2mpq/mpq_header.go new file mode 100644 index 00000000..f27cfaf7 --- /dev/null +++ b/d2common/d2fileformats/d2mpq/mpq_header.go @@ -0,0 +1,36 @@ +package d2mpq + +import ( + "encoding/binary" + "errors" + "io" +) + +// Header Represents a MPQ file +type Header struct { + Magic [4]byte + HeaderSize uint32 + ArchiveSize uint32 + FormatVersion uint16 + BlockSize uint16 + HashTableOffset uint32 + BlockTableOffset uint32 + HashTableEntries uint32 + BlockTableEntries uint32 +} + +func (mpq *MPQ) readHeader() error { + if _, err := mpq.file.Seek(0, io.SeekStart); err != nil { + return err + } + + if err := binary.Read(mpq.file, binary.LittleEndian, &mpq.header); err != nil { + return err + } + + if string(mpq.header.Magic[:]) != "MPQ\x1A" { + return errors.New("invalid mpq header") + } + + return nil +} diff --git a/d2common/d2fileformats/d2mpq/mpq_stream.go b/d2common/d2fileformats/d2mpq/mpq_stream.go index b6156322..5be4951d 100644 --- a/d2common/d2fileformats/d2mpq/mpq_stream.go +++ b/d2common/d2fileformats/d2mpq/mpq_stream.go @@ -6,8 +6,7 @@ import ( "encoding/binary" "errors" "fmt" - "log" - "strings" + "io" "github.com/JoshVarga/blast" @@ -17,80 +16,63 @@ import ( // Stream represents a stream of data in an MPQ archive type Stream struct { - BlockTableEntry BlockTableEntry - BlockPositions []uint32 - CurrentData []byte - FileName string - MPQData *MPQ - EncryptionSeed uint32 - CurrentPosition uint32 - CurrentBlockIndex uint32 - BlockSize uint32 + Data []byte + Positions []uint32 + MPQ *MPQ + Block *Block + Index uint32 + Size uint32 + Position uint32 } // CreateStream creates an MPQ stream -func CreateStream(mpq *MPQ, blockTableEntry BlockTableEntry, fileName string) (*Stream, error) { - result := &Stream{ - MPQData: mpq, - BlockTableEntry: blockTableEntry, - CurrentBlockIndex: 0xFFFFFFFF, //nolint:gomnd // MPQ magic - } - fileSegs := strings.Split(fileName, `\`) - result.EncryptionSeed = hashString(fileSegs[len(fileSegs)-1], 3) - - if result.BlockTableEntry.HasFlag(FileFixKey) { - result.EncryptionSeed = (result.EncryptionSeed + result.BlockTableEntry.FilePosition) ^ result.BlockTableEntry.UncompressedFileSize +func CreateStream(mpq *MPQ, block *Block, fileName string) (*Stream, error) { + s := &Stream{ + MPQ: mpq, + Block: block, + Index: 0xFFFFFFFF, //nolint:gomnd // MPQ magic } - result.BlockSize = 0x200 << result.MPQData.data.BlockSize //nolint:gomnd // MPQ magic - - if result.BlockTableEntry.HasFlag(FilePatchFile) { - log.Fatal("Patching is not supported") + if s.Block.HasFlag(FileFixKey) { + s.Block.calculateEncryptionSeed(fileName) } - var err error + s.Size = 0x200 << s.MPQ.header.BlockSize //nolint:gomnd // MPQ magic - if (result.BlockTableEntry.HasFlag(FileCompress) || result.BlockTableEntry.HasFlag(FileImplode)) && - !result.BlockTableEntry.HasFlag(FileSingleUnit) { - err = result.loadBlockOffsets() + if s.Block.HasFlag(FilePatchFile) { + return nil, errors.New("patching is not supported") } - return result, err + if (s.Block.HasFlag(FileCompress) || s.Block.HasFlag(FileImplode)) && !s.Block.HasFlag(FileSingleUnit) { + if err := s.loadBlockOffsets(); err != nil { + return nil, err + } + } + + return s, nil } func (v *Stream) loadBlockOffsets() error { - blockPositionCount := ((v.BlockTableEntry.UncompressedFileSize + v.BlockSize - 1) / v.BlockSize) + 1 - v.BlockPositions = make([]uint32, blockPositionCount) - - _, err := v.MPQData.file.Seek(int64(v.BlockTableEntry.FilePosition), 0) - if err != nil { + if _, err := v.MPQ.file.Seek(int64(v.Block.FilePosition), io.SeekStart); err != nil { return err } - mpqBytes := make([]byte, blockPositionCount*4) //nolint:gomnd // MPQ magic + blockPositionCount := ((v.Block.UncompressedFileSize + v.Size - 1) / v.Size) + 1 + v.Positions = make([]uint32, blockPositionCount) - _, err = v.MPQData.file.Read(mpqBytes) - if err != nil { + if err := binary.Read(v.MPQ.file, binary.LittleEndian, &v.Positions); err != nil { return err } - for i := range v.BlockPositions { - idx := i * 4 //nolint:gomnd // MPQ magic - v.BlockPositions[i] = binary.LittleEndian.Uint32(mpqBytes[idx : idx+4]) - } + if v.Block.HasFlag(FileEncrypted) { + decrypt(v.Positions, v.Block.EncryptionSeed-1) - blockPosSize := blockPositionCount << 2 //nolint:gomnd // MPQ magic - - if v.BlockTableEntry.HasFlag(FileEncrypted) { - decrypt(v.BlockPositions, v.EncryptionSeed-1) - - if v.BlockPositions[0] != blockPosSize { - log.Println("Decryption of MPQ failed!") + blockPosSize := blockPositionCount << 2 //nolint:gomnd // MPQ magic + if v.Positions[0] != blockPosSize { return errors.New("decryption of MPQ failed") } - if v.BlockPositions[1] > v.BlockSize+blockPosSize { - log.Println("Decryption of MPQ failed!") + if v.Positions[1] > v.Size+blockPosSize { return errors.New("decryption of MPQ failed") } } @@ -98,16 +80,18 @@ func (v *Stream) loadBlockOffsets() error { return nil } -func (v *Stream) Read(buffer []byte, offset, count uint32) uint32 { - if v.BlockTableEntry.HasFlag(FileSingleUnit) { +func (v *Stream) Read(buffer []byte, offset, count uint32) (readTotal uint32, err error) { + if v.Block.HasFlag(FileSingleUnit) { return v.readInternalSingleUnit(buffer, offset, count) } - toRead := count - readTotal := uint32(0) + var read uint32 + toRead := count for toRead > 0 { - read := v.readInternal(buffer, offset, toRead) + if read, err = v.readInternal(buffer, offset, toRead); err != nil { + return 0, err + } if read == 0 { break @@ -118,149 +102,153 @@ func (v *Stream) Read(buffer []byte, offset, count uint32) uint32 { toRead -= read } - return readTotal + return readTotal, nil } -func (v *Stream) readInternalSingleUnit(buffer []byte, offset, count uint32) uint32 { - if len(v.CurrentData) == 0 { - v.loadSingleUnit() +func (v *Stream) readInternalSingleUnit(buffer []byte, offset, count uint32) (uint32, error) { + if len(v.Data) == 0 { + if err := v.loadSingleUnit(); err != nil { + return 0, err + } } - bytesToCopy := d2math.Min(uint32(len(v.CurrentData))-v.CurrentPosition, count) - - copy(buffer[offset:offset+bytesToCopy], v.CurrentData[v.CurrentPosition:v.CurrentPosition+bytesToCopy]) - - v.CurrentPosition += bytesToCopy - - return bytesToCopy + return v.copy(buffer, offset, v.Position, count) } -func (v *Stream) readInternal(buffer []byte, offset, count uint32) uint32 { - v.bufferData() +func (v *Stream) readInternal(buffer []byte, offset, count uint32) (uint32, error) { + if err := v.bufferData(); err != nil { + return 0, err + } - localPosition := v.CurrentPosition % v.BlockSize - bytesToCopy := d2math.MinInt32(int32(len(v.CurrentData))-int32(localPosition), int32(count)) + localPosition := v.Position % v.Size + return v.copy(buffer, offset, localPosition, count) +} + +func (v *Stream) copy(buffer []byte, offset, pos, count uint32) (uint32, error) { + bytesToCopy := d2math.Min(uint32(len(v.Data))-pos, count) if bytesToCopy <= 0 { - return 0 + return 0, nil } - copy(buffer[offset:offset+uint32(bytesToCopy)], v.CurrentData[localPosition:localPosition+uint32(bytesToCopy)]) + copy(buffer[offset:offset+bytesToCopy], v.Data[pos:pos+bytesToCopy]) + v.Position += bytesToCopy - v.CurrentPosition += uint32(bytesToCopy) - - return uint32(bytesToCopy) + return bytesToCopy, nil } -func (v *Stream) bufferData() { - requiredBlock := v.CurrentPosition / v.BlockSize +func (v *Stream) bufferData() (err error) { + blockIndex := v.Position / v.Size - if requiredBlock == v.CurrentBlockIndex { - return + if blockIndex == v.Index { + return nil } - expectedLength := d2math.Min(v.BlockTableEntry.UncompressedFileSize-(requiredBlock*v.BlockSize), v.BlockSize) - v.CurrentData = v.loadBlock(requiredBlock, expectedLength) - v.CurrentBlockIndex = requiredBlock + expectedLength := d2math.Min(v.Block.UncompressedFileSize-(blockIndex*v.Size), v.Size) + if v.Data, err = v.loadBlock(blockIndex, expectedLength); err != nil { + return err + } + + v.Index = blockIndex + + return nil } -func (v *Stream) loadSingleUnit() { - fileData := make([]byte, v.BlockSize) - - _, err := v.MPQData.file.Seek(int64(v.MPQData.data.HeaderSize), 0) - if err != nil { - log.Print(err) +func (v *Stream) loadSingleUnit() (err error) { + if _, err = v.MPQ.file.Seek(int64(v.MPQ.header.HeaderSize), io.SeekStart); err != nil { + return err } - _, err = v.MPQData.file.Read(fileData) - if err != nil { - log.Print(err) + fileData := make([]byte, v.Size) + + if _, err = v.MPQ.file.Read(fileData); err != nil { + return err } - if v.BlockSize == v.BlockTableEntry.UncompressedFileSize { - v.CurrentData = fileData - return + if v.Size == v.Block.UncompressedFileSize { + v.Data = fileData + return nil } - v.CurrentData = decompressMulti(fileData, v.BlockTableEntry.UncompressedFileSize) + v.Data, err = decompressMulti(fileData, v.Block.UncompressedFileSize) + + return err } -func (v *Stream) loadBlock(blockIndex, expectedLength uint32) []byte { +func (v *Stream) loadBlock(blockIndex, expectedLength uint32) ([]byte, error) { var ( offset uint32 toRead uint32 ) - if v.BlockTableEntry.HasFlag(FileCompress) || v.BlockTableEntry.HasFlag(FileImplode) { - offset = v.BlockPositions[blockIndex] - toRead = v.BlockPositions[blockIndex+1] - offset + if v.Block.HasFlag(FileCompress) || v.Block.HasFlag(FileImplode) { + offset = v.Positions[blockIndex] + toRead = v.Positions[blockIndex+1] - offset } else { - offset = blockIndex * v.BlockSize + offset = blockIndex * v.Size toRead = expectedLength } - offset += v.BlockTableEntry.FilePosition + offset += v.Block.FilePosition data := make([]byte, toRead) - _, err := v.MPQData.file.Seek(int64(offset), 0) - if err != nil { - log.Print(err) + if _, err := v.MPQ.file.Seek(int64(offset), io.SeekStart); err != nil { + return []byte{}, err } - _, err = v.MPQData.file.Read(data) - if err != nil { - log.Print(err) + if _, err := v.MPQ.file.Read(data); err != nil { + return []byte{}, err } - if v.BlockTableEntry.HasFlag(FileEncrypted) && v.BlockTableEntry.UncompressedFileSize > 3 { - if v.EncryptionSeed == 0 { - panic("Unable to determine encryption key") + if v.Block.HasFlag(FileEncrypted) && v.Block.UncompressedFileSize > 3 { + if v.Block.EncryptionSeed == 0 { + return []byte{}, errors.New("unable to determine encryption key") } - decryptBytes(data, blockIndex+v.EncryptionSeed) + decryptBytes(data, blockIndex+v.Block.EncryptionSeed) } - if v.BlockTableEntry.HasFlag(FileCompress) && (toRead != expectedLength) { - if !v.BlockTableEntry.HasFlag(FileSingleUnit) { - data = decompressMulti(data, expectedLength) - } else { - data = pkDecompress(data) + if v.Block.HasFlag(FileCompress) && (toRead != expectedLength) { + if !v.Block.HasFlag(FileSingleUnit) { + return decompressMulti(data, expectedLength) } + + return pkDecompress(data) } - if v.BlockTableEntry.HasFlag(FileImplode) && (toRead != expectedLength) { - data = pkDecompress(data) + if v.Block.HasFlag(FileImplode) && (toRead != expectedLength) { + return pkDecompress(data) } - return data + return data, nil } //nolint:gomnd // Will fix enum values later -func decompressMulti(data []byte /*expectedLength*/, _ uint32) []byte { +func decompressMulti(data []byte /*expectedLength*/, _ uint32) ([]byte, error) { compressionType := data[0] switch compressionType { case 1: // Huffman - panic("huffman decompression not supported") + return []byte{}, errors.New("huffman decompression not supported") case 2: // ZLib/Deflate return deflate(data[1:]) case 8: // PKLib/Impode return pkDecompress(data[1:]) case 0x10: // BZip2 - panic("bzip2 decompression not supported") + return []byte{}, errors.New("bzip2 decompression not supported") case 0x80: // IMA ADPCM Stereo - return d2compression.WavDecompress(data[1:], 2) + return d2compression.WavDecompress(data[1:], 2), nil case 0x40: // IMA ADPCM Mono - return d2compression.WavDecompress(data[1:], 1) + return d2compression.WavDecompress(data[1:], 1), nil case 0x12: - panic("lzma decompression not supported") + return []byte{}, errors.New("lzma decompression not supported") // Combos case 0x22: // sparse then zlib - panic("sparse decompression + deflate decompression not supported") + return []byte{}, errors.New("sparse decompression + deflate decompression not supported") case 0x30: // sparse then bzip2 - panic("sparse decompression + bzip2 decompression not supported") + return []byte{}, errors.New("sparse decompression + bzip2 decompression not supported") case 0x41: sinput := d2compression.HuffmanDecompress(data[1:]) sinput = d2compression.WavDecompress(sinput, 1) @@ -268,69 +256,68 @@ func decompressMulti(data []byte /*expectedLength*/, _ uint32) []byte { copy(tmp, sinput) - return tmp + return tmp, nil case 0x48: // byte[] result = PKDecompress(sinput, outputLength); // return MpqWavCompression.Decompress(new MemoryStream(result), 1); - panic("pk + mpqwav decompression not supported") + return []byte{}, errors.New("pk + mpqwav decompression not supported") case 0x81: sinput := d2compression.HuffmanDecompress(data[1:]) sinput = d2compression.WavDecompress(sinput, 2) tmp := make([]byte, len(sinput)) copy(tmp, sinput) - return tmp + return tmp, nil case 0x88: // byte[] result = PKDecompress(sinput, outputLength); // return MpqWavCompression.Decompress(new MemoryStream(result), 2); - panic("pk + wav decompression not supported") - default: - panic(fmt.Sprintf("decompression not supported for unknown compression type %X", compressionType)) + return []byte{}, errors.New("pk + wav decompression not supported") } + + return []byte{}, fmt.Errorf("decompression not supported for unknown compression type %X", compressionType) } -func deflate(data []byte) []byte { +func deflate(data []byte) ([]byte, error) { b := bytes.NewReader(data) + r, err := zlib.NewReader(b) - if err != nil { - panic(err) + return []byte{}, err } buffer := new(bytes.Buffer) _, err = buffer.ReadFrom(r) if err != nil { - log.Panic(err) + return []byte{}, err } err = r.Close() if err != nil { - log.Panic(err) + return []byte{}, err } - return buffer.Bytes() + return buffer.Bytes(), nil } -func pkDecompress(data []byte) []byte { +func pkDecompress(data []byte) ([]byte, error) { b := bytes.NewReader(data) - r, err := blast.NewReader(b) + r, err := blast.NewReader(b) if err != nil { - panic(err) + return []byte{}, err } buffer := new(bytes.Buffer) - _, err = buffer.ReadFrom(r) - if err != nil { - panic(err) + if _, err = buffer.ReadFrom(r); err != nil { + return []byte{}, err } err = r.Close() if err != nil { - panic(err) + return []byte{}, err } - return buffer.Bytes() + return buffer.Bytes(), nil } diff --git a/d2common/d2interface/archive.go b/d2common/d2interface/archive.go index 5e9d60da..9de0f9ea 100644 --- a/d2common/d2interface/archive.go +++ b/d2common/d2interface/archive.go @@ -8,10 +8,9 @@ type Archive interface { Path() string Contains(string) bool Size() uint32 - Close() - FileExists(fileName string) bool + Close() error ReadFile(fileName string) ([]byte, error) ReadFileStream(fileName string) (DataStream, error) ReadTextFile(fileName string) (string, error) - GetFileList() ([]string, error) + Listfile() ([]string, error) } diff --git a/d2common/d2loader/asset/types/source_types.go b/d2common/d2loader/asset/types/source_types.go index 563c3a7b..32a2b402 100644 --- a/d2common/d2loader/asset/types/source_types.go +++ b/d2common/d2loader/asset/types/source_types.go @@ -37,7 +37,8 @@ func Ext2SourceType(ext string) SourceType { func CheckSourceType(path string) SourceType { // on MacOS, the MPQ's from blizzard don't have file extensions // so we just attempt to init the file as an mpq - if _, err := d2mpq.Load(path); err == nil { + if mpq, err := d2mpq.New(path); err == nil { + _ = mpq.Close() return AssetSourceMPQ } diff --git a/d2common/d2loader/mpq/source.go b/d2common/d2loader/mpq/source.go index 4a326a42..d5b4236d 100644 --- a/d2common/d2loader/mpq/source.go +++ b/d2common/d2loader/mpq/source.go @@ -14,7 +14,7 @@ var _ asset.Source = &Source{} // NewSource creates a new MPQ Source func NewSource(sourcePath string) (asset.Source, error) { - loaded, err := d2mpq.Load(sourcePath) + loaded, err := d2mpq.FromFile(sourcePath) if err != nil { return nil, err } diff --git a/utils/extract-mpq/extract-mpq.go b/utils/extract-mpq/extract-mpq.go index 6c556b77..2d4d42c0 100644 --- a/utils/extract-mpq/extract-mpq.go +++ b/utils/extract-mpq/extract-mpq.go @@ -33,13 +33,13 @@ func main() { } filename := flag.Arg(0) - mpq, err := d2mpq.Load(filename) + mpq, err := d2mpq.FromFile(filename) if err != nil { log.Fatal(err) } - list, err := mpq.GetFileList() + list, err := mpq.Listfile() if err != nil { log.Fatal(err) }