diff --git a/dCommon/dEnums/eWaypointCommandType.h b/dCommon/dEnums/eWaypointCommandType.h index 9cb3cf00..ffa7b720 100644 --- a/dCommon/dEnums/eWaypointCommandType.h +++ b/dCommon/dEnums/eWaypointCommandType.h @@ -25,8 +25,6 @@ enum class eWaypointCommandType : uint32_t { PLAY_SOUND, }; - - class WaypointCommandType { public: static eWaypointCommandType StringToWaypointCommandType(std::string commandString) { diff --git a/dGame/dComponents/MovementAIComponentAronwk.cpp b/dGame/dComponents/MovementAIComponentAronwk.cpp index cbe007f8..1dc57edc 100644 --- a/dGame/dComponents/MovementAIComponentAronwk.cpp +++ b/dGame/dComponents/MovementAIComponentAronwk.cpp @@ -7,44 +7,76 @@ void MovementAIComponent::HandleWaypointArrived() { if (m_Path->pathWaypoints[m_CurrentPathWaypointIndex].commands.empty()) return; for(auto [command, data] : m_Path->pathWaypoints[m_CurrentPathWaypointIndex].commands){ switch(command){ - case eWaypointCommandType::BOUNCE: - break; case eWaypointCommandType::STOP: + // call stop break; case eWaypointCommandType::GROUP_EMOTE: + // get group + // make them all emote break; case eWaypointCommandType::SET_VARIABLE: + // set network variable??? break; case eWaypointCommandType::CAST_SKILL: + // just call cast skill lol break; case eWaypointCommandType::EQUIP_INVENTORY: + // equip item via ID (not lot???) break; case eWaypointCommandType::UNEQUIP_INVENTORY: + // unequip item via ID (not lot??) break; case eWaypointCommandType::DELAY: + // number break; case eWaypointCommandType::EMOTE: + // emote name break; case eWaypointCommandType::TELEPORT: + // x,y,z break; case eWaypointCommandType::PATH_SPEED: + // set speed? break; case eWaypointCommandType::REMOVE_NPC: + // get objects in proximity + // KillOBJS ??? break; case eWaypointCommandType::CHANGE_WAYPOINT: - break; - case eWaypointCommandType::DELETE_SELF: + // std::string path_string = ""; + // sometimes there's a path and what waypoint to start, which are comma separated + // if (intermed.find(",") != std::string::npos){ + // auto datas = GeneralUtils::SplitString(intermed, ','); + // path_string = datas[0]; + // m_PathIndex = stoi(datas[1]) - 1; + // } else { + // path_string = intermed; + // m_PathIndex = 0; + // } + + // if (path_string != "") { + // SetMovementPath(const_cast(dZoneManager::Instance()->GetZone()->GetPath(path_string))); + // } else m_MovementPath = nullptr; break; case eWaypointCommandType::KILL_SELF: + // Kill Silent break; + case eWaypointCommandType::DELETE_SELF: case eWaypointCommandType::REMOVE_SELF: + // Delete Object break; case eWaypointCommandType::SPAWN_OBJECT: + // just make a new object break; case eWaypointCommandType::PLAY_SOUND: + // msgPlayNDAudioEmitter + break; + case eWaypointCommandType::BOUNCE: + Game::logger->Log("MovementAIComponentAronwk", "Unusable Command %i", command); break; case eWaypointCommandType::INVALID: Game::logger->LogDebug("MovementAIComponentAronwk", "Got invalid waypoint command %i", command); + break; } } }