package main import ( "encoding/json" "log" "os" components "github.com/DegustatorPonos/RuinesOfRafdolon/Components" coreobjects "github.com/DegustatorPonos/RuinesOfRafdolon/CoreObjects" dynamic "github.com/DegustatorPonos/RuinesOfRafdolon/Dynamic" descriptors "github.com/DegustatorPonos/RuinesOfRafdolon/Dynamic/Descriptors" render "github.com/DegustatorPonos/RuinesOfRafdolon/Render" settings "github.com/DegustatorPonos/RuinesOfRafdolon/Settings" ui "github.com/DegustatorPonos/RuinesOfRafdolon/UI" rl "github.com/gen2brain/raylib-go/raylib" ) func main() { settings.ReadSettings() components.InitManager() dynamic.Init() render.InitWindow() defer render.DeinitWindow() // TEMPORARY SECTION for _, v := range dynamic.Manager.AvaliablePackages { // log.Printf("%s: %s", k, &v) v.LoadTextures() v.LoadObjects() v.LoadWorlds() } log.Printf("Resource manager: %s", &components.Resources) var manager = coreobjects.InitSceneManager() // render.StartLoop(manager, components.Resources.Worlds["MainWorld"]) var menu = menu_test() render.StartLoop(manager, menu) } func test_desc() (ui.UIElement, error) { var file, fErr = os.ReadFile("MainMenu.json") if fErr != nil { return nil, fErr } var desc = descriptors.UIElementDescriptor{} if jsonErr := json.Unmarshal(file, &desc); jsonErr != nil { return nil, jsonErr } var parsed, parseErr = desc.Parse() if parseErr != nil { return nil, parseErr } return parsed, nil } func menu_test() *ui.Menu { var loadedMenu, loadErr = test_desc() if loadErr != nil { panic(loadErr.Error()) } var prerender = false if !prerender { return &ui.Menu { PaddingX: 0.05, PaddingY: 0.1, Contents: loadedMenu, } } return &ui.Menu { PaddingX: 0.05, PaddingY: 0.1, Contents: &ui.GridColumn { Weight: 2, Objects: []ui.UIElement { &ui.Label { Text: "xdx", Style: ui.Style { BacgroundColor: &rl.Pink, }, }, &ui.Label { Text: "xdx", Style: ui.Style { BacgroundColor: &rl.Pink, }, }, }, }, } }