From 6f52f6794f8c954c9509131ef219e3fd13be4543 Mon Sep 17 00:00:00 2001 From: Aleos Date: Wed, 1 Jan 2020 22:30:12 -0500 Subject: [PATCH] Corrected mob availability database sprite lookup (#4502) * Fixes #4495. * Adjusted the monster sprite lookup to ignore any restrictions based on monster data. Thanks to @sader1992! Co-authored-by: Lemongrass3110 --- src/map/mob.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/map/mob.cpp b/src/map/mob.cpp index e74e7a61e6..0079f67f76 100644 --- a/src/map/mob.cpp +++ b/src/map/mob.cpp @@ -4363,15 +4363,13 @@ uint64 MobAvailDatabase::parseBodyNode(const YAML::Node &node) { if (!this->asString(node, "Mob", mob_name)) return 0; - uint32 mob_id = mobdb_searchname(mob_name.c_str()); + struct mob_db *mob = mobdb_search_aegisname(mob_name.c_str()); - if (mob_id == 0) { + if (mob == nullptr) { this->invalidWarning(node["Mob"], "Unknown mob %s.\n", mob_name.c_str()); return 0; } - struct mob_db *mob = mob_db(mob_id); - if (this->nodeExists(node, "Sprite")) { std::string sprite; @@ -4386,12 +4384,14 @@ uint64 MobAvailDatabase::parseBodyNode(const YAML::Node &node) { return 0; } } else { - constant = mobdb_searchname(sprite.c_str()); + struct mob_db *sprite_mob = mobdb_search_aegisname(sprite.c_str()); - if (constant == 0) { + if (sprite_mob == nullptr) { this->invalidWarning(node["Sprite"], "Unknown mob sprite constant %s.\n", sprite.c_str()); return 0; } + + constant = sprite_mob->vd.class_; } mob->vd.class_ = constant;