summaryrefslogtreecommitdiff
path: root/src/map/guild.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-02-23 03:26:49 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-02-23 03:26:49 +0000
commitb77c66e953ed744e59e77a750ea8e725bb36d55e (patch)
treec9968e6ed89d467f3d6556b043cb6a259979c4f5 /src/map/guild.c
parentbeffc4eecbce7d0d869aef0d3cc49d732f87e514 (diff)
downloadhercules-b77c66e953ed744e59e77a750ea8e725bb36d55e.tar.gz
hercules-b77c66e953ed744e59e77a750ea8e725bb36d55e.tar.bz2
hercules-b77c66e953ed744e59e77a750ea8e725bb36d55e.tar.xz
hercules-b77c66e953ed744e59e77a750ea8e725bb36d55e.zip
- Updated Box of thunder to use "agi up" effect for 30 secs instead of NPC Agi Up for 20.
- Guild expulsion now will fail when the character to be kicked is in a guild castle (rather than checking for the character doing the expulsion) - pk damage reduction settings now will take effect only on Player VS player damage. - Fixed produce_db2.txt entries overwriting produce_db.txt ones. - Fixed item-granted/plagiarized skills unlocking skill trees when only your real learned level should. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9899 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/guild.c')
-rw-r--r--src/map/guild.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/map/guild.c b/src/map/guild.c
index b75af5bea..a06b29f8d 100644
--- a/src/map/guild.c
+++ b/src/map/guild.c
@@ -789,6 +789,7 @@ int guild_leave(struct map_session_data *sd,int guild_id,
int guild_expulsion(struct map_session_data *sd,int guild_id,
int account_id,int char_id,const char *mes)
{
+ struct map_session_data *tsd;
struct guild *g;
int i,ps;
@@ -799,12 +800,18 @@ int guild_expulsion(struct map_session_data *sd,int guild_id,
if(g==NULL)
return 0;
- if(sd->status.guild_id!=guild_id || map[sd->bl.m].flag.gvg_castle) //Can't leave inside guild castles.
+ if(sd->status.guild_id!=guild_id)
return 0;
if( (ps=guild_getposition(sd,g))<0 || !(g->position[ps].mode&0x0010) )
return 0; //Expulsion permission
+ //Can't leave inside guild castles.
+ if ((tsd = map_id2sd(account_id)) == NULL ||
+ tsd->status.char_id != char_id ||
+ map[tsd->bl.m].flag.gvg_castle)
+ return 0;
+
for(i=0;i<g->max_member;i++){ // 所属しているか
if(g->member[i].account_id==account_id &&
g->member[i].char_id==char_id ){