Files
DarkflameServer/dDashboardServer/routes/PropertyAssets.h
Aaron Kimbrell 2d1ef0e370 feat: web dashboard and playground work
The NexusDashboard-parity dashboard (dDashboardServer) and everything built on it on the experimental branch:
accounts, characters, properties and moderation tools, permissions shared with in-game slash commands, economy
reports, World 3D and property 3D views with client scenery, scheduled events (features, vanity changes, live
events, announcements, restarts), vanity files and events, the CDClient browser, the message inspector with saved
captures, chat filter tools, community challenges, live ops, the AI moderator helper, and the server-side changes
they need.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 09:33:10 -05:00

26 lines
967 B
C++

#pragma once
#include <cstdint>
#include <optional>
#include <string>
#include <utility>
#include "json.hpp"
#include "dCommonVars.h"
#include "IPropertyContents.h"
/**
* What the 3D property viewer loads for a placed model, shared by the property pages (APIRoutes.cpp) and the
* showcase (Showcase.cpp). Callers decide who may see the property; these only read the data.
*/
namespace PropertyAssets {
// A placed model's LXFML and a file name for it: player-built models from the ugc table, prebuilt ones from the client
std::optional<std::pair<std::string, std::string>> ModelLxfml(const IPropertyContents::Model& model, LWOOBJID propertyId);
// A placed model's behaviors, parsed for the viewer
nlohmann::json ModelBehaviors(const IPropertyContents::Model& model);
// Every LDD geometry file of a brick design in one bundle (format in APIRoutes.cpp); nullopt if there are none
std::optional<std::string> BrickBundle(uint32_t lod, uint32_t design);
}