Rework for C Interfaces to handle exceptions a bit better.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -9,25 +9,25 @@ namespace CreatureLib::Battling {
|
||||
Arbutils::Collections::List<Creature*> _party;
|
||||
|
||||
public:
|
||||
CreatureParty(size_t size) : _party(size) {}
|
||||
CreatureParty(Arbutils::Collections::List<Creature*> party) : _party(party) {}
|
||||
CreatureParty(std::initializer_list<Creature*> party) : _party(party) {}
|
||||
CreatureParty(size_t size) noexcept : _party(size) {}
|
||||
CreatureParty(Arbutils::Collections::List<Creature*> party) noexcept : _party(party) {}
|
||||
CreatureParty(std::initializer_list<Creature*> party) noexcept : _party(party) {}
|
||||
|
||||
virtual ~CreatureParty() {
|
||||
virtual ~CreatureParty() noexcept {
|
||||
for (auto c : _party) {
|
||||
delete c;
|
||||
}
|
||||
}
|
||||
|
||||
Creature* GetAtIndex(size_t index) const { return _party[index]; }
|
||||
Creature* GetAtIndex(size_t index) const noexcept { return _party[index]; }
|
||||
|
||||
void Switch(size_t a, size_t b) {
|
||||
void Switch(size_t a, size_t b) noexcept {
|
||||
auto ca = _party[a];
|
||||
_party[a] = _party[b];
|
||||
_party[b] = ca;
|
||||
}
|
||||
|
||||
bool HasAvailableCreatures() const {
|
||||
bool HasAvailableCreatures() const noexcept {
|
||||
for (Creature* c : _party) {
|
||||
if (c == nullptr)
|
||||
continue;
|
||||
@@ -38,10 +38,10 @@ namespace CreatureLib::Battling {
|
||||
return false;
|
||||
}
|
||||
|
||||
Arbutils::Collections::List<Creature*>& GetParty() { return _party; }
|
||||
const Arbutils::Collections::List<Creature*>& GetParty() const { return _party; }
|
||||
Arbutils::Collections::List<Creature*>& GetParty() noexcept { return _party; }
|
||||
const Arbutils::Collections::List<Creature*>& GetParty() const noexcept { return _party; }
|
||||
|
||||
size_t GetLength() const { return _party.Count(); }
|
||||
size_t GetLength() const noexcept { return _party.Count(); }
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user