[Cleanup] Cleanup Bug Category Code (#4367)

* [Cleanup] Cleanup Bug Category-based Code

* Command

* Cleanup

* Cleanup

* Cleanup
This commit is contained in:
Alex King
2024-06-01 19:25:02 -04:00
committed by GitHub
parent caa647dc6b
commit 0f0676824c
8 changed files with 136 additions and 97 deletions
+5 -5
View File
@@ -11786,11 +11786,11 @@ void Client::RegisterBug(BugReport_Struct* r) {
b.target_id = r->target_id;
b.target_name = r->target_name;
b.optional_info_mask = r->optional_info_mask;
b._can_duplicate = ((r->optional_info_mask & EQ::bug::infoCanDuplicate) != 0 ? 1 : 0);
b._crash_bug = ((r->optional_info_mask & EQ::bug::infoCrashBug) != 0 ? 1 : 0);
b._target_info = ((r->optional_info_mask & EQ::bug::infoTargetInfo) != 0 ? 1 : 0);
b._character_flags = ((r->optional_info_mask & EQ::bug::infoCharacterFlags) != 0 ? 1 : 0);
b._unknown_value = ((r->optional_info_mask & EQ::bug::infoUnknownValue) != 0 ? 1 : 0);
b._can_duplicate = ((r->optional_info_mask & Bug::InformationFlag::Repeatable) != 0 ? 1 : 0);
b._crash_bug = ((r->optional_info_mask & Bug::InformationFlag::Crash) != 0 ? 1 : 0);
b._target_info = ((r->optional_info_mask & Bug::InformationFlag::TargetInfo) != 0 ? 1 : 0);
b._character_flags = ((r->optional_info_mask & Bug::InformationFlag::CharacterFlags) != 0 ? 1 : 0);
b._unknown_value = ((r->optional_info_mask & Bug::InformationFlag::Unknown) != 0 ? 1 : 0);
b.bug_report = r->bug_report;
b.system_info = r->system_info;
+2
View File
@@ -1,5 +1,6 @@
#include "../client.h"
#include "find/aa.cpp"
#include "find/bug_category.cpp"
#include "find/character.cpp"
#include "find/class.cpp"
#include "find/currency.cpp"
@@ -31,6 +32,7 @@ void command_find(Client *c, const Seperator *sep)
std::vector<Cmd> commands = {
Cmd{.cmd = "aa", .u = "aa [Search Criteria]", .fn = FindAA, .a = {"#findaa"}},
Cmd{.cmd = "bug_category", .u = "bug_category [Search Criteria]", .fn = FindBugCategory, .a = {"#findbugcategory"}},
Cmd{.cmd = "character", .u = "character [Search Criteria]", .fn = FindCharacter, .a = {"#findcharacter"}},
Cmd{.cmd = "class", .u = "class [Search Criteria]", .fn = FindClass, .a = {"#findclass"}},
Cmd{.cmd = "currency", .u = "currency [Search Criteria]", .fn = FindCurrency, .a = {"#findcurrency"}},
+63
View File
@@ -0,0 +1,63 @@
#include "../../client.h"
void FindBugCategory(Client *c, const Seperator *sep)
{
if (sep->IsNumber(2)) {
const uint32 category_id = Strings::ToUnsignedInt(sep->arg[2]);
const std::string& category_name = Bug::GetName(category_id);
if (Strings::EqualFold(category_name, "UNKNOWN BUG CATEGORY")) {
c->Message(
Chat::White,
fmt::format(
"Bug Category ID {} does not exist.",
category_id
).c_str()
);
return;
}
c->Message(
Chat::White,
fmt::format(
"Bug Category {} | {}",
category_id,
category_name
).c_str()
);
return;
}
const std::string& search_criteria = Strings::ToLower(sep->argplus[2]);
uint32 found_count = 0;
for (const auto& e : bug_category_names) {
const std::string& bug_category_name_lower = Strings::ToLower(e.second);
if (!Strings::Contains(bug_category_name_lower, search_criteria)) {
continue;
}
c->Message(
Chat::White,
fmt::format(
"Bug Category {} | {}",
e.first,
e.second
).c_str()
);
found_count++;
}
c->Message(
Chat::White,
fmt::format(
"{} Bug Categor{} found matching '{}'.",
found_count,
found_count != 1 ? "ies" : "y",
sep->argplus[2]
).c_str()
);
}