This repository has been archived on 2026-05-24. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
AgrarianGameArchive/Source/AgrarianGame/AgrarianDemoNoticeWidget.h
T
2026-05-17 20:02:22 -07:00

76 lines
2.1 KiB
C++

// Copyright Pacificao. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Blueprint/UserWidget.h"
#include "AgrarianDemoNoticeWidget.generated.h"
UCLASS()
class AGRARIANGAME_API UAgrarianDemoNoticeWidget : public UUserWidget
{
GENERATED_BODY()
public:
virtual void NativeConstruct() override;
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Agrarian|Demo")
FText Motto = FText::FromString(TEXT("What survives after you are gone?"));
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Agrarian|Demo")
FText VersionLabel = FText::FromString(TEXT("Investor Demo v0.1.H - Build 2026.05.17"));
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Agrarian|Demo")
FText DemoNotice = FText::FromString(TEXT("Beta prototype build - not for public distribution"));
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Agrarian|Demo")
FText CopyrightNotice = FText::FromString(TEXT("Copyright (c) 2026 Agrarian Studio. All rights reserved."));
protected:
virtual int32 NativePaint(
const FPaintArgs& Args,
const FGeometry& AllottedGeometry,
const FSlateRect& MyCullingRect,
FSlateWindowElementList& OutDrawElements,
int32 LayerId,
const FWidgetStyle& InWidgetStyle,
bool bParentEnabled) const override;
private:
float CreditsStartTimeSeconds = 0.0f;
void DrawCenteredText(
FSlateWindowElementList& OutDrawElements,
int32& LayerId,
const FGeometry& AllottedGeometry,
const FText& Text,
float Y,
const FSlateFontInfo& Font,
const FLinearColor& Color) const;
void DrawTextAt(
FSlateWindowElementList& OutDrawElements,
int32& LayerId,
const FGeometry& AllottedGeometry,
const FText& Text,
const FVector2D& Position,
float Width,
const FSlateFontInfo& Font,
const FLinearColor& Color) const;
void DrawCinematicCredits(
FSlateWindowElementList& OutDrawElements,
int32& LayerId,
const FGeometry& AllottedGeometry) const;
void DrawCreditIllustration(
FSlateWindowElementList& OutDrawElements,
int32& LayerId,
const FGeometry& AllottedGeometry,
const FVector2D& Position,
const FVector2D& Size,
int32 IllustrationIndex,
const FLinearColor& AccentColor,
float Alpha) const;
};