* Added a message to let know the client if the mail inbox is full.
* On LoadEndAck added a flag to know if the client is allready changing map or just doing teleport/fly wing. - This will reduce a little bit some info send to the client that only need to be updated on map change. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12349 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
3b801b284a
commit
8d65f03635
@ -7958,7 +7958,7 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd)
|
||||
|
||||
//Login Event
|
||||
npc_script_event(sd, NPCE_LOGIN);
|
||||
} else {
|
||||
} else if( sd->state.changemap ) {
|
||||
//For some reason the client "loses" these on map-change.
|
||||
clif_updatestatus(sd,SP_STR);
|
||||
clif_updatestatus(sd,SP_AGI);
|
||||
@ -7967,8 +7967,6 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd)
|
||||
clif_updatestatus(sd,SP_DEX);
|
||||
clif_updatestatus(sd,SP_LUK);
|
||||
|
||||
sd->state.using_fake_npc = 0;
|
||||
|
||||
//New 'night' effect by dynamix [Skotlex]
|
||||
if (night_flag && map[sd->bl.m].flag.nightenabled)
|
||||
{ //Display night.
|
||||
@ -7980,14 +7978,16 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd)
|
||||
sd->state.night = 0;
|
||||
clif_status_load(&sd->bl, SI_NIGHT, 0);
|
||||
}
|
||||
}
|
||||
|
||||
if(sd->npc_id)
|
||||
npc_event_dequeue(sd);
|
||||
sd->state.using_fake_npc = 0;
|
||||
|
||||
if(sd->npc_id)
|
||||
npc_event_dequeue(sd);
|
||||
|
||||
#ifndef TXT_ONLY
|
||||
mail_clear(sd);
|
||||
#endif
|
||||
}
|
||||
|
||||
if(map[sd->bl.m].flag.loadevent) // Lance
|
||||
npc_script_event(sd, NPCE_LOADMAP);
|
||||
@ -11433,6 +11433,13 @@ void clif_Mail_refreshinbox(struct map_session_data *sd)
|
||||
j++;
|
||||
}
|
||||
WFIFOSET(fd,len);
|
||||
|
||||
if( md->full )
|
||||
{
|
||||
char output[100];
|
||||
sprintf(output, "Inbox is full (Max %d). Delete some mails.", MAIL_MAX_INBOX);
|
||||
clif_disp_onlyself(sd, output, strlen(output));
|
||||
}
|
||||
}
|
||||
|
||||
/*------------------------------------------
|
||||
|
@ -549,6 +549,7 @@ struct map_session_data {
|
||||
unsigned short autoloot;
|
||||
unsigned short autolootid; // [Zephyrus]
|
||||
unsigned noks : 3; // [Zeph Kill Steal Protection]
|
||||
bool changemap;
|
||||
struct guild *gmaster_flag;
|
||||
} state;
|
||||
struct {
|
||||
|
@ -3434,7 +3434,7 @@ int pc_setpos(struct map_session_data* sd, unsigned short mapindex, int x, int y
|
||||
|
||||
m=map_mapindex2mapid(mapindex);
|
||||
|
||||
if (sd->mapindex != mapindex)
|
||||
if( (sd->state.changemap = (sd->mapindex != mapindex)) )
|
||||
{ //Misc map-changing settings
|
||||
if (sd->sc.count)
|
||||
{ //Cancel some map related stuff.
|
||||
|
Loading…
x
Reference in New Issue
Block a user