Files
ChildHood/Source/ChildHood/ChildHoodGameMode.cpp
T
starmen1265 237885e3b8 fix(interaction): 修复编译错误和交互系统集成问题
- SystemDriver: EffectManager改为值持有,去掉TUniquePtr和条件编译
- SystemDriver: 补充EngineUtils.h include修复TActorIterator编译错误
- GameMode: BeginPlay自动Spawn ASystemDriver
- InteractableActor: 改为abstract基类,子类自行创建交互组件
- DoorActor: 创建DoorInteractableComp替代基类组件
- EffectManager: 实现ExecuteToggleDoor调用实际门开关逻辑
- InteractableComponent/DoorComponent: 修复GetGameInstance路径和调用方式
- EffectManager: Broadcast改为Execute(单播委托)
2026-06-12 00:51:00 +08:00

27 lines
668 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "ChildHoodGameMode.h"
#include "SystemDriver.h"
AChildHoodGameMode::AChildHoodGameMode()
{
// stub
}
void AChildHoodGameMode::BeginPlay()
{
Super::BeginPlay();
// 自动 Spawn ASystemDriver(全局交互系统驱动器)
// 如果关卡中已手动放置则跳过,避免重复
if (UWorld* World = GetWorld())
{
if (!ASystemDriver::Get(this))
{
FActorSpawnParameters SpawnParams;
SpawnParams.SpawnCollisionHandlingOverride = ESpawnActorCollisionHandlingMethod::AlwaysSpawn;
World->SpawnActor<ASystemDriver>(ASystemDriver::StaticClass(), FTransform::Identity, SpawnParams);
}
}
}