diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-02-01 18:16:09 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-02-01 18:16:09 +0000 |
commit | 2f3928c61a4b13eeb29a0a66802b7d334f319af3 (patch) | |
tree | 4ee808ecf0be9f63f81f220b34f9b1493d219c1e /src/map | |
parent | 78cfbc99e7ecfdc31687009fe33e551b5c852110 (diff) | |
download | hercules-2f3928c61a4b13eeb29a0a66802b7d334f319af3.tar.gz hercules-2f3928c61a4b13eeb29a0a66802b7d334f319af3.tar.bz2 hercules-2f3928c61a4b13eeb29a0a66802b7d334f319af3.tar.xz hercules-2f3928c61a4b13eeb29a0a66802b7d334f319af3.zip |
- When when a party-member levels up, the level change is sent to the char-server to update the even-share range values.
- When joining a gvg_dungeon, the pvp packet will be sent to signal versus.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9759 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/clif.c | 6 | ||||
-rw-r--r-- | src/map/party.c | 16 | ||||
-rw-r--r-- | src/map/party.h | 3 | ||||
-rw-r--r-- | src/map/pc.c | 3 |
4 files changed, 20 insertions, 8 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 32a0843d2..4aa9f5b56 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -8175,9 +8175,13 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd) if (map[sd->bl.m].flag.gvg_dungeon) { - clif_set0199(fd,2); //TODO: Figure out the real thing to do here. + clif_set0199(fd, 1); //TODO: Figure out the real packet to send here. if (!sd->pvp_point) + { sd->pvp_point=5; //Need to die twice to be warped out. + sd->pvp_won=0; + sd->pvp_lost=0; + } } if(map_flag_gvg(sd->bl.m)) diff --git a/src/map/party.c b/src/map/party.c index 558615e9c..4ac60a65a 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -508,15 +508,14 @@ int party_recv_movemap(int party_id,int account_id,int char_id, unsigned short m return 0; } -int party_send_movemap(struct map_session_data *sd) +void party_send_movemap(struct map_session_data *sd) { int i; struct party_data *p; - nullpo_retr(0, sd); - if( sd->status.party_id==0 ) - return 0; + return; + intif_party_changemap(sd,1); p=party_search(sd->status.party_id); @@ -532,7 +531,7 @@ int party_send_movemap(struct map_session_data *sd) } if( sd->state.party_sent ) - return 0; + return; party_check_conflict(sd); @@ -546,7 +545,12 @@ int party_send_movemap(struct map_session_data *sd) } } - return 0; + return; +} + +void party_send_levelup(struct map_session_data *sd) +{ + intif_party_changemap(sd,1); } int party_send_logout(struct map_session_data *sd) diff --git a/src/map/party.h b/src/map/party.h index 92d78a4b6..0b7c9a858 100644 --- a/src/map/party.h +++ b/src/map/party.h @@ -32,7 +32,8 @@ int party_recv_movemap(int party_id,int account_id,int char_id, unsigned short m int party_broken(int party_id); int party_optionchanged(int party_id,int account_id,int exp,int item,int flag); int party_changeoption(struct map_session_data *sd,int exp,int item); -int party_send_movemap(struct map_session_data *sd); +void party_send_movemap(struct map_session_data *sd); +void party_send_levelup(struct map_session_data *sd); int party_send_logout(struct map_session_data *sd); int party_send_message(struct map_session_data *sd,char *mes,int len); int party_recv_message(int party_id,int account_id,char *mes,int len); diff --git a/src/map/pc.c b/src/map/pc.c index 5d97b4587..9b4b9698d 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -4100,6 +4100,9 @@ int pc_checkbaselevelup(struct map_session_data *sd) //LORDALFA - LVLUPEVENT if(sd->state.event_baselvup) npc_script_event(sd, NPCE_BASELVUP); + + if(sd->status.party_id) + party_send_levelup(sd); return 1; } |