// Portage UE 5.5 - remplacement des 2 seuls noeuds du Victory Plugin utilises par LifePlay. // // Le plugin d'origine (VictoryBPLibrary, 9327 lignes sur 17 fichiers) dependait de PhysX, // APEX et ApexDestruction, supprimes d'UE5. Un releve exhaustif sur les 8562 .uasset du // projet n'a trouve que deux fonctions appelees, depuis 5 assets seulement, plus // l'enumeration EJoyImageFormats. // // Detail complet : Docs/Architecture/VictoryPlugin_Architecture.md // // Les noms et signatures sont reproduits a l'identique pour que les noeuds Blueprint // existants se rebranchent seuls ; le raccordement se fait par les CoreRedirects // declares dans Config/DefaultEngine.ini. #pragma once #include "CoreMinimal.h" #include "Kismet/BlueprintFunctionLibrary.h" #include "LPVictoryCompat.generated.h" class UTexture2D; /** * Formats d'image acceptes par Victory_LoadTexture2D_FromFile. * L'ordre des membres est celui du plugin d'origine : il est serialise en octet dans les * valeurs par defaut des broches Blueprint, toute permutation les corromprait. */ UENUM(BlueprintType) enum class EJoyImageFormats : uint8 { JPG UMETA(DisplayName="JPG "), PNG UMETA(DisplayName="PNG "), BMP UMETA(DisplayName="BMP "), ICO UMETA(DisplayName="ICO "), EXR UMETA(DisplayName="EXR "), ICNS UMETA(DisplayName="ICNS ") }; UCLASS() class LIFEPLAY_API ULPVictoryCompat : public UBlueprintFunctionLibrary { GENERATED_BODY() public: /** Load a Texture2D from a JPG,PNG,BMP,ICO,EXR,ICNS file! IsValid tells you if file path was valid or not. Enjoy! -Rama */ UFUNCTION(BlueprintPure, Category = "Victory BP Library|Load Texture From File", meta=(Keywords="image png jpg jpeg bmp bitmap ico icon exr icns")) static UTexture2D* Victory_LoadTexture2D_FromFile(const FString& FullFilePath, EJoyImageFormats ImageFormat, bool& IsValid, int32& Width, int32& Height); UFUNCTION(BlueprintCallable, Category = "Victory BP Library|String") static void Victory_SaveStringToOSClipboard(const FString& ToClipboard); };