summaryrefslogtreecommitdiff
path: root/src/map/atcommand.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/atcommand.c')
-rw-r--r--src/map/atcommand.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index 9bcf0a511..2964c8ce4 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -1874,12 +1874,25 @@ int atcommand_storage(
const int fd, struct map_session_data* sd,
const char* command, const char* message)
{
+ struct storage *stor; //changes from Freya/Yor
nullpo_retr(-1, sd);
+
+ if (sd->state.storage_flag == 1) {
+ clif_displaymessage(fd, "You have opened your guild storage. Close it before.");
+ return -1;
+ }
+
+ if ((stor = account2storage2(sd->status.account_id)) != NULL && stor->storage_status == 1) {
+ clif_displaymessage(fd, "You have already opened your storage.");
+ return -1;
+ }
+
storage_storageopen(sd);
return 0;
}
+
/*==========================================
*
*------------------------------------------
@@ -1888,9 +1901,23 @@ int atcommand_guildstorage(
const int fd, struct map_session_data* sd,
const char* command, const char* message)
{
+ struct storage *stor; //changes from Freya/Yor
nullpo_retr(-1, sd);
- if (sd->status.guild_id > 0)
+
+ if (sd->status.guild_id > 0) {
+ if (sd->state.storage_flag == 1) {
+ clif_displaymessage(fd, "You have already opened your guild storage.");
+ return -1;
+ }
+ if ((stor = account2storage2(sd->status.account_id)) != NULL && stor->storage_status == 1) {
+ clif_displaymessage(fd, "Your storage is opened. Close it before.");
+ return -1;
+ }
storage_guild_storageopen(sd);
+ } else {
+ clif_displaymessage(fd, "You are not in a guild.");
+ return -1;
+ }
return 0;
}