KnownList любого из списка атакующих содержит все инстансы которым необходимо отправить сообщение. Поэтому берём knownList киллера и спамим о том, что РБ успешно заовнен. Что может быть легче? Зачем придумывать сложные структуры для элементарных механизмов?
Код:
Broadcast.toKnownPlayers(killer, new CreatureSay(0, SystemChatChannelId.Chat_Announce, "", "Congratulations!!! Raid Boss was owned!"));
Если в Broadcast нет такого метода, то добавляем
Код:
public static void toKnownPlayers(L2Character character, L2GameServerPacket mov)
{
for (L2PcInstance player : character.getKnownList().getKnownType(L2PcInstance.class))
player.sendPacket(mov);
}
Да и вообще, зачем проверять на статус инстанса? Пакет шлётся клиенту. И если у инстанса клиента нет - getClient() == null (NO CARRIER или OFFLINE TRADE), то отсылка пакета игнорится (в нормальных L2J форках). Хотя, опять же, я не имею понятия как реализовано это в вашем коде сервера. Может быть, всё гораздо тоскливо и проверки необходимы во избежание NPE при отправке пакетов.