blob: d34121a9b25e00f04051af81bd266c82344440f4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "StarAugmentItem.hpp"
#include "StarRoot.hpp"
#include "StarAssets.hpp"
#include "StarItemDatabase.hpp"
#include "StarLuaComponents.hpp"
#include "StarItemLuaBindings.hpp"
#include "StarConfigLuaBindings.hpp"
#include "StarJsonExtra.hpp"
namespace Star {
AugmentItem::AugmentItem(Json const& config, String const& directory, Json const& parameters)
: Item(config, directory, parameters) {}
AugmentItem::AugmentItem(AugmentItem const& rhs) : AugmentItem(rhs.config(), rhs.directory(), rhs.parameters()) {}
ItemPtr AugmentItem::clone() const {
return make_shared<AugmentItem>(*this);
}
StringList AugmentItem::augmentScripts() const {
return jsonToStringList(instanceValue("scripts")).transformed(bind(&AssetPath::relativeTo, directory(), _1));
}
ItemPtr AugmentItem::applyTo(ItemPtr const item) {
return Root::singleton().itemDatabase()->applyAugment(item, this);
}
}
|