Versuch doch selber dahinter zu kommen... für solche logik-Sachen gebe ich nämlich ungerne fertigen Code...
Du musst einfach in einer HashMap als Key immer den Spieler, der von nun an die Nachrichten an einen anderen schreibt speichern, und als value den, an den er schreibt. Wenn er wieder öffentlich schreiben will, musst du ihn aus der Hashmap entfernen. Im PlayerChatEvent schaust du dann, ob der sender in der HashMap steht, wenn ja, sendest du die Nachricht an die "value" (hashMap.get(event.getPlayer())

, sonst sendest du im Normalen Chat... Und jetzt versuche mal, daraus soviel Code wie möglich zu machen. Wenn es dann nicht funktioniert, melde dich MIT DEM CODE, evtl. der Fehlermeldung(wenn es eine gibt) und/oder dem Problem, was nicht geht.