Working on web version
This commit is contained in:
1 parent
3d3c3b2a36
commit
e310822462
20 files changed
+432
-328
No files matched your search
@@ -14,10 +14,40 @@ namespace ZL {
|
||||
std::vector<GameObjectData> GameObjectLoader::loadFromJson(const std::string& jsonPath, const std::string& zipPath)
|
||||
{
|
||||
std::vector<GameObjectData> objects;
|
||||
|
||||
std::string content;
|
||||
try {
|
||||
if (zipPath.empty()) {
|
||||
content = readTextFile(jsonPath);
|
||||
}
|
||||
else {
|
||||
auto buf = readFileFromZIP(jsonPath, zipPath);
|
||||
if (buf.empty()) {
|
||||
std::cerr << "UiManager: failed to read " << jsonPath << " from zip " << zipPath << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
content.assign(buf.begin(), buf.end());
|
||||
}
|
||||
}
|
||||
catch (const std::exception& e) {
|
||||
std::cerr << "UiManager: failed to open " << jsonPath << " : " << e.what() << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
|
||||
json j;
|
||||
try {
|
||||
j = json::parse(content);
|
||||
}
|
||||
catch (const std::exception& e) {
|
||||
std::cerr << "UiManager: json parse error: " << e.what() << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
|
||||
|
||||
//json j;
|
||||
|
||||
try {
|
||||
std::ifstream file(jsonPath);
|
||||
/*std::ifstream file(jsonPath);
|
||||
if (!file.is_open()) {
|
||||
throw std::runtime_error("Could not open file: " + jsonPath);
|
||||
}
|
||||
@@ -26,7 +56,7 @@ namespace ZL {
|
||||
throw std::runtime_error("JSON file is empty: " + jsonPath);
|
||||
}
|
||||
|
||||
file >> j;
|
||||
file >> j;*/
|
||||
|
||||
if (!j.contains("objects") || !j["objects"].is_array()) {
|
||||
std::cerr << "Warning: 'objects' array not found in " << jsonPath << std::endl;
|
||||
@@ -255,10 +285,40 @@ namespace ZL {
|
||||
std::vector<NpcData> GameObjectLoader::loadNpcsFromJson(const std::string& jsonPath, const std::string& zipPath)
|
||||
{
|
||||
std::vector<NpcData> npcs;
|
||||
|
||||
|
||||
std::string content;
|
||||
try {
|
||||
if (zipPath.empty()) {
|
||||
content = readTextFile(jsonPath);
|
||||
}
|
||||
else {
|
||||
auto buf = readFileFromZIP(jsonPath, zipPath);
|
||||
if (buf.empty()) {
|
||||
std::cerr << "UiManager: failed to read " << jsonPath << " from zip " << zipPath << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
content.assign(buf.begin(), buf.end());
|
||||
}
|
||||
}
|
||||
catch (const std::exception& e) {
|
||||
std::cerr << "UiManager: failed to open " << jsonPath << " : " << e.what() << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
|
||||
json j;
|
||||
try {
|
||||
j = json::parse(content);
|
||||
}
|
||||
catch (const std::exception& e) {
|
||||
std::cerr << "UiManager: json parse error: " << e.what() << std::endl;
|
||||
throw std::runtime_error("Failed to load UI file: " + jsonPath);
|
||||
}
|
||||
|
||||
//json j;
|
||||
|
||||
try {
|
||||
std::ifstream file(jsonPath);
|
||||
/*std::ifstream file(jsonPath);
|
||||
if (!file.is_open()) {
|
||||
throw std::runtime_error("Could not open file: " + jsonPath);
|
||||
}
|
||||
@@ -267,7 +327,7 @@ namespace ZL {
|
||||
throw std::runtime_error("JSON file is empty: " + jsonPath);
|
||||
}
|
||||
|
||||
file >> j;
|
||||
file >> j;*/
|
||||
|
||||
if (!j.contains("npcs") || !j["npcs"].is_array()) {
|
||||
std::cerr << "Warning: 'npcs' array not found in " << jsonPath << std::endl;
|
||||
|
||||
Reference in new issue
Block a user