55import org .bukkit .command .CommandExecutor ;
66import org .bukkit .command .CommandSender ;
77import org .bukkit .entity .Player ;
8+ import org .bukkit .event .player .PlayerInteractEvent ;
89import org .kasun .website .SimpleWebsite ;
10+ import net .md_5 .bungee .api .chat .BaseComponent ;
11+ import net .md_5 .bungee .api .chat .ClickEvent ;
12+ import net .md_5 .bungee .api .chat .TextComponent ;
913
10- import java .awt .*;
1114import java .io .BufferedReader ;
1215import java .io .InputStreamReader ;
13- import java .net .URI ;
1416import java .net .URL ;
1517
1618public class WebsiteCommand implements CommandExecutor {
1719
1820 @ Override
1921 public boolean onCommand (CommandSender sender , Command command , String label , String [] args ) {
20-
2122 SimpleWebsite plugin = SimpleWebsite .getInstance ();
2223
2324 StringBuilder sb = new StringBuilder ();
@@ -36,7 +37,7 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
3637 }
3738 }
3839
39- if (plugin .getMainManager ().getConfigManager ().getMainConfig ().useSSL ){
40+ if (plugin .getMainManager ().getConfigManager ().getMainConfig ().useSSL ) {
4041 http = "https://" ;
4142 }
4243
@@ -45,18 +46,24 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
4546 sb .append (":" );
4647 sb .append (plugin .getMainManager ().getConfigManager ().getMainConfig ().port );
4748
49+ String websiteLink = sb .toString ();
50+
4851 if (sender instanceof Player ) {
4952 Player player = (Player ) sender ;
50- try {
51- Desktop .getDesktop ().browse (new URI (sb .toString ()));
52- } catch (Exception e ) {
53- e .printStackTrace ();
54- }
55- player .sendMessage (ChatColor .translateAlternateColorCodes ('&' , "&eWebsite : &f" + sb ));
56- }else {
57- plugin .getLogger ().info (sb .toString ());
53+
54+ // Create a clickable link using TextComponent
55+ TextComponent message = new TextComponent (ChatColor .translateAlternateColorCodes ('&' , "&eWebsite: " ));
56+ TextComponent link = new TextComponent (websiteLink );
57+ link .setClickEvent (new ClickEvent (ClickEvent .Action .OPEN_URL , websiteLink ));
58+ message .addExtra (link );
59+
60+ player .spigot ().sendMessage (message );
61+ } else {
62+ plugin .getLogger ().info (websiteLink );
5863 }
5964 return true ;
60-
6165 }
6266}
67+
68+
69+
0 commit comments