TSharedRef<FJsonObject> UFlareSaveWriter::SaveTradeRoute(FFlareTradeRouteSave* Data) { TSharedRef<FJsonObject> JsonObject = MakeShareable(new FJsonObject()); JsonObject->SetStringField("Name", Data->Name.ToString()); JsonObject->SetStringField("Identifier", Data->Identifier.ToString()); JsonObject->SetStringField("FleetIdentifier", Data->FleetIdentifier.ToString()); JsonObject->SetStringField("TargetSectorIdentifier", Data->TargetSectorIdentifier.ToString()); JsonObject->SetStringField("CurrentOperationIndex", FormatInt32(Data->CurrentOperationIndex)); JsonObject->SetStringField("CurrentOperationProgress", FormatInt32(Data->CurrentOperationProgress)); JsonObject->SetStringField("CurrentOperationDuration", FormatInt32(Data->CurrentOperationDuration)); JsonObject->SetBoolField("IsPaused", Data->IsPaused); TArray< TSharedPtr<FJsonValue> > Sectors; for(int i = 0; i < Data->Sectors.Num(); i++) { Sectors.Add(MakeShareable(new FJsonValueObject(SaveTradeRouteSector(&Data->Sectors[i])))); } JsonObject->SetArrayField("Sectors", Sectors); return JsonObject; }
TSharedRef<FJsonObject> UFlareSaveWriter::SaveTradeRoute(FFlareTradeRouteSave* Data) { TSharedRef<FJsonObject> JsonObject = MakeShareable(new FJsonObject()); JsonObject->SetStringField("Name", Data->Name.ToString()); JsonObject->SetStringField("Identifier", Data->Identifier.ToString()); TArray< TSharedPtr<FJsonValue> > FleetIdentifiers; for(int i = 0; i < Data->FleetIdentifiers.Num(); i++) { FleetIdentifiers.Add(MakeShareable(new FJsonValueString(Data->FleetIdentifiers[i].ToString()))); } JsonObject->SetArrayField("FleetIdentifiers", FleetIdentifiers); TArray< TSharedPtr<FJsonValue> > Sectors; for(int i = 0; i < Data->Sectors.Num(); i++) { Sectors.Add(MakeShareable(new FJsonValueObject(SaveTradeRouteSector(&Data->Sectors[i])))); } JsonObject->SetArrayField("Sectors", Sectors); return JsonObject; }