30 lines
976 B
C++
30 lines
976 B
C++
// Garde ERR-008 : GI.FocusOnMapMarkers lit MapMarkers.WidgetComponents[0] sans test de longueur.
|
|
// Apres HideAllMarkers (ou un spawn sans amenite), le tableau est vide → spam log + SetInputMode None.
|
|
// Ce sous-systeme maintient une entree valide (composant de focus invisible) et vide Vector2Ds
|
|
// quand le tableau est vide, pour eviter le desync AddMarker. Aucun Blueprint n'est modifie.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Containers/Ticker.h"
|
|
#include "Subsystems/GameInstanceSubsystem.h"
|
|
#include "LPMapMarkersGuardSubsystem.generated.h"
|
|
|
|
class AActor;
|
|
|
|
UCLASS()
|
|
class LIFEPLAY_API ULPMapMarkersGuardSubsystem : public UGameInstanceSubsystem
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
virtual void Initialize(FSubsystemCollectionBase& Collection) override;
|
|
virtual void Deinitialize() override;
|
|
|
|
private:
|
|
bool Tick(float DeltaTime);
|
|
void Guard(AActor* Markers);
|
|
|
|
FTSTicker::FDelegateHandle TickHandle;
|
|
bool bLoggedOnce = false;
|
|
};
|