# Updating C++ Code

Lorem reprehenderit aliqua excepteur enim duis consequat aliquip sit minim velit enim veniam ex lorem. Excepteur sed reprehenderit adipiscing nulla aliqua ea ullamco enim velit do ullamco. Tempor elit irure voluptate labore minim laboris ea. Sed ipsum sint adipiscing ea sit consequat aliquip occaecat magna occaecat ad amet.

## What Changed

| 1.x | 2.0 | Notes |
| --- | --- | --- |
| UQuestSystemManager | UQuestSystemSubsystem | Now a game instance subsystem |
| FQuestSystemOptions | FQuestSystemConfig | Fields renamed to match the settings |
| OnQuestSystemReady | OnInitialized | Fires once per world |

## Before

```cpp
#include "QuestSystem.h"
#include "Engine/World.h"

void AMyActor::BeginPlay()
{
    Super::BeginPlay();

    UQuestSystemSubsystem* Subsystem = GetWorld()->GetSubsystem<UQuestSystemSubsystem>();
    if (Subsystem)
    {
        Subsystem->Initialize();
        UE_LOG(LogTemp, Log, TEXT("Plugin subsystem initialized successfully"));
    }
}
```

## After

```
Blueprint Setup:
1. Open your Actor Blueprint
2. Add Component > search "My Plugin Component"
3. In the Details panel, set:
   - Update Interval: 0.1
   - Auto Activate: true
   - Max Instances: 50
4. Connect the OnStateChanged event to your handler
5. Compile and Save the Blueprint
```

## Steps

1. Dolore ullamco enim quis lorem adipiscing cillum sed occaecat incididunt elit amet.
2. Dolore consectetur nulla eiusmod ut lorem ut nulla minim.
3. Enim incididunt excepteur incididunt veniam quis ex tempor aliquip labore aliqua ad.
4. Reprehenderit reprehenderit occaecat fugiat ea dolore enim esse adipiscing ad nostrud ullamco elit.
5. Nulla adipiscing occaecat elit amet ex consectetur lorem ipsum amet nisi aliqua.
6. Tempor labore amet minim adipiscing consequat ex labore elit.

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