2024-02-25 14:46:47 +00:00
|
|
|
#pragma once
|
2023-06-20 04:33:09 +00:00
|
|
|
|
|
|
|
#include "StarItem.hpp"
|
|
|
|
|
|
|
|
namespace Star {
|
|
|
|
|
|
|
|
STAR_CLASS(AugmentItem);
|
|
|
|
|
|
|
|
class AugmentItem : public Item {
|
|
|
|
public:
|
|
|
|
AugmentItem(Json const& config, String const& directory, Json const& parameters = JsonObject());
|
|
|
|
AugmentItem(AugmentItem const& rhs);
|
|
|
|
|
|
|
|
ItemPtr clone() const override;
|
|
|
|
|
|
|
|
StringList augmentScripts() const;
|
|
|
|
|
|
|
|
// Makes no change to the given item if the augment can't be applied.
|
|
|
|
// Consumes itself and returns true if the augment is applied.
|
|
|
|
// Has no effect if augmentation fails.
|
|
|
|
ItemPtr applyTo(ItemPtr const item);
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|