mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-09-05 16:27:27 +00:00
chore: dump font icons as json instead of csv
This commit is contained in:
23
src/ObjCommon/Game/T6/FontIcon/FontIconCommonT6.cpp
Normal file
23
src/ObjCommon/Game/T6/FontIcon/FontIconCommonT6.cpp
Normal file
@@ -0,0 +1,23 @@
|
||||
#include "FontIconCommonT6.h"
|
||||
|
||||
#include "Utils/StringUtils.h"
|
||||
|
||||
#include <filesystem>
|
||||
namespace fs = std::filesystem;
|
||||
|
||||
namespace T6::font_icon
|
||||
{
|
||||
std::string GetJsonFileNameForAssetName(const std::string& assetName)
|
||||
{
|
||||
std::string originalFileName(assetName);
|
||||
utils::MakeStringLowerCase(originalFileName);
|
||||
if (originalFileName.ends_with(".csv"))
|
||||
{
|
||||
fs::path p(assetName);
|
||||
p.replace_extension(".json");
|
||||
return p.string();
|
||||
}
|
||||
|
||||
return assetName;
|
||||
}
|
||||
} // namespace T6::font_icon
|
8
src/ObjCommon/Game/T6/FontIcon/FontIconCommonT6.h
Normal file
8
src/ObjCommon/Game/T6/FontIcon/FontIconCommonT6.h
Normal file
@@ -0,0 +1,8 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
|
||||
namespace T6::font_icon
|
||||
{
|
||||
std::string GetJsonFileNameForAssetName(const std::string& assetName);
|
||||
}
|
33
src/ObjCommon/Game/T6/FontIcon/JsonFontIconT6.h
Normal file
33
src/ObjCommon/Game/T6/FontIcon/JsonFontIconT6.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
|
||||
#include "Json/JsonCommon.h"
|
||||
#include "Json/JsonExtension.h"
|
||||
#include <memory>
|
||||
#include <nlohmann/json.hpp>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
namespace T6
|
||||
{
|
||||
class JsonFontIconEntry
|
||||
{
|
||||
public:
|
||||
std::string name;
|
||||
std::string material;
|
||||
unsigned size;
|
||||
std::optional<JsonVec2> scale;
|
||||
std::vector<std::string> aliases;
|
||||
std::optional<std::vector<unsigned>> aliasHashes;
|
||||
};
|
||||
|
||||
NLOHMANN_DEFINE_TYPE_EXTENSION(JsonFontIconEntry, name, material, size, scale, aliases, aliasHashes);
|
||||
|
||||
class JsonFontIcon
|
||||
{
|
||||
public:
|
||||
std::vector<JsonFontIconEntry> entries;
|
||||
};
|
||||
|
||||
NLOHMANN_DEFINE_TYPE_EXTENSION(JsonFontIcon, entries);
|
||||
} // namespace T6
|
Reference in New Issue
Block a user