Removed the badly designed/unfinished guild_check_conflict() data integrity check (that wasn't actually being used up 'till now).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11894 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
ultramage 2007-12-12 09:41:51 +00:00
parent 0d17cff99b
commit e464c81aea
5 changed files with 1 additions and 68 deletions

View File

@ -548,35 +548,6 @@ int guild_check_empty(struct guild *g) {
return 1;
}
// キャラの競合がないかチェック用
int guild_check_conflict_sub(DBKey key, void *data, va_list ap) {
struct guild *g = (struct guild *)data;
int guild_id, account_id, char_id, i;
guild_id = va_arg(ap, int);
account_id = va_arg(ap, int);
char_id = va_arg(ap, int);
if (g->guild_id == guild_id) // 本来の所属なので問題なし
return 0;
for(i = 0; i < MAX_GUILD; i++) {
if (g->member[i].account_id == account_id && g->member[i].char_id == char_id) {
// 別のギルドに偽の所属データがあるので脱退
ShowWarning("int_guild: guild conflict! %d,%d %d!=%d\n", account_id, char_id, guild_id, g->guild_id);
mapif_parse_GuildLeave(-1, g->guild_id, account_id, char_id, 0, "**データ競合**");
}
}
return 0;
}
// キャラの競合がないかチェック
int guild_check_conflict(int guild_id, int account_id, int char_id) {
guild_db->foreach(guild_db, guild_check_conflict_sub, guild_id, account_id, char_id);
return 0;
}
unsigned int guild_nextexp (int level)
{
if (level == 0)
@ -1492,11 +1463,6 @@ int mapif_parse_GuildCastleDataSave(int fd, int castle_id, int index, int value)
return mapif_guild_castle_datasave(gc->castle_id, index, value);
}
// ギルドチェック要求
int mapif_parse_GuildCheck(int fd, int guild_id, int account_id, int char_id) {
return guild_check_conflict(guild_id, account_id, char_id);
}
int mapif_parse_GuildMasterChange(int fd, int guild_id, const char* name, int len)
{
struct guild *g = idb_get(guild_db, guild_id);
@ -1539,7 +1505,6 @@ int inter_guild_parse_frommap(int fd) {
case 0x3035: mapif_parse_GuildChangeMemberInfoShort(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOB(fd,14), RFIFOW(fd,15), RFIFOW(fd,17)); break;
case 0x3036: mapif_parse_BreakGuild(fd, RFIFOL(fd,2)); break;
case 0x3037: mapif_parse_GuildMessage(fd, RFIFOL(fd,4), RFIFOL(fd,8), (char*)RFIFOP(fd,12), RFIFOW(fd,2)-12); break;
case 0x3038: mapif_parse_GuildCheck(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10)); break;
case 0x3039: mapif_parse_GuildBasicInfoChange(fd, RFIFOL(fd,4), RFIFOW(fd,8), (const char*)RFIFOP(fd,10), RFIFOW(fd,2)-10); break;
case 0x303A: mapif_parse_GuildMemberInfoChange(fd, RFIFOL(fd,4), RFIFOL(fd,8), RFIFOL(fd,12), RFIFOW(fd,16), (const char*)RFIFOP(fd,18), RFIFOW(fd,2)-18); break;
case 0x303B: mapif_parse_GuildPosition(fd, RFIFOL(fd,4), RFIFOL(fd,8), (struct guild_position *)RFIFOP(fd,12)); break;

View File

@ -1986,13 +1986,6 @@ int mapif_parse_GuildMasterChange(int fd, int guild_id, const char* name, int le
return mapif_guild_master_changed(g, g->member[0].account_id, g->member[0].char_id);
}
// ギルドチェック要求
int mapif_parse_GuildCheck(int fd,int guild_id,int account_id,int char_id)
{
// What does this mean? Check if belong to another guild?
return 0;
}
// map server からの通信
// ・1パケットのみ解析すること
// ・パケット長データはinter.cにセットしておくこと
@ -2010,7 +2003,6 @@ int inter_guild_parse_frommap(int fd)
case 0x3035: mapif_parse_GuildChangeMemberInfoShort(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),RFIFOW(fd,15),RFIFOW(fd,17)); break;
case 0x3036: mapif_parse_BreakGuild(fd,RFIFOL(fd,2)); break;
case 0x3037: mapif_parse_GuildMessage(fd,RFIFOL(fd,4),RFIFOL(fd,8),(char*)RFIFOP(fd,12),RFIFOW(fd,2)-12); break;
case 0x3038: mapif_parse_GuildCheck(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10)); break;
case 0x3039: mapif_parse_GuildBasicInfoChange(fd,RFIFOL(fd,4),RFIFOW(fd,8),(const char*)RFIFOP(fd,10),RFIFOW(fd,2)-10); break;
case 0x303A: mapif_parse_GuildMemberInfoChange(fd,RFIFOL(fd,4),RFIFOL(fd,8),RFIFOL(fd,12),RFIFOW(fd,16),(const char*)RFIFOP(fd,18),RFIFOW(fd,2)-18); break;
case 0x303B: mapif_parse_GuildPosition(fd,RFIFOL(fd,4),RFIFOL(fd,8),(struct guild_position *)RFIFOP(fd,12)); break;

View File

@ -340,15 +340,6 @@ void guild_makemember(struct guild_member *m,struct map_session_data *sd)
memcpy(m->name,sd->status.name,NAME_LENGTH);
return;
}
// ギルド競合確認
int guild_check_conflict(struct map_session_data *sd)
{
nullpo_retr(0, sd);
intif_guild_checkconflict(sd->status.guild_id,
sd->status.account_id,sd->status.char_id);
return 0;
}
// ギルドのEXPキャッシュをinter鯖にフラッシュする
int guild_payexp_timer_sub(DBKey dataid, void *data, va_list ap)
@ -770,10 +761,9 @@ int guild_member_added(int guild_id,int account_id,int char_id,int flag)
if( sd2!=NULL )
clif_guild_inviteack(sd2,2);
// いちおう競合確認
guild_check_conflict(sd);
//Next line commented because it do nothing, look at guild_recv_info [LuzZza]
//clif_charnameupdate(sd); //Update display name [Skotlex]
return 0;
}

View File

@ -638,19 +638,6 @@ int intif_guild_message(int guild_id,int account_id,const char *mes,int len)
return 0;
}
// ギルド競合チェック要求
int intif_guild_checkconflict(int guild_id,int account_id,int char_id)
{
if (CheckForCharServer())
return 0;
WFIFOHEAD(inter_fd, 14);
WFIFOW(inter_fd, 0)=0x3038;
WFIFOL(inter_fd, 2)=guild_id;
WFIFOL(inter_fd, 6)=account_id;
WFIFOL(inter_fd,10)=char_id;
WFIFOSET(inter_fd,14);
return 0;
}
// ギルド基本情報変更要求
int intif_guild_change_basicinfo(int guild_id,int type,const void *data,int len)
{

View File

@ -49,7 +49,6 @@ int intif_guild_leave(int guild_id, int account_id, int char_id, int flag, const
int intif_guild_memberinfoshort(int guild_id, int account_id, int char_id, int online, int lv, int class_);
int intif_guild_break(int guild_id);
int intif_guild_message(int guild_id, int account_id, const char *mes, int len);
int intif_guild_checkconflict(int guild_id, int account_id, int char_id);
int intif_guild_change_gm(int guild_id, const char* name, int len);
int intif_guild_change_basicinfo(int guild_id, int type, const void *data, int len);
int intif_guild_change_memberinfo(int guild_id, int account_id, int char_id, int type, const void *data, int len);