问题
NPC 的 Controller 设置在 self 下的 “Details” 中的 “Pawn” 里的 “AI Cotroller Class” 里设置。
在编辑器中设置了这个,把 NPC 拖进场景,NPC 就可以按照设计好的 Controller 进行移动了。但是有一个实际遇到的问题是:当 NPC 死亡,我们通过 “SpawnActorFromClass” 重新生成一个新的 NPC,会发现 NPC 的 “EventPlay” 会跑到,但是 “onPossess” 不会跑到。具体到游戏中就是,NPC 复活后不会动。
解决方案
同样在 NPC 的 BP 中 self 下的 “Details” 中的 “Pawn” 里,将 “Auto Possess AI” 设置为 "Placed in World or Spawned"。这是因为默认是拖进场景时,会 possess controller,spawn 时不会。