@@ -273,18 +273,24 @@ public List<String> tabComplete(CommandSender sender, String[] args) {
273273
274274 if (firstArg .equals ("clear" )) {
275275 if (args .length == 2 ) {
276- List <String > players = new ArrayList <>(
277- Bukkit .getOnlinePlayers ().stream ()
278- .map (Player ::getName )
279- .filter (n -> n .toLowerCase ().startsWith (args [1 ].toLowerCase ()))
280- .toList ()
281- );
276+ List <String > players = new ArrayList <>();
277+ // Онлайн игроки
278+ for (Player p : Bukkit .getOnlinePlayers ()) {
279+ if (p .getName ().toLowerCase ().startsWith (args [1 ].toLowerCase ())) {
280+ players .add (p .getName ());
281+ }
282+ }
283+ // Оффлайн игроки (до 20)
284+ int count = 0 ;
282285 for (OfflinePlayer off : Bukkit .getOfflinePlayers ()) {
286+ if (count >= 20 ) break ;
283287 String name = off .getName ();
284288 if (name != null && name .toLowerCase ().startsWith (args [1 ].toLowerCase ())) {
285- if (!players .contains (name )) players .add (name );
289+ if (!players .contains (name )) {
290+ players .add (name );
291+ count ++;
292+ }
286293 }
287- if (players .size () >= 20 ) break ;
288294 }
289295 return players ;
290296 }
@@ -296,10 +302,26 @@ public List<String> tabComplete(CommandSender sender, String[] args) {
296302 }
297303 } else if (firstArg .equals ("list" )) {
298304 if (args .length == 2 ) {
299- return Bukkit .getOnlinePlayers ().stream ()
300- .map (Player ::getName )
301- .filter (n -> n .toLowerCase ().startsWith (args [1 ].toLowerCase ()))
302- .toList ();
305+ List <String > players = new ArrayList <>();
306+ // Онлайн игроки
307+ for (Player p : Bukkit .getOnlinePlayers ()) {
308+ if (p .getName ().toLowerCase ().startsWith (args [1 ].toLowerCase ())) {
309+ players .add (p .getName ());
310+ }
311+ }
312+ // Оффлайн игроки (до 20)
313+ int count = 0 ;
314+ for (OfflinePlayer off : Bukkit .getOfflinePlayers ()) {
315+ if (count >= 20 ) break ;
316+ String name = off .getName ();
317+ if (name != null && name .toLowerCase ().startsWith (args [1 ].toLowerCase ())) {
318+ if (!players .contains (name )) {
319+ players .add (name );
320+ count ++;
321+ }
322+ }
323+ }
324+ return players ;
303325 }
304326 if (args .length == 3 ) {
305327 return List .of ("-s" );
0 commit comments