Files
ZMMO/Source/ZMMO/Game/UI/FrontEnd/ZeusCharSummary.h
Mateus Rodrigues 6a6a28a086 refactor: prefixo ZMMO -> Zeus em classes/módulos C++ do cliente
- Renomeia ~50 classes UCLASS/USTRUCT/UENUM/UINTERFACE pra Zeus*
  (AZeusGameMode, AZeusCharacter, UZeusGameInstance, IZeusEntityInterface,
  UZeusWorldSubsystem, FZeusEntitySnapshot, etc.)
- Encurta AZMMOPlayerCharacter -> AZeusCharacter
- Renomeia módulos satélite ZMMOAttributes -> ZeusAttributes e
  ZMMOJobs -> ZeusJobs (pasta + .Build.cs + .uproject)
- Mantém módulo principal ZMMO (renomeia depois quando jogo ganhar nome)
- DefaultEngine.ini: ActiveClassRedirects ZMMOX -> ZeusX (preserva BPs/assets)
- DefaultGame.ini: sections atualizadas pra ZeusThemeSubsystem/ZeusPlayerState
- Category="ZMMO|..." -> "Zeus|..." em UPROPERTYs
- Preserva LogZMMO, ZMMO_API, /Script/ZMMO., /Game/ZMMO/, classes Target

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 17:24:38 -03:00

104 lines
3.0 KiB
C

#pragma once
#include "CoreMinimal.h"
#include "ZeusCharSummary.generated.h"
/** Stats primarios do personagem (espelha `CharStats` em char.types.ts). */
USTRUCT(BlueprintType)
struct FZeusCharStats
{
GENERATED_BODY()
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Str = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Agi = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Vit = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Int = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Dex = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Luk = 1;
};
/** Aparencia (espelha `CharAppearance` em char.types.ts). */
USTRUCT(BlueprintType)
struct FZeusCharAppearance
{
GENERATED_BODY()
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 Hair = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 HairColor = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 SkinColor = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char") int32 BodyType = 0;
};
/**
* Resumo de personagem recebido do CharServer via S_CHAR_LIST.
* Espelha `CharSummary` em `Server/ZeusCharServer/src/types/char.types.ts`.
*/
USTRUCT(BlueprintType)
struct FZeusCharSummary
{
GENERATED_BODY()
/** charId — BIGINT UNSIGNED no banco; armazenado como FString aqui pra preservar 64 bits. */
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FString CharId;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FString RealmId;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 Slot = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FString Name;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 ClassId = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 BaseLevel = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 BaseExp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 JobLevel = 1;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 JobExp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FZeusCharStats Stats;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 Hp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 MaxHp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 Sp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 MaxSp = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 Money = 0;
/** ID do mapa (uint16). Resolvido via DT_Maps no cliente. 0 = invalido. */
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int32 MapId = 0;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FVector Position = FVector::ZeroVector;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
float YawDeg = 0.f;
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
FZeusCharAppearance Appearance;
/** Epoch ms em que o delete vai efetivar. 0 = nao agendado. */
UPROPERTY(BlueprintReadOnly, Category = "Zeus|Char")
int64 DeleteScheduledAtMs = 0;
};