A 2D tile-based sandbox game.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

InventoryTrait.cc 602B

123456789101112131415161718192021222324252627
  1. #include "traits/InventoryTrait.h"
  2. namespace Swan {
  3. ItemStack InventoryTrait::BasicInventory::get(int slot) {
  4. if (slot >= (ssize_t)content.size())
  5. return ItemStack{};
  6. return content[slot];
  7. }
  8. ItemStack InventoryTrait::BasicInventory::set(int slot, ItemStack stack) {
  9. if (slot >= (ssize_t)content.size())
  10. return stack;
  11. ItemStack st = content[slot];
  12. content[slot] = stack;
  13. return st;
  14. }
  15. ItemStack InventoryTrait::BasicInventory::insert(int slot, ItemStack stack) {
  16. for (int i = 0; !stack.empty() && i < (ssize_t)content.size(); ++i)
  17. stack = content[i].insert(stack);
  18. return stack;
  19. }
  20. }