rodecomp/Source/Contents/Skills/SkillLevelConfig.cpp
ragnarok-clanker ac25bfd3eb Decompile 2 functions in Source/Contents/Skills/SkillLevelConfig.cpp
Batch #15800 by Yommy: 2 byte-identical, 0 confirmed by peer review.

- fn_03928 CCharacterLinkedUserDataMgr::LoadHomunculusSkillLevels: byte-identical
- fn_03930 CCharacterLinkedUserDataMgr::LoadUseSkillLevels: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-11-10 10:14:57 +00:00

37 lines
1 KiB
C++

#include "Client/Session.h"
#include "Contents/UserData/CharacterLinkedUserDataMgr.h"
#include <json/value.h>
#include <cstdint>
// OFFSET: 0x005E6A10
// FUNCTION: fn_03930
void CCharacterLinkedUserDataMgr::LoadUseSkillLevels(Json::Value& data) {
Json::Value values = data["UseSkillInfo"];
if (!values.isNull()) {
for (auto it = values.begin(); it != values.end(); it++) {
if ((*it).isObject()) {
int id = (*it).get("SKID", 0).asInt();
int level = (*it).get("SKLv", 0).asInt();
g_session.m_skillBundle.SetUnknownValue(id, level);
}
}
}
}
// OFFSET: 0x005E63B0
// FUNCTION: fn_03928
void CCharacterLinkedUserDataMgr::LoadHomunculusSkillLevels(Json::Value& data) {
Json::Value values = data["HomunSkillInfo"];
if (!values.isNull()) {
for (auto it = values.begin(); it != values.end(); it++) {
if ((*it).isObject()) {
int id = (*it).get("HomunSKID", 0).asInt();
int level = (*it).get("HomunSKLv", 0).asInt();
g_session.SetHomunSkillLevel(id, level);
}
}
}
}