Move Lexicon*, Text (TextTokens, TextEscapes, Base64), Math/RadialGrid, Hash (MD5, XxHash32) and Cipher (Rijndael, XorBytes) into Source/Utility subfolders; update includes, guards, compile.json and CMakeLists.txt. Backfill // OFFSET: above every standalone // FUNCTION: block (89 IDs, addresses from the symbol database) and make it mandatory in CODING_RULES.md and AGENTS.md. Remove the MatchLexicon cast chain.
19 lines
567 B
C++
19 lines
567 B
C++
#include "Utility/Math/RadialGrid.h"
|
|
|
|
#include <cstdint>
|
|
|
|
// OFFSET: 0x00AF61A0
|
|
// FUNCTION: fn_18251
|
|
std::vector<RadialGridPoint> GenerateRadialGrid(const RadialGridPoint& center, int radius) {
|
|
std::vector<RadialGridPoint> points;
|
|
const std::uint32_t diameter = static_cast<std::uint32_t>(radius) * 2u + 1u;
|
|
points.reserve(diameter * diameter);
|
|
|
|
for (int x = -radius; x <= radius; ++x) {
|
|
for (int y = -radius; y <= radius; ++y) {
|
|
points.push_back({static_cast<float>(x) + center.x, static_cast<float>(y) + center.y});
|
|
}
|
|
}
|
|
|
|
return points;
|
|
}
|