fixes and testing

Bounce works
add null check and default
This commit is contained in:
David Markowitz 2023-08-10 01:55:35 -07:00
parent facc225b82
commit a3b62d60f0
2 changed files with 4 additions and 2 deletions

View File

@ -70,7 +70,7 @@ void MovementAIComponent::SetupPath(const std::string& pathname) {
waypoints.push_back(waypoint.position);
}
SetPath(waypoints);
SetMaxSpeed(3.0f);
SetMaxSpeed(30.0f);
} else {
Game::logger->Log("MovementAIComponent", "No path found for %i:%llu", m_Parent->GetLOT(), m_Parent->GetObjectID());
}
@ -152,7 +152,7 @@ void MovementAIComponent::Update(const float deltaTime) {
HandleWaypointArrived();
if (!AdvancePathWaypointIndex()) {
if (m_Path && m_Path->pathBehavior == PathBehavior::Bounce) {
ReversePath(); // untested.
ReversePath();
} else if (m_Path && m_Path->pathBehavior == PathBehavior::Loop) {
m_CurrentPathWaypointIndex = 0;
m_NextPathWaypointIndex = 0;

View File

@ -4,6 +4,7 @@
#include "eWaypointCommandType.h"
void MovementAIComponent::HandleWaypointArrived() {
if (!m_Path) return;
if (m_Path->pathWaypoints[m_CurrentPathWaypointIndex].commands.empty()) return;
for(auto [command, data] : m_Path->pathWaypoints[m_CurrentPathWaypointIndex].commands){
switch(command){
@ -75,6 +76,7 @@ void MovementAIComponent::HandleWaypointArrived() {
Game::logger->Log("MovementAIComponentAronwk", "Unusable Command %i", command);
break;
case eWaypointCommandType::INVALID:
default:
Game::logger->LogDebug("MovementAIComponentAronwk", "Got invalid waypoint command %i", command);
break;
}