private void WriteData(ClanInvite invite, SendGPacket p) { p.writeQ(invite.player_id); Account pl = AccountManager.getAccount(invite.player_id, 0); if (pl != null) { p.writeS(pl.player_name, 33); p.writeC((byte)pl._rank); } else { p.writeB(new byte[34]); } p.writeD(invite.inviteDate); }
public override void RunImplement() { try { Account player = client.SessionPlayer; if (player == null || player.clanId <= 0) { client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_LIST_ENLISTMENTS_ERROR_ACK); return; } List <ClanInvite> clanInvites = player.GetClanRequestEnlistment(); using (PacketWriter writer = new PacketWriter()) { int count = 0; for (int i = page * 13; i < clanInvites.Count; i++) { ClanInvite invite = clanInvites[i]; writer.WriteQ(invite.playerId); Account playerInvited = AccountManager.GetAccount(invite.playerId, 0); if (playerInvited != null) { writer.WriteS(playerInvited.nickname, 33); writer.WriteC(playerInvited.rankId); } else { writer.WriteB(new byte[34]); } writer.WriteD(invite.inviteDate); if (count++ == 13) { break; } } client.SendPacket(new PROTOCOL_CLAN_LIST_ENLISTMENTS_ACK(0, count, page, writer.memorystream.ToArray())); } clanInvites = null; } catch (Exception ex) { PacketLog(ex); } }
public override void RunImplement() { try { Account player = client.SessionPlayer; if (player == null || text.Length > 200) { return; } ClanInvite invite = new ClanInvite { clanId = clanId, playerId = player.playerId, text = text, inviteDate = int.Parse(DateTime.Now.ToString("yyyyMMdd")) }; if (player.clanId > 0 || player.nickname.Length == 0) { client.SendCompletePacket(PackageDataManager.CLAN_CREATE_INVITE_2147487836_PAK); } else if (ClanManager.GetClan(clanId).id == 0) { client.SendCompletePacket(PackageDataManager.CLAN_CREATE_INVITE_0x80000000_PAK); } else if (player.GetInvitesCount(clanId) >= 100) { client.SendCompletePacket(PackageDataManager.CLAN_CREATE_INVITE_2147487831_PAK); } else if (!player.InsertInvite(invite)) { client.SendCompletePacket(PackageDataManager.CLAN_CREATE_INVITE_2147487848_PAK); } else { client.SendPacket(new PROTOCOL_CLAN_CREATE_INVITE_ACK(0, clanId)); } } catch (Exception ex) { PacketLog(ex); } }
public async Task InviteUser(int clanId, ulong userId) => await _soraTransactor.DoInTransactionAsync(async context => { // Check if same user was already invited to this clan if ((await context.ClanInvites .CountAsync(x => x.ClanId == clanId && x.UserId == userId) > 0)) { return; } // Otherwise create an invite var invite = new ClanInvite() { ClanId = clanId, UserId = userId }; context.ClanInvites.Add(invite); await context.SaveChangesAsync(); });
public override void run() { try { Account p = _client._player; if (p == null) { return; } ClanInvite invite = new ClanInvite { clan_id = clanId, player_id = _client.player_id, text = text, inviteDate = int.Parse(DateTime.Now.ToString("yyyyMMdd")) }; if (p.clanId > 0 || p.player_name.Length == 0) { erro = 2147487836; } else if (ClanManager.getClan(clanId)._id == 0) { erro = 0x80000000; } else if (PlayerManager.getRequestCount(clanId) >= 100) { erro = 2147487831; } else if (!PlayerManager.CreateInviteInDb(invite)) { erro = 2147487848; } invite = null; _client.SendPacket(new CLAN_CREATE_INVITE_PAK(erro, clanId)); } catch (Exception ex) { SaveLog.fatal(ex.ToString()); Printf.b_danger("[CLAN_CREATE_INVITE_REC.run] Erro fatal!"); } }
public override void run() { try { Account player = this._client._player; if (player == null) { return; } ClanInvite invite = new ClanInvite() { clan_id = this.clanId, player_id = this._client.player_id, text = this.text, inviteDate = int.Parse(DateTime.Now.ToString("yyyyMMdd")) }; if (player.clanId > 0 || player.player_name.Length == 0) { this.erro = 2147487836U; } else if (ClanManager.getClan(this.clanId)._id == 0) { this.erro = 2147483648U; } else if (PlayerManager.getRequestCount(this.clanId) >= 100) { this.erro = 2147487831U; } else if (!PlayerManager.CreateInviteInDb(invite)) { this.erro = 2147487848U; } this._client.SendPacket((SendPacket) new CLAN_CREATE_INVITE_PAK(this.erro, this.clanId)); } catch (Exception ex) { Logger.info("[CLAN_CREATE_INVITE_REC] " + ex.ToString()); } }