mirror of
https://github.com/vcmi/vcmi.git
synced 2025-07-03 00:46:55 +02:00
Fixed unitialized ptrs in CArtifacts.
Parsing for adventure map def for artifacts.
This commit is contained in:
@ -165,6 +165,7 @@ void CModHandler::loadActiveMods()
|
||||
void CModHandler::reload()
|
||||
{
|
||||
{
|
||||
//recreate adventure map defs
|
||||
assert(!VLC->dobjinfo->gobjs[Obj::MONSTER].empty()); //make sure that at least some def info was found
|
||||
|
||||
const CGDefInfo * baseInfo = VLC->dobjinfo->gobjs[Obj::MONSTER].begin()->second;
|
||||
@ -181,6 +182,23 @@ void CModHandler::reload()
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
assert(!VLC->dobjinfo->gobjs[Obj::ARTIFACT].empty());
|
||||
|
||||
const CGDefInfo * baseInfo = VLC->dobjinfo->gobjs[Obj::ARTIFACT].begin()->second;
|
||||
|
||||
BOOST_FOREACH(auto & art, VLC->arth->artifacts)
|
||||
{
|
||||
if (!vstd::contains(VLC->dobjinfo->gobjs[Obj::ARTIFACT], art->id)) // no obj info for this type
|
||||
{
|
||||
CGDefInfo * info = new CGDefInfo(*baseInfo);
|
||||
info->subid = art->id;
|
||||
info->name = art->advMapDef;
|
||||
|
||||
VLC->dobjinfo->gobjs[Obj::ARTIFACT][art->id] = info;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
assert(!VLC->dobjinfo->gobjs[Obj::TOWN].empty()); //make sure that at least some def info was found
|
||||
|
Reference in New Issue
Block a user