diff options
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index d2044a77e..9f1625b7a 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -7617,7 +7617,17 @@ void clif_parse_WantToConnection(int fd, TBL_PC* sd) WFIFOSET(fd,packet_len(0x6a)); clif_setwaitclose(fd); return; - } else + } else if( map_knowsaccount(account_id) ) + {// double login + ShowError("clif_parse_WantToConnection: double login attempt AID/CID: %d/%d, rejecting...\n", account_id, char_id); + WFIFOHEAD(fd,packet_len(0x6a)); + WFIFOW(fd,0) = 0x6a; + WFIFOB(fd,2) = 3; // Rejected by server + WFIFOSET(fd,packet_len(0x6a)); + clif_setwaitclose(fd); + return; + } + else {// packet version accepted struct block_list* bl; if( (bl=map_id2bl(account_id)) != NULL && bl->type != BL_PC ) |