Docs, is-named bool functions and MSVC utf-8
This commit is contained in:
1 parent
1a0db1abbd
commit
1cf4d1ea85
18 files changed
+443
-586
No files matched your search
+16
-9
@@ -51,11 +51,12 @@ Entry* Dialogue::hook_get(const std::string& hook)
|
||||
return entry ? entry : entry_get(found->second);
|
||||
}
|
||||
|
||||
bool Character::preview_load(const std::string& path, Renderer& renderer)
|
||||
void Character::preview_load(const std::string& path, Renderer& renderer)
|
||||
{
|
||||
Json json;
|
||||
if (!json.load(path + "character.json"))
|
||||
return false;
|
||||
json.load(path + "character.json");
|
||||
if (!(isValid = json.isValid))
|
||||
return;
|
||||
object root = json.root;
|
||||
folder = path;
|
||||
key = path.substr(0, path.size() - 1);
|
||||
@@ -75,7 +76,6 @@ bool Character::preview_load(const std::string& path, Renderer& renderer)
|
||||
stages.push_back({json_string(fields, "animationSuffix"), json_string(fields, "dialoguePool"),
|
||||
json_float(fields, "weight"), json_int(fields, "area", -1)});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Anm2* Character::anm2_get(const std::string& path, Renderer& renderer, Audio& audio)
|
||||
@@ -86,7 +86,8 @@ Anm2* Character::anm2_get(const std::string& path, Renderer& renderer, Audio& au
|
||||
if (found != anm2s.end())
|
||||
return found->second.animations.empty() ? nullptr : &found->second;
|
||||
Anm2& loaded = anm2s[path];
|
||||
return loaded.load(folder + path, renderer, audio) ? &loaded : nullptr;
|
||||
loaded.load(folder + path, renderer, audio);
|
||||
return loaded.animations.empty() ? nullptr : &loaded;
|
||||
}
|
||||
|
||||
// Sets an interact area's fields from source, keeping what it doesn't name (its type's settings).
|
||||
@@ -397,17 +398,20 @@ void Character::load(Renderer& renderer, Audio& audio)
|
||||
return;
|
||||
isLoaded = true;
|
||||
Json json;
|
||||
if (json.load(folder + "character.json"))
|
||||
json.load(folder + "character.json");
|
||||
if (json.isValid)
|
||||
{
|
||||
character_parse(json.root, *this, renderer, audio);
|
||||
sounds_parse(json.root, FILE_CHARACTER, *this, audio);
|
||||
}
|
||||
if (json.load(folder + "items.json"))
|
||||
json.load(folder + "items.json");
|
||||
if (json.isValid)
|
||||
{
|
||||
items_parse(json.root, *this, renderer, audio);
|
||||
sounds_parse(json.root, FILE_ITEMS, *this, audio);
|
||||
}
|
||||
if (json.load(folder + "dialogue.json"))
|
||||
json.load(folder + "dialogue.json");
|
||||
if (json.isValid)
|
||||
dialogue_parse(json.root, *this, audio);
|
||||
}
|
||||
|
||||
@@ -450,7 +454,10 @@ std::vector<Character> characters_load(Renderer& renderer)
|
||||
std::vector<Character> characters;
|
||||
characters.reserve(sorted.size());
|
||||
for (const std::string& name : sorted)
|
||||
if (!characters.emplace_back().preview_load(folder + name + "/", renderer))
|
||||
{
|
||||
characters.emplace_back().preview_load(folder + name + "/", renderer);
|
||||
if (!characters.back().isValid)
|
||||
characters.pop_back();
|
||||
}
|
||||
return characters;
|
||||
}
|
||||
Reference in new issue
Block a user