private void OnPartyMemberRequest(IPlayerEntity player, PartyMemberRequestEventArgs e) { var worldServer = DependencyContainer.Instance.Resolve <IWorldServer>(); if (player.PlayerData.Id != e.PlayerId) { return; } var member = worldServer.GetPlayerEntityByCharacterId(e.MemberId); if (member == null) { WorldPacketFactory.SendAddPartyRequestCancel(player, e.MemberId, PartyRequestCancelMode.OtherServer); return; } // TODO: Check if in GW, Duel or other stuff that might disturb the player. if (member.Party.IsInParty) { WorldPacketFactory.SendAddPartyRequestCancel(player, e.MemberId, PartyRequestCancelMode.OtherParty); return; } // Send Request to other player WorldPacketFactory.SendAddPartyRequest(player, member, e.Troup); }
private void OnPartyMemberRequestCancel(IPlayerEntity player, PartyMemberRequestCancelEventArgs e) { var worldServer = DependencyContainer.Instance.Resolve <IWorldServer>(); var leader = worldServer.GetPlayerEntityByCharacterId(e.LeaderId); if (leader == null) { return; } WorldPacketFactory.SendAddPartyRequestCancel(leader, e.MemberId, e.Mode); }