summaryrefslogtreecommitdiff
path: root/src/account-server/storage.h
diff options
context:
space:
mode:
authorYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-09-09 02:35:25 +0200
committerYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-09-09 02:36:30 +0200
commit6ae2001e91eaaeb8b72031e96f88820711bb1ca0 (patch)
tree8ab01e1d9e59860837560e6cd8bbd7eabaa428de /src/account-server/storage.h
parent40a31c52aebc19221cc9da8a0f764d21e672937b (diff)
downloadmanaserv-6ae2001e91eaaeb8b72031e96f88820711bb1ca0.tar.gz
manaserv-6ae2001e91eaaeb8b72031e96f88820711bb1ca0.tar.bz2
manaserv-6ae2001e91eaaeb8b72031e96f88820711bb1ca0.tar.xz
manaserv-6ae2001e91eaaeb8b72031e96f88820711bb1ca0.zip
Add persistent items support based on seeseekey's work.
Also made some random changes where useful, including: - Code formatting fixes, - Design fix about the fact that only the game config option should be checked. - Fixed the size of the values sent and receive to follow the rest of the development. - Fixed variables names to make them show what they are, and not why they are used. Resolves: Mana-Mantis #142.
Diffstat (limited to 'src/account-server/storage.h')
-rw-r--r--src/account-server/storage.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/account-server/storage.h b/src/account-server/storage.h
index a44156a4..3c629920 100644
--- a/src/account-server/storage.h
+++ b/src/account-server/storage.h
@@ -32,6 +32,7 @@
class Account;
class Character;
class ChatChannel;
+class FloorItem;
class Guild;
class Letter;
class Post;
@@ -288,6 +289,38 @@ class Storage
std::list<Guild*> getGuildList();
/**
+ * Add a floor item to map.
+ *
+ * Used to keep the floor item persistently between two server restart.
+ *
+ * @param mapId The map id
+ * @param itemId The item id
+ * @param posX Position X of the item in pixels
+ * @param posY Position Y of the item in pixels
+ */
+ void addFloorItem(int mapId, int itemId, int amount,
+ int posX, int posY);
+
+ /**
+ * Remove item from map persistence
+ *
+ * @param mapId The map id
+ * @param itemId The item id
+ * @param posX Position X of the item in pixels
+ * @param posY Position Y of the item in pixels
+ */
+ void removeFloorItem(int mapId, int itemId, int amount,
+ int posX, int posY);
+
+
+ /**
+ * Get all persistent items from the given map id
+ *
+ * @param mapId The map id
+ */
+ std::list<FloorItem> getFloorItemsFromMap(int mapId);
+
+ /**
* Update an account to the database.
*
* @param Account object to update.