Finished phase 1

This commit is contained in:
olehhapuk
2026-05-29 18:57:20 +03:00
parent b0a0a89c44
commit b6b81caf4e
11 changed files with 152 additions and 59 deletions
+3 -11
View File
@@ -10,22 +10,14 @@
void AWardrobe::AddItem(UClothingItemInstance* ClothingItemInstance)
{
USaveSubsystem* SaveSubsystem = UGameplayStatics::GetGameInstance(GetWorld())->GetSubsystem<USaveSubsystem>();
ClothingItems.Push(ClothingItemInstance);
FItemSaveRecord ItemSaveRecord;
ItemSaveRecord.Init(ClothingItemInstance);
SaveSubsystem->GetCurrentSave()->WardrobeItems.Push(ItemSaveRecord);
SaveSubsystem->GetCurrentSave()->AddWardrobeItem(ClothingItemInstance);
}
void AWardrobe::RemoveItem(UClothingItemInstance* ClothingItemInstance) const
{
USaveSubsystem* SaveSubsystem = UGameplayStatics::GetGameInstance(GetWorld())->GetSubsystem<USaveSubsystem>();
SaveSubsystem->GetCurrentSave()->WardrobeItems.RemoveAll([ClothingItemInstance](const FItemSaveRecord& Item)
{
return Item.InstanceId == ClothingItemInstance->GetInstanceId();
});
SaveSubsystem->GetCurrentSave()->RemoveWardrobeItem(ClothingItemInstance);
}
void AWardrobe::BeginPlay()
@@ -35,7 +27,7 @@ void AWardrobe::BeginPlay()
USaveSubsystem* SaveSubsystem = UGameplayStatics::GetGameInstance(GetWorld())->GetSubsystem<USaveSubsystem>();
UGlobalSaveGameData* SaveGame = SaveSubsystem->GetCurrentSave();
for (const FItemSaveRecord& ItemSaveRecord : SaveGame->WardrobeItems)
for (const FItemSaveRecord& ItemSaveRecord : SaveGame->GetWardrobeItems())
{
UClothingItemInstance* NewItemInstance = UClothingItemInstance::CreateFromSave(this, ItemSaveRecord);
ClothingItems.Push(NewItemInstance);