- UUILoadingScreen_Base (Game/UI/Common/) generica: Configure(Context), MarkStepRunning/Done/Failed, OnLoadingComplete delegate, progress bar reativa e rotacao automatica de dicas via timer. - Etapas configuradas por contexto em UZMMOLoadingProfilesDataAsset (DA_LoadingProfiles). Perfil inicial FrontEndEnteringWorld: Travel -> MapLoaded -> Spawn. - Dicas em DT_LoadingTips (FText localizavel + filtro por contexto + GameplayTag de categoria). 4 dicas seed. - UIFrontEndFlowSubsystem agora bloqueia a transicao InWorld ate o HandlePlayerSpawned (bIsLocal=true) — usuario nao ve mundo vazio. - WBP_Loading em /UI/Shared/Loading/ (neutro, reusavel pelo InGame futuro); DA_FrontEndScreenSet[EnteringWorld] aponta pra ele. - DefaultGame.ini wire LoadingProfilesAsset + LoadingTipsAsset. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
66 lines
3.6 KiB
INI
66 lines
3.6 KiB
INI
[/Script/EngineSettings.GeneralProjectSettings]
|
|
ProjectID=FC3E256F43B2AFD43009F4949B0814BE
|
|
ProjectName=Third Person Game Template
|
|
|
|
; -----------------------------------------------------------------------------
|
|
; ZMMO Theme subsystem (see Source/ZMMO/Game/UI/ZMMOThemeSubsystem.h and
|
|
; ARQUITETURA.md §1.10 / §4.7).
|
|
;
|
|
; - DefaultThemeAsset is the fallback theme (must define every EZMMOThemeKey).
|
|
; - ThemeRegistry maps ThemeId -> seasonal DA_Theme_* asset.
|
|
; - CalendarTable points to DT_ThemeCalendar (FThemeCalendarRow rows).
|
|
; - UIStyleTable points to DT_UI_Styles (FUIStyleRow rows): tokens de estilo
|
|
; (cores/fontes/dimensões) keyed por ThemeId; linha "Default" é o fallback.
|
|
; - DevThemeOverride forces a theme in non-Shipping builds only. Keep commented
|
|
; in production.
|
|
;
|
|
; Paths use the /Game prefix (cooked Content namespace). Uncomment after the
|
|
; assets are actually created in the editor.
|
|
; -----------------------------------------------------------------------------
|
|
[/Script/ZMMO.ZMMOThemeSubsystem]
|
|
;DefaultThemeAsset=/Game/ZMMO/UI/Themes/DA_Theme_Default.DA_Theme_Default
|
|
;+ThemeRegistry=(("Christmas", "/Game/ZMMO/UI/Themes/DA_Theme_Christmas.DA_Theme_Christmas"))
|
|
;+ThemeRegistry=(("Halloween", "/Game/ZMMO/UI/Themes/DA_Theme_Halloween.DA_Theme_Halloween"))
|
|
;CalendarTable=/Game/ZMMO/UI/Themes/DT_ThemeCalendar.DT_ThemeCalendar
|
|
UIStyleTable=/Game/ZMMO/Data/UI/DT_UI_Styles.DT_UI_Styles
|
|
;DevThemeOverride=Christmas
|
|
|
|
[/Script/ZMMO.UIFrontEndFlowSubsystem]
|
|
; Mapa estado->tela. O DA já existe (RootLayoutClass = WBP_PrimaryGameLayout);
|
|
; StateScreens fica vazio até os WBPs de página virem do Zeus UMG Forge (§4.8).
|
|
ScreenSetAsset=/Game/ZMMO/UI/FrontEnd/DA_FrontEndScreenSet.DA_FrontEndScreenSet
|
|
|
|
; Fase 4 — char spawn DB-driven. DT_Maps espelha o `maps_config.json` do
|
|
; server (Server/ZeusServerEngine/Config/DataTables/maps_config.json) — o
|
|
; cliente resolve `mapId -> ClientLevel/spawns` via FZMMOMapDef rows.
|
|
MapsTableAsset=/Game/ZMMO/Data/World/DT_Maps.DT_Maps
|
|
|
|
; Loading dinâmico (etapas + dicas). DA_LoadingProfiles tem 1 perfil por
|
|
; contexto (EZMMOLoadingContext); DT_LoadingTips rotaciona durante o load.
|
|
; Cliente local marca etapas via eventos (sem opcode novo).
|
|
LoadingProfilesAsset=/Game/ZMMO/Data/UI/Loading/DA_LoadingProfiles.DA_LoadingProfiles
|
|
LoadingTipsAsset=/Game/ZMMO/Data/UI/Loading/DT_LoadingTips.DT_LoadingTips
|
|
|
|
; -----------------------------------------------------------------------------
|
|
; UI in-game (PR 19+). Espelho do front-end pattern:
|
|
; - ScreenSetAsset mapeia EZMMOInGameUIState -> WBP (Playing -> WBP_HUD,
|
|
; StatusWindow -> WBP_StatusWindow, etc.)
|
|
; - Subsystem orquestra: AZMMOHUD::BeginPlay chama StartInGame que vai pra
|
|
; Playing.
|
|
; Asset criado via MCP em /Game/ZMMO/UI/InGame/DA_InGameScreenSet.
|
|
; -----------------------------------------------------------------------------
|
|
[/Script/ZMMO.UIInGameFlowSubsystem]
|
|
ScreenSetAsset=/Game/ZMMO/UI/InGame/DA_InGameScreenSet.DA_InGameScreenSet
|
|
|
|
; -----------------------------------------------------------------------------
|
|
; PlayerState Component Registry (PR 19+). Cada módulo MMO registra seus
|
|
; UActorComponent aqui. O AZMMOPlayerState lê esta lista no construtor e
|
|
; instancia cada classe como subobject — pattern Open-Closed: adicionar
|
|
; Inventory/Skills/Guild = mais uma linha aqui, sem editar AZMMOPlayerState.
|
|
;
|
|
; Convenção: usa o path /Script/<Module>.<ClassName> (sem o "U" do prefixo
|
|
; C++; UClass resolve pelo nome curto).
|
|
; -----------------------------------------------------------------------------
|
|
[/Script/ZMMO.ZMMOPlayerState]
|
|
+ComponentClasses=/Script/ZMMOAttributes.ZMMOAttributeComponent
|