Overhaul memory model to new Arbutils memory.
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
This commit is contained in:
@@ -41,7 +41,6 @@ namespace CreatureLib::Battling {
|
||||
.count())
|
||||
: _library(library), _parties(parties.GetStdList()), _canFlee(canFlee), _numberOfSides(numberOfSides),
|
||||
_creaturesPerSide(creaturesPerSide), _sides(numberOfSides), _random(randomSeed) {
|
||||
AssertNotNull(_library);
|
||||
AssertAllNotNull(parties);
|
||||
|
||||
for (size_t i = 0; i < numberOfSides; i++) {
|
||||
@@ -67,10 +66,10 @@ namespace CreatureLib::Battling {
|
||||
|
||||
bool CreatureInField(ArbUt::BorrowedPtr<Creature> creature) const;
|
||||
|
||||
const ArbUt::BorrowedPtr<Creature>& GetCreature(const CreatureIndex& target) const {
|
||||
const ArbUt::OptionalBorrowedPtr<Creature>& GetCreature(const CreatureIndex& target) const {
|
||||
return _sides[target.GetSideIndex()]->GetCreature(target.GetCreatureIndex());
|
||||
}
|
||||
const ArbUt::BorrowedPtr<Creature>& GetCreature(uint8_t side, uint8_t target) const {
|
||||
const ArbUt::OptionalBorrowedPtr<Creature>& GetCreature(uint8_t side, uint8_t target) const {
|
||||
return _sides[side]->GetCreature(target);
|
||||
}
|
||||
|
||||
@@ -87,8 +86,12 @@ namespace CreatureLib::Battling {
|
||||
|
||||
const ArbUt::UniquePtrList<BattleParty>& GetParties() const noexcept { return _parties; }
|
||||
const ArbUt::UniquePtrList<BattleSide>& GetSides() const noexcept { return _sides; }
|
||||
ArbUt::BorrowedPtr<Script> GetVolatileScript(const ArbUt::StringView& key) const { return _volatile.Get(key); }
|
||||
ArbUt::BorrowedPtr<Script> GetVolatileScript(uint32_t keyHash) const noexcept { return _volatile.Get(keyHash); }
|
||||
std::optional<ArbUt::BorrowedPtr<Script>> GetVolatileScript(const ArbUt::StringView& key) const {
|
||||
return _volatile.Get(key);
|
||||
}
|
||||
std::optional<ArbUt::BorrowedPtr<Script>> GetVolatileScript(uint32_t keyHash) const noexcept {
|
||||
return _volatile.Get(keyHash);
|
||||
}
|
||||
void AddVolatileScript(const ArbUt::StringView& key);
|
||||
void AddVolatileScript(Script* script);
|
||||
void RemoveVolatileScript(const ArbUt::BasicStringView& name) { _volatile.Remove(name); }
|
||||
|
||||
Reference in New Issue
Block a user