diff options
| author | Physcik <mynameisgennadiy@vk.com> | 2026-01-10 17:27:55 +0500 |
|---|---|---|
| committer | Physcik <mynameisgennadiy@vk.com> | 2026-01-10 17:27:55 +0500 |
| commit | a364d4330dfd34f953f64e90020f8b8d6f2e82c4 (patch) | |
| tree | db71d125f633832b130821f3aec07d4b714ab7bb /engine/Components/Packages/Package.go | |
| parent | e6ccb74f77d0d03d33c422ca7dc942422074d7dd (diff) | |
World storage system change
Diffstat (limited to 'engine/Components/Packages/Package.go')
| -rw-r--r-- | engine/Components/Packages/Package.go | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/engine/Components/Packages/Package.go b/engine/Components/Packages/Package.go deleted file mode 100644 index 9f2fdd2..0000000 --- a/engine/Components/Packages/Package.go +++ /dev/null @@ -1,70 +0,0 @@ -package packages - -import ( - "encoding/json" - "fmt" - "os" - - world "github.com/DegustatorPonos/RuinesOfRafdolon/Components/World" - settings "github.com/DegustatorPonos/RuinesOfRafdolon/Settings" - rl "github.com/gen2brain/raylib-go/raylib" -) - -type PackageDescription struct { - Name string `json:"name"` - Version uint64 `json:"version"` - Type string `json:"type"` - MinimumVersion *settings.AppVersion - MaximumVersion *settings.AppVersion -} - -type Package struct { - Description PackageDescription `json:"description"` - Worlds map[string]world.World `json:"-"` -} - -func (base *Package) String() string { - var outp, jsonErr = json.Marshal(base) - if jsonErr != nil { - return fmt.Sprintf("Failed to parse settings: %s", jsonErr.Error()) - } - return string(outp) -} - -func ReadPackage(dir os.DirEntry) (*Package, error) { - var dirPath = ConcantinateFileLocation(settings.Current.PackagesLocation, dir.Name()) - var desc = PackageDescription{} - if descErr := ReadValidJSONfromFile(ConcantinateFileLocation(dirPath, "Description.json"), &desc); descErr != nil { - return nil, descErr - } - return &Package{ - Description: desc, - }, nil -} - -func (base *PackageDescription) IsValid() error { - if base.Name == "" { - return fmt.Errorf("Invalid package descriptor: the name cannot be empty") - } - if base.Version == 0{ - return fmt.Errorf("Invalid package descriptor: the version cannot be 0") - } - return nil -} - -func loadWorldsFromDir(dirLocation string) (map[string]world.World, error) { - var files, err = os.ReadDir(dirLocation) - if err != nil { - return nil, err - } - var outp = make(map[string]world.World) - for _, v := range files { - var new = world.World{} - var loadErr = ReadJSONfromFile(ConcantinateFileLocation(dirLocation, v.Name()), &new) - if loadErr != nil { - rl.TraceLog(rl.LogWarning, "Failed to load the world %s: %s", v.Name(), loadErr) - continue - } - } - return outp, nil -} |
