Link in Json-String verpacken

01/30/2015 21:39 LuisKillergurke#1
Hi,

wollte nur mal schnell fragen, wie ich einen Json-String erzeuge, in dem eine bestimmte Stelle anklickbar ist und einen Link öffnet, bzw. auch wie man damit einen Command ausführt...

Google liefert mir leider keine Antwort mit der ich etwas anfangen könnte...

Könnte mir das vlt. schnell jemand erklären? :P
MFG
LuisKillergurke
01/30/2015 22:06 ComputerBaer#2
[Only registered and activated users can see links. Click Here To Register...]
01/30/2015 23:58 KleinesGumi#3
z.b
'{text:"Hover over me!",hoverEvent:{action:show_text,value:[{text:"Woah, you
just hovered over me!",color:blue}]}}'

'{text:"Click me to run a command!",clickEvent:{action:run_command,value:"/say
Clicked."}}'

{text:"Click me to open Google!",clickEvent:{action:open_url,value:"http://google.com"}}'
01/31/2015 09:36 LuisKillergurke#4
Vielen Dank!

Nun nur noch eine Frage:
Wie kann ich die Nachrichten denn senden? Bekomme das grade nicht hin :/
01/31/2015 12:07 ComputerBaer#5
Ich nehme an über die Bukkit-API, oder?
player.sendRawMessage(jsonString);

Edit:
Es könnte sein, dass die Methode nicht das tut was sie soll. Ich habe hier mal zwei Lösungswege:
Code:
// ComputerBaer
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "tellraw " + player.getName() + " " + jsonString);

// Floppy012
public static void sendRawToPlayer(Player p, String message) {
  IChatBaseComponent comp = ChatSerializer.a(message);
  PacketPlayOutChat packet = new PacketPlayOutChat(comp, true);
  ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet);
}
01/31/2015 18:22 LuisKillergurke#6
Ok, die 1. Methode ging wirklich nicht.
Vielen Dank, ich nutze jetzt die /tellraw-Methode

Kann dann geclosed werden