mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-10-13 19:08:08 +00:00
Merge branch 'main' into fix/cmake-libs-2
This commit is contained in:
@@ -275,9 +275,9 @@ eInventoryType Inventory::FindInventoryTypeForLot(const LOT lot) {
|
||||
}
|
||||
|
||||
const CDItemComponent& Inventory::FindItemComponent(const LOT lot) {
|
||||
auto* registry = CDClientManager::Instance().GetTable<CDComponentsRegistryTable>();
|
||||
auto* registry = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
|
||||
auto* itemComponents = CDClientManager::Instance().GetTable<CDItemComponentTable>();
|
||||
auto* itemComponents = CDClientManager::GetTable<CDItemComponentTable>();
|
||||
|
||||
const auto componentId = registry->GetByIDAndType(lot, eReplicaComponentType::ITEM);
|
||||
|
||||
@@ -293,7 +293,7 @@ const CDItemComponent& Inventory::FindItemComponent(const LOT lot) {
|
||||
}
|
||||
|
||||
bool Inventory::IsValidItem(const LOT lot) {
|
||||
auto* registry = CDClientManager::Instance().GetTable<CDComponentsRegistryTable>();
|
||||
auto* registry = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
|
||||
const auto componentId = registry->GetByIDAndType(lot, eReplicaComponentType::ITEM);
|
||||
|
||||
|
@@ -247,7 +247,7 @@ bool Item::IsEquipped() const {
|
||||
}
|
||||
|
||||
bool Item::Consume() {
|
||||
auto* skillsTable = CDClientManager::Instance().GetTable<CDObjectSkillsTable>();
|
||||
auto* skillsTable = CDClientManager::GetTable<CDObjectSkillsTable>();
|
||||
|
||||
auto skills = skillsTable->Query([this](const CDObjectSkills entry) {
|
||||
return entry.objectTemplate == static_cast<uint32_t>(lot);
|
||||
@@ -313,12 +313,12 @@ void Item::UseNonEquip(Item* item) {
|
||||
bool success = false;
|
||||
auto inventory = item->GetInventory();
|
||||
if (inventory && inventory->GetType() == eInventoryType::ITEMS) {
|
||||
auto* compRegistryTable = CDClientManager::Instance().GetTable<CDComponentsRegistryTable>();
|
||||
auto* compRegistryTable = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
const auto packageComponentId = compRegistryTable->GetByIDAndType(lot, eReplicaComponentType::PACKAGE);
|
||||
|
||||
if (packageComponentId == 0) return;
|
||||
|
||||
auto* packCompTable = CDClientManager::Instance().GetTable<CDPackageComponentTable>();
|
||||
auto* packCompTable = CDClientManager::GetTable<CDPackageComponentTable>();
|
||||
auto packages = packCompTable->Query([=](const CDPackageComponent entry) {return entry.id == static_cast<uint32_t>(packageComponentId); });
|
||||
|
||||
auto success = !packages.empty();
|
||||
@@ -396,7 +396,7 @@ void Item::Disassemble(const eInventoryType inventoryType) {
|
||||
}
|
||||
|
||||
void Item::DisassembleModel(uint32_t numToDismantle) {
|
||||
auto* table = CDClientManager::Instance().GetTable<CDComponentsRegistryTable>();
|
||||
auto* table = CDClientManager::GetTable<CDComponentsRegistryTable>();
|
||||
|
||||
const auto componentId = table->GetByIDAndType(GetLot(), eReplicaComponentType::RENDER);
|
||||
|
||||
@@ -468,20 +468,20 @@ void Item::DisassembleModel(uint32_t numToDismantle) {
|
||||
// First iteration gets the count
|
||||
std::map<int32_t, int32_t> parts;
|
||||
while (currentBrick) {
|
||||
auto* designID = currentBrick->Attribute("designID");
|
||||
const char* const designID = currentBrick->Attribute("designID");
|
||||
if (designID) {
|
||||
uint32_t designId;
|
||||
if (!GeneralUtils::TryParse(designID, designId)) {
|
||||
const auto designId = GeneralUtils::TryParse<uint32_t>(designID);
|
||||
if (!designId) {
|
||||
LOG("Failed to parse designID %s", designID);
|
||||
continue;
|
||||
}
|
||||
parts[designId]++;
|
||||
parts[designId.value()]++;
|
||||
}
|
||||
|
||||
currentBrick = currentBrick->NextSiblingElement(searchTerm.c_str());
|
||||
}
|
||||
|
||||
auto* brickIDTable = CDClientManager::Instance().GetTable<CDBrickIDTableTable>();
|
||||
auto* brickIDTable = CDClientManager::GetTable<CDBrickIDTableTable>();
|
||||
|
||||
// Second iteration actually distributes the bricks
|
||||
for (const auto& [part, count] : parts) {
|
||||
|
@@ -87,10 +87,8 @@ ItemSet::ItemSet(const uint32_t id, InventoryComponent* inventoryComponent) {
|
||||
m_Items = {};
|
||||
|
||||
while (std::getline(stream, token, ',')) {
|
||||
int32_t value;
|
||||
if (GeneralUtils::TryParse(token, value)) {
|
||||
m_Items.push_back(value);
|
||||
}
|
||||
const auto validToken = GeneralUtils::TryParse<int32_t>(token);
|
||||
if (validToken) m_Items.push_back(validToken.value());
|
||||
}
|
||||
|
||||
m_Equipped = {};
|
||||
@@ -129,7 +127,7 @@ void ItemSet::OnEquip(const LOT lot) {
|
||||
auto* missionComponent = m_InventoryComponent->GetParent()->GetComponent<MissionComponent>();
|
||||
|
||||
for (const auto skill : skillSet) {
|
||||
auto* skillTable = CDClientManager::Instance().GetTable<CDSkillBehaviorTable>();
|
||||
auto* skillTable = CDClientManager::GetTable<CDSkillBehaviorTable>();
|
||||
|
||||
const auto behaviorId = skillTable->GetSkillByID(skill).behaviorID;
|
||||
|
||||
@@ -161,7 +159,7 @@ void ItemSet::OnUnEquip(const LOT lot) {
|
||||
const auto& skillComponent = m_InventoryComponent->GetParent()->GetComponent<SkillComponent>();
|
||||
|
||||
for (const auto skill : skillSet) {
|
||||
auto* skillTable = CDClientManager::Instance().GetTable<CDSkillBehaviorTable>();
|
||||
auto* skillTable = CDClientManager::GetTable<CDSkillBehaviorTable>();
|
||||
|
||||
const auto behaviorId = skillTable->GetSkillByID(skill).behaviorID;
|
||||
|
||||
|
Reference in New Issue
Block a user