# Deprecations

Consequat velit occaecat voluptate consectetur laboris duis esse ad nisi ad reprehenderit. Cillum ad nisi ex enim exercitation ut laboris ex enim aliquip tempor eiusmod veniam ad. Do sit tempor exercitation dolore commodo occaecat cillum dolore elit nisi ad elit laboris nostrud.

## What Changed

| 1.x | 2.0 | Notes |
| --- | --- | --- |
| UVoxelWaterPulseManager | UVoxelWaterPulseSubsystem | Now a game instance subsystem |
| FVoxelWaterPulseOptions | FVoxelWaterPulseConfig | Fields renamed to match the settings |
| OnVoxelWaterPulseReady | OnInitialized | Fires once per world |

## Before

```cpp
// Declare delegates for event-driven communication
DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnStateChanged, EMyState, NewState);
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FOnProgressUpdated, float, Progress, FString, Message);

UPROPERTY(BlueprintAssignable, Category = "Events")
FOnStateChanged OnStateChanged;

UPROPERTY(BlueprintAssignable, Category = "Events")
FOnProgressUpdated OnProgressUpdated;

// Broadcasting events
void UMyManager::UpdateState(EMyState NewState)
{
    CurrentState = NewState;
    OnStateChanged.Broadcast(NewState);
    OnProgressUpdated.Broadcast(GetProgress(), GetStatusMessage());
}
```

## After

```cpp
// Unit test example
IMPLEMENT_SIMPLE_AUTOMATION_TEST(
    FVoxelWaterPulseBasicTest,
    "VoxelWaterPulse.Core.BasicFunctionality",
    EAutomationTestFlags::ApplicationContextMask | EAutomationTestFlags::ProductFilter
)

bool FVoxelWaterPulseBasicTest::RunTest(const FString& Parameters)
{
    UVoxelWaterPulseSubsystem* Subsystem = NewObject<UVoxelWaterPulseSubsystem>();
    TestNotNull(TEXT("Subsystem should be created"), Subsystem);

    Subsystem->Initialize();
    TestTrue(TEXT("Subsystem should be initialized"), Subsystem->IsInitialized());

    FMyQueryParams Params;
    Params.Radius = 500.0f;
    TestTrue(TEXT("Query params should be valid"), Params.IsValid());

    return true;
}
```

## Steps

1. Cillum sit ea esse nulla voluptate reprehenderit fugiat sed aliqua ea do.
2. Incididunt ullamco consequat voluptate do ipsum commodo ut tempor excepteur dolore aliqua.
3. Magna reprehenderit excepteur voluptate sit ad quis aliquip ea aliqua consequat ut.
4. Et ut nostrud esse consectetur nulla irure sit fugiat.
5. Labore ad consectetur irure esse consectetur sed veniam dolore.
6. Aute nulla nulla nulla lorem reprehenderit sint sed.

> **Warning:** Back up your project before you migrate it to 2.0.