【UE4 C++】 SaveGame 存档/读档
2024-09-07 21:04:32
创建 SaveGame 类
继承自 USaveGame
UCLASS()
class TIPS_API USimpleSaveGame : public USaveGame
{
GENERATED_BODY() public: UPROPERTY(EditAnywhere)
FString PlayerName; UPROPERTY(EditAnywhere)
float PlayerHealth = 0.f; UPROPERTY(EditAnywhere)
FTransform PlayerTrans;
};
存档/读档
存档
bool ADataDriveActor::SaveGame(const FString& Name, float Health, FTransform Transform)
{
USimpleSaveGame* SaveGameIns = Cast<USimpleSaveGame>(UGameplayStatics::LoadGameFromSlot(TEXT("SaveGame"), 0));
if (!SaveGameIns)
{
SaveGameIns = Cast<USimpleSaveGame>(UGameplayStatics::CreateSaveGameObject(USimpleSaveGame::StaticClass()));
}
SaveGameIns->PlayerName = Name;
SaveGameIns->PlayerHealth = Health;
SaveGameIns->PlayerTrans = Transform; return UGameplayStatics::SaveGameToSlot(SaveGameIns, TEXT("SaveGame"), 0);
}
读档
bool ADataDriveActor::LoadSaveGame(FString& Name, float& Health, FTransform& Transform)
{
USimpleSaveGame* SaveGameIns = Cast<USimpleSaveGame>(UGameplayStatics::LoadGameFromSlot(TEXT("SaveGame"), 0));
if (!SaveGameIns)
{
return false;
}
Name = SaveGameIns->PlayerName;
Health = SaveGameIns->PlayerHealth;
Transform = SaveGameIns->PlayerTrans; UE_LOG(LogTemp, Warning, TEXT("%s\t %f\n %s"), *Name, Health, *Transform.ToString());
return true;
}
最新文章
- PHP 检查并创建多级目录
- Add listitem with javascript 分类: Sharepoint 2015-07-16 20:23 4人阅读 评论(0) 收藏
- 翻译qmake文档(三) Creating Project Files
- POJ 1330 Nearest Common Ancestors (最近公共祖先LCA + 详解博客)
- 面向服务架构(SOA)和企业服务总线(ESB)
- java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月
- Cardinality Feedback
- 首页banner特效
- HDU1358:Period
- 学习ajax 总结
- Android视频录制
- iOS-OC-基础-NSDictionary常用方法
- Logstash 默认不处理一天前的文件
- const使用摘要
- spring容器启动的加载过程(二)
- bzoj 4813: [Cqoi2017]小Q的棋盘
- css 如何隐藏滚动条
- [NOI 2009]变换序列
- mysql建表规范及注意事项
- bat脚本的写法