storage.hpp 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. // Copyright (c) Athena Dev Teams - Licensed under GNU GPL
  2. // For more information, see LICENCE in the main folder
  3. #ifndef _STORAGE_HPP_
  4. #define _STORAGE_HPP_
  5. #include "../common/cbasetypes.h"
  6. struct s_storage;
  7. struct item;
  8. struct map_session_data;
  9. extern struct s_storage_table *storage_db;
  10. extern int storage_count;
  11. enum e_storage_add {
  12. STORAGE_ADD_OK,
  13. STORAGE_ADD_NOROOM,
  14. STORAGE_ADD_NOACCESS,
  15. STORAGE_ADD_INVALID,
  16. };
  17. const char *storage_getName(uint8 id);
  18. bool storage_exists(uint8 id);
  19. int storage_delitem(struct map_session_data* sd, struct s_storage *stor, int index, int amount);
  20. int storage_storageopen(struct map_session_data *sd);
  21. void storage_storageadd(struct map_session_data *sd, struct s_storage *stor, int index, int amount);
  22. void storage_storageget(struct map_session_data *sd, struct s_storage *stor, int index, int amount);
  23. void storage_storageaddfromcart(struct map_session_data *sd, struct s_storage *stor, int index, int amount);
  24. void storage_storagegettocart(struct map_session_data *sd, struct s_storage *stor, int index, int amount);
  25. void storage_storagesave(struct map_session_data *sd);
  26. void storage_storageclose(struct map_session_data *sd);
  27. void storage_sortitem(struct item* items, unsigned int size);
  28. void do_init_storage(void);
  29. void do_final_storage(void);
  30. void do_reconnect_storage(void);
  31. void storage_storage_quit(struct map_session_data *sd, int flag);
  32. struct s_storage* guild2storage(int guild_id);
  33. struct s_storage* guild2storage2(int guild_id);
  34. void storage_guild_delete(int guild_id);
  35. char storage_guild_storageopen(struct map_session_data *sd);
  36. bool storage_guild_additem(struct map_session_data *sd,struct s_storage *stor,struct item *item_data,int amount);
  37. bool storage_guild_additem2(struct s_storage* stor, struct item* item, int amount);
  38. bool storage_guild_delitem(struct map_session_data *sd,struct s_storage *stor,int n,int amount);
  39. void storage_guild_storageadd(struct map_session_data *sd,int index,int amount);
  40. void storage_guild_storageget(struct map_session_data *sd,int index,int amount);
  41. void storage_guild_storageaddfromcart(struct map_session_data *sd,int index,int amount);
  42. void storage_guild_storagegettocart(struct map_session_data *sd,int index,int amount);
  43. void storage_guild_storageclose(struct map_session_data *sd);
  44. void storage_guild_storage_quit(struct map_session_data *sd,int flag);
  45. bool storage_guild_storagesave(uint32 account_id, int guild_id, int flag);
  46. void storage_guild_storagesaved(int guild_id); //Ack from char server that guild store was saved.
  47. // Premium Storage [Cydh]
  48. void storage_premiumStorage_open(struct map_session_data *sd);
  49. bool storage_premiumStorage_load(struct map_session_data *sd, uint8 num, uint8 mode);
  50. void storage_premiumStorage_save(struct map_session_data *sd);
  51. void storage_premiumStorage_saved(struct map_session_data *sd);
  52. void storage_premiumStorage_close(struct map_session_data *sd);
  53. void storage_premiumStorage_quit(struct map_session_data *sd);
  54. int compare_item(struct item *a, struct item *b);
  55. #endif /* _STORAGE_HPP_ */