mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-04 18:41:51 +00:00
refactor Engine
This commit is contained in:
parent
331734792d
commit
e442402e43
17 changed files with 130 additions and 135 deletions
|
|
@ -24,9 +24,13 @@ static void load_configs(Input& input, const io::path& root) {
|
|||
}
|
||||
}
|
||||
|
||||
ContentControl::ContentControl(std::function<void()> postContent)
|
||||
: postContent(std::move(postContent)) {
|
||||
basePacks = io::read_list("res:config/builtins.list");
|
||||
ContentControl::ContentControl(
|
||||
EnginePaths& paths, Input& input, std::function<void()> postContent
|
||||
)
|
||||
: paths(paths),
|
||||
input(input),
|
||||
postContent(std::move(postContent)),
|
||||
basePacks(io::read_list("res:config/builtins.list")) {
|
||||
}
|
||||
|
||||
ContentControl::~ContentControl() = default;
|
||||
|
|
@ -35,13 +39,15 @@ Content* ContentControl::get() {
|
|||
return content.get();
|
||||
}
|
||||
|
||||
const Content* ContentControl::get() const {
|
||||
return content.get();
|
||||
}
|
||||
|
||||
std::vector<std::string>& ContentControl::getBasePacks() {
|
||||
return basePacks;
|
||||
}
|
||||
|
||||
void ContentControl::resetContent(
|
||||
EnginePaths& paths, Input& input, std::vector<ContentPack>& contentPacks
|
||||
) {
|
||||
void ContentControl::resetContent() {
|
||||
scripting::cleanup();
|
||||
std::vector<PathsRoot> resRoots;
|
||||
{
|
||||
|
|
@ -67,24 +73,15 @@ void ContentControl::resetContent(
|
|||
postContent();
|
||||
}
|
||||
|
||||
void ContentControl::loadContent(
|
||||
EnginePaths& paths,
|
||||
Input& input,
|
||||
std::vector<ContentPack>& packs,
|
||||
const std::vector<std::string>& names
|
||||
) {
|
||||
void ContentControl::loadContent(const std::vector<std::string>& names) {
|
||||
PacksManager manager;
|
||||
manager.setSources(getDefaultSources());
|
||||
manager.scan();
|
||||
packs = manager.getAll(manager.assemble(names));
|
||||
loadContent(paths, input, packs);
|
||||
contentPacks = manager.getAll(manager.assemble(names));
|
||||
loadContent();
|
||||
}
|
||||
|
||||
void ContentControl::loadContent(
|
||||
EnginePaths& paths,
|
||||
Input& input,
|
||||
std::vector<ContentPack>& contentPacks
|
||||
) {
|
||||
void ContentControl::loadContent() {
|
||||
scripting::cleanup();
|
||||
|
||||
std::vector<std::string> names;
|
||||
|
|
@ -138,3 +135,13 @@ std::vector<io::path> ContentControl::getDefaultSources() {
|
|||
"res:content",
|
||||
};
|
||||
}
|
||||
|
||||
std::vector<ContentPack>& ContentControl::getContentPacks() {
|
||||
return contentPacks;
|
||||
}
|
||||
|
||||
std::vector<ContentPack> ContentControl::getAllContentPacks() {
|
||||
auto packs = contentPacks;
|
||||
packs.insert(packs.begin(), ContentPack::createCore(paths));
|
||||
return packs;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue