07 - Lap Display & Respawn Handling

编辑MyPlayController的UpdateLap事件 主要逻辑是修改当前圈数变量 同时调用LapTimeCheck计算最佳时间


07 - Lap Display & Respawn Handling_第1张图片

编辑RespawnVehicle事件 通过RespawnLocation重新在该位置生成车 并添加控制器


07 - Lap Display & Respawn Handling_第2张图片

编辑车辆蓝图 VehicleAdvBP/Blueprints/Vehicle Blueprint 

修改Even BeginPlay 获得并保存PlayerController 并将当前的默认位置赋值该Controller的RespawnLocation


07 - Lap Display & Respawn Handling_第3张图片

添加函数RespawnCheck 用来判断车辆是否当前处于无法控制状态  需要重置

无法控制通过两个判断进行决定

一是当前车辆的z轴与世界的z轴夹角大于60度 即车辆处于翻车状态

二是当前车辆的速度小于5


07 - Lap Display & Respawn Handling_第4张图片
设置该函数返回一个bool值

在蓝图的EventGraph图标中 修改Event tick 逻辑 添加一部分处理用来重置车辆



07 - Lap Display & Respawn Handling_第5张图片
07 - Lap Display & Respawn Handling_第6张图片
如果不可控 等待4s后在判断 如果还是不可控 销毁当前actor 在销毁事件中 调用controller的Respawn函数

你可能感兴趣的:(07 - Lap Display & Respawn Handling)