public void GuildRemove(RealmTime t, GuildRemovePacket pkt)
{
var pname = pkt.Name;
try
{
var p = RealmManager.FindPlayer(pname);
if (p != null && p.Guild == Guild)
{
var db = new Database();
var g = db.ChangeGuild(p.Client.Account, p.Client.Account.Guild.Id, p.GuildRank, p.Client.Account.Guild.Fame, true);
p.Guild = "";
p.GuildRank = 0;
p.Client.Account.Guild = g;
p.UpdateCount++;
p.SendGuild("You have been kicked from the guild.");
foreach (var pl in RealmManager.GuildMembersOf(Guild))
pl.SendGuild(p.nName + " has been kicked from the guild by " + nName + ".");
}
else
{
try
{
var db = new Database();
var other = db.GetAccount(pname);
if (other.Guild.Name == Guild)
{
db.ChangeGuild(other, other.Guild.Id, other.Guild.Rank, other.Guild.Fame, true);
foreach (var pl in RealmManager.GuildMembersOf(Guild))
pl.SendGuild(pname + " has been kicked from the guild by " + nName + ".");
}
}
catch (Exception e)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = e.Message
});
}
}
}
catch (Exception e)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = e.Message
});
}
}