first epoch pass
Some checks failed
Build Go/Fyne App for macOS ARM64 / build (pull_request) Has been cancelled
Some checks failed
Build Go/Fyne App for macOS ARM64 / build (pull_request) Has been cancelled
This commit is contained in:
@@ -8,9 +8,9 @@ import (
|
||||
"path/filepath"
|
||||
"sync"
|
||||
|
||||
"turtlesilicon/pkg/debug"
|
||||
"turtlesilicon/pkg/paths" // Corrected import path
|
||||
"turtlesilicon/pkg/utils" // Corrected import path
|
||||
"epochsilicon/pkg/debug"
|
||||
"epochsilicon/pkg/paths" // Corrected import path
|
||||
"epochsilicon/pkg/utils" // Corrected import path
|
||||
|
||||
"fyne.io/fyne/v2"
|
||||
"fyne.io/fyne/v2/dialog"
|
||||
@@ -110,7 +110,7 @@ func LaunchGame(myWindow fyne.Window) {
|
||||
return
|
||||
}
|
||||
if paths.EpochPath == "" {
|
||||
dialog.ShowError(fmt.Errorf("TurtleWoW path not set. Please set it in the patcher."), myWindow)
|
||||
dialog.ShowError(fmt.Errorf("Epoch path not set. Please set it in the patcher."), myWindow)
|
||||
return
|
||||
}
|
||||
if !paths.PatchesAppliedEpoch || !paths.PatchesAppliedCrossOver {
|
||||
@@ -132,28 +132,9 @@ func LaunchGame(myWindow fyne.Window) {
|
||||
}
|
||||
gameMutex.Unlock()
|
||||
|
||||
debug.Println("Preparing to launch TurtleSilicon...")
|
||||
debug.Println("Preparing to launch EpochSilicon...")
|
||||
|
||||
// Determine which WoW executable to use based on vanilla-tweaks preference
|
||||
var wowExePath string
|
||||
if EnableVanillaTweaks {
|
||||
if !CheckForWoWTweakedExecutable() {
|
||||
// Show dialog asking if user wants us to apply vanilla-tweaks
|
||||
HandleVanillaTweaksRequest(myWindow, func() {
|
||||
// After successful patching, continue with launch using the tweaked executable
|
||||
wowTweakedExePath := GetWoWTweakedExecutablePath()
|
||||
if wowTweakedExePath != "" {
|
||||
continueLaunch(myWindow, wowTweakedExePath)
|
||||
} else {
|
||||
dialog.ShowError(fmt.Errorf("failed to find WoW-tweaked.exe after patching"), myWindow)
|
||||
}
|
||||
})
|
||||
return // Exit early since dialog will handle the continuation
|
||||
}
|
||||
wowExePath = GetWoWTweakedExecutablePath()
|
||||
} else {
|
||||
wowExePath = filepath.Join(paths.EpochPath, "WoW.exe")
|
||||
}
|
||||
wowExePath := filepath.Join(paths.EpochPath, "Project-Epoch.exe")
|
||||
|
||||
// Continue with normal launch process
|
||||
continueLaunch(myWindow, wowExePath)
|
||||
@@ -161,12 +142,12 @@ func LaunchGame(myWindow fyne.Window) {
|
||||
|
||||
// continueLaunch continues the game launch process with the specified executable
|
||||
func continueLaunch(myWindow fyne.Window, wowExePath string) {
|
||||
rosettaInTurtlePath := filepath.Join(paths.EpochPath, "rosettax87")
|
||||
rosettaExecutable := filepath.Join(rosettaInTurtlePath, "rosettax87")
|
||||
rosettaInEpochPath := filepath.Join(paths.EpochPath, "rosettax87")
|
||||
rosettaExecutable := filepath.Join(rosettaInEpochPath, "rosettax87")
|
||||
wineloader2Path := filepath.Join(paths.CrossoverPath, "Contents", "SharedSupport", "CrossOver", "CrossOver-Hosted Application", "wineloader2")
|
||||
|
||||
if !utils.PathExists(rosettaExecutable) {
|
||||
dialog.ShowError(fmt.Errorf("rosetta executable not found at %s. Ensure TurtleWoW patching was successful", rosettaExecutable), myWindow)
|
||||
dialog.ShowError(fmt.Errorf("rosetta executable not found at %s. Ensure Epoch patching was successful", rosettaExecutable), myWindow)
|
||||
return
|
||||
}
|
||||
if !utils.PathExists(wineloader2Path) {
|
||||
@@ -174,7 +155,7 @@ func continueLaunch(myWindow fyne.Window, wowExePath string) {
|
||||
return
|
||||
}
|
||||
if !utils.PathExists(wowExePath) {
|
||||
dialog.ShowError(fmt.Errorf("WoW executable not found at %s. Ensure your TurtleWoW directory is correct", wowExePath), myWindow)
|
||||
dialog.ShowError(fmt.Errorf("WoW executable not found at %s. Ensure your Epoch directory is correct", wowExePath), myWindow)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -198,7 +179,7 @@ func continueLaunch(myWindow fyne.Window, wowExePath string) {
|
||||
debug.Println("RosettaX87 service is running. Proceeding to launch WoW.")
|
||||
|
||||
if paths.CrossoverPath == "" || paths.EpochPath == "" {
|
||||
dialog.ShowError(fmt.Errorf("CrossOver path or TurtleWoW path is not set. Cannot launch WoW."), myWindow)
|
||||
dialog.ShowError(fmt.Errorf("CrossOver path or Epoch path is not set. Cannot launch WoW."), myWindow)
|
||||
return
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user