Jump to content
kyeme

Additional settings in guild.conf

Recommended Posts

I suggest that we should have a config. in WOE that we can Invite/Expel players while inside the Guild Castle (because in the official server this is the Old settings - I'm not sure if it is the actual settings now.) But if it is the official behavior, I suggest we should have a config just like the Old one.
 
e.g
// <msg>// <msg>castle_member_invite: yescastle_member_expel: yes

 

 

Share this post


Link to post
Share on other sites

That's a good idea, and it wouldn't be difficult to implement either. I've changed the names of those config options.

Open src/map/battle.c and find:

{ "case_sensitive_aegisnames",          &battle_config.case_sensitive_aegisnames,       1,      0,      1,              },
Add below:
{ "guild_castle_invite",				&battle_config.guild_castle_invite,				0,		0,		1,				},{ "guild_castle_expulsion",				&battle_config.guild_castle_expulsion,			0,		0,		1,				},
Open src/map/battle.h and find:
int case_sensitive_aegisnames;
Add below:
	int guild_castle_invite;	int guild_castle_expulsion;
Finally open src/map/guild.c and find (@guild_invite):
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag)		&& map->list[tsd->bl.m].flag.gvg_castle		&& !battle_config.guild_castle_invite)
Find (@guild_leave):
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 || ((map->agit_flag || map->agit2_flag) && map->list[sd->bl.m].flag.gvg_castle)
Replace it with:
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 // Can't leave inside castles	 || ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
Find (@guild_expulsion):
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
In your conf/battle/guild.conf add:
// Can guild members invite/expel members inside guild castles in WoE/GvG? (Note 1)// default noguild_castle_invite: noguild_castle_expulsion: no

Share this post


Link to post
Share on other sites

I personally like it but the lack of support makes me wonder whether its worth to put it in the core, perhaps a plugin would do best? (I wouldn't mind coding the plugin myself)

Share this post


Link to post
Share on other sites

invite/expel a guild member is part of the behavior of guildlock mapflag

http://rathena.org/wiki/Mapflag#guildlock

why not just add guildlock mapflag on these castle maps ?

 

 

EDIT:

ok I was wrong ... again

the original behavior was already disallow to invite/expel

now he wants a configuration that allows to invite/expel

Edited by AnnieRuru

Share this post


Link to post
Share on other sites

 

 

 

That's a good idea, and it wouldn't be difficult to implement either. I've changed the names of those config options.
Open src/map/battle.c and find:

{ "case_sensitive_aegisnames",          &battle_config.case_sensitive_aegisnames,       1,      0,      1,              },
Add below:
{ "guild_castle_invite",				&battle_config.guild_castle_invite,				0,		0,		1,				},{ "guild_castle_expulsion",				&battle_config.guild_castle_expulsion,			0,		0,		1,				},
Open src/map/battle.h and find:
int case_sensitive_aegisnames;
Add below:
	int guild_castle_invite;	int guild_castle_expulsion;
Finally open src/map/guild.c and find (@guild_invite):
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag)		&& map->list[tsd->bl.m].flag.gvg_castle		&& !battle_config.guild_castle_invite)
Find (@guild_leave):
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 || ((map->agit_flag || map->agit2_flag) && map->list[sd->bl.m].flag.gvg_castle)
Replace it with:
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 // Can't leave inside castles	 || ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
Find (@guild_expulsion):
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
In your conf/battle/guild.conf add:
// Can guild members invite/expel members inside guild castles in WoE/GvG? (Note 1)// default noguild_castle_invite: noguild_castle_expulsion: no

 

 

 

Please add to the main repo. Thanks <3

Share this post


Link to post
Share on other sites

 

 

 

That's a good idea, and it wouldn't be difficult to implement either. I've changed the names of those config options.
Open src/map/battle.c and find:

{ "case_sensitive_aegisnames",          &battle_config.case_sensitive_aegisnames,       1,      0,      1,              },
Add below:
{ "guild_castle_invite",				&battle_config.guild_castle_invite,				0,		0,		1,				},{ "guild_castle_expulsion",				&battle_config.guild_castle_expulsion,			0,		0,		1,				},
Open src/map/battle.h and find:
int case_sensitive_aegisnames;
Add below:
	int guild_castle_invite;	int guild_castle_expulsion;
Finally open src/map/guild.c and find (@guild_invite):
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if( tsd->status.guild_id > 0 	 || tsd->guild_invite > 0	 || ((map->agit_flag || map->agit2_flag)		&& map->list[tsd->bl.m].flag.gvg_castle		&& !battle_config.guild_castle_invite)
Find (@guild_leave):
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 || ((map->agit_flag || map->agit2_flag) && map->list[sd->bl.m].flag.gvg_castle)
Replace it with:
 	if( sd->status.account_id != account_id 	 || sd->status.char_id != char_id 	 || sd->status.guild_id != guild_id	 // Can't leave inside castles	 || ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
Find (@guild_expulsion):
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag) && map->list[tsd->bl.m].flag.gvg_castle)
Replace it with:
 	if ((tsd = map->id2sd(account_id)) 	 && tsd->status.char_id == char_id	 && ((map->agit_flag || map->agit2_flag)			&& map->list[sd->bl.m].flag.gvg_castle			&& !battle_config.guild_castle_expulsion)
In your conf/battle/guild.conf add:
// Can guild members invite/expel members inside guild castles in WoE/GvG? (Note 1)// default noguild_castle_invite: noguild_castle_expulsion: no

 

 

 

Up~  :P

Share this post


Link to post
Share on other sites

Should no objections or other points come forward within the next week I'll commit this change to our main repository.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.