public void Init() { if (isInit) { return; } isInit = true; InitGameObjects(); HUDConfiguration hudConfig = new HUDConfiguration(); hudConfig.active = true; hudConfig.visible = false; HUDController.i.CreateHudElement <BuildModeHUDController>(hudConfig, HUDController.HUDElementID.BUILDER_IN_WORLD_MAIN); HUDController.i.CreateHudElement <BuilderInWorldInititalHUDController>(hudConfig, HUDController.HUDElementID.BUILDER_IN_WORLD_INITIAL); HUDController.i.builderInWorldMainHud.Initialize(); HUDController.i.builderInWorldInititalHud.OnEnterEditMode += TryStartEnterEditMode; HUDController.i.builderInWorldMainHud.OnTutorialAction += StartTutorial; HUDController.i.builderInWorldMainHud.OnLogoutAction += ExitEditMode; ConfigureLoadingController(); InitControllers(); CommonScriptableObjects.builderInWorldNotNecessaryUIVisibilityStatus.Set(true); catalogAsyncOp = BuilderInWorldUtils.MakeGetCall(BuilderInWorldSettings.BASE_URL_ASSETS_PACK, CatalogReceived); isCatalogLoading = true; BuilderInWorldNFTController.i.Initialize(); BuilderInWorldNFTController.i.OnNFTUsageChange += OnNFTUsageChange; }