36 lines
1.4 KiB
C++
36 lines
1.4 KiB
C++
// Portage UE 5.5 - lot L7l (ERR-036, amelioration : defaut deja present en 4.27).
|
|
//
|
|
// Chaque lieu est construit par l'acteur Room (GI.Room) dont la racine prend l'echelle Z de la ligne 1 du
|
|
// .lpworld : 0,2 a 0,4 en interieur, 0,01 pour les 7 lieux exterieurs. Le plafond WallT (Z relatif 2040,
|
|
// sans collision) suit cette echelle : en exterieur il se trouve a ~20 cm au-dessus du sol et, vu de la
|
|
// camera, devient un "sol blanc" qui cache les pieds et le bas des meubles (releve L7l_releve3).
|
|
//
|
|
// Ce sous-systeme masque WallT tant que l'echelle Z de la racine de Room est inferieure au seuil, et le
|
|
// rend de nouveau visible des que la piece redevient interieure (seulement s'il l'a lui-meme masque).
|
|
// Aucun Blueprint ni asset n'est modifie ; sans Room ou sans WallT, il ne fait rien.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Containers/Ticker.h"
|
|
#include "Subsystems/GameInstanceSubsystem.h"
|
|
#include "LPOutdoorRoomSubsystem.generated.h"
|
|
|
|
class USceneComponent;
|
|
|
|
UCLASS()
|
|
class LIFEPLAY_API ULPOutdoorRoomSubsystem : public UGameInstanceSubsystem
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
virtual void Initialize(FSubsystemCollectionBase& Collection) override;
|
|
virtual void Deinitialize() override;
|
|
|
|
private:
|
|
bool Tick(float DeltaTime);
|
|
|
|
FTSTicker::FDelegateHandle TickHandle;
|
|
/** Plafond masque par ce sous-systeme (a rendre visible quand la piece redevient interieure). */
|
|
TWeakObjectPtr<USceneComponent> HiddenCeiling;
|
|
};
|