mirror of
https://github.com/OpenFusionProject/OpenFusion.git
synced 2024-11-23 21:50:09 +00:00
Restore the check that makes sure mob paths start from their spawn point
This was added in599bbedd
and accidentally removed during the TableData refactor inc960b062
.
This commit is contained in:
parent
05a5303522
commit
8568fd1c46
@ -388,8 +388,21 @@ NPCPath* Transport::findApplicablePath(int32_t id, int32_t type, int taskID) {
|
|||||||
|
|
||||||
void Transport::constructPathNPC(int32_t id, NPCPath* path) {
|
void Transport::constructPathNPC(int32_t id, NPCPath* path) {
|
||||||
BaseNPC* npc = NPCManager::NPCs[id];
|
BaseNPC* npc = NPCManager::NPCs[id];
|
||||||
if (npc->kind == EntityKind::MOB)
|
|
||||||
((Mob*)(npc))->staticPath = true;
|
if (npc->kind == EntityKind::MOB) {
|
||||||
|
auto mob = (Mob*)npc;
|
||||||
|
mob->staticPath = true;
|
||||||
|
|
||||||
|
Vec3 firstPoint = path->points.front();
|
||||||
|
|
||||||
|
// Ensure that the first point coincides with the mob's spawn point.
|
||||||
|
if (mob->spawnX != firstPoint.x || mob->spawnY != firstPoint.y) {
|
||||||
|
std::cout << "[FATAL] The first point of the route for mob " << mob->id << " (type " << mob->type
|
||||||
|
<< ") does not correspond with its spawn point." << std::endl;
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
npc->loopingPath = path->isLoop;
|
npc->loopingPath = path->isLoop;
|
||||||
|
|
||||||
// Interpolate
|
// Interpolate
|
||||||
|
Loading…
Reference in New Issue
Block a user