Minecraft Wiki
Advertisement
Tellraw-URL-Rückfrage

Rückfrage bei clickEvent-action open_url

SpielerCheatServerBefehlsblock

Sendet im Chat eine Nachricht an einen Spieler, die formatiert und Maus-sensitiv sein kann. Eine tellraw-Nachricht kann folgende Eigenschaften haben:

  • Formatierungen: einzelne Textteile können unterschiedliche Farben und Schriftformatierungen haben wie z.B. Fettschrift.
  • Maus-Sensitivität: einzelne Textteile können einen Tooltip-Text anzeigen, wenn man mit der Maus darüber fährt.
  • Maus-Klick-Sensitivität: einzelne Textteile können angeklickt werden und...
    • ... einen Befehl vorschlagen, indem er in die Chat-Konsole des Empfängers gestellt wird,
    • ... einen Befehl ausführen in der Chat-Konsole des Empfängers,
    • ... eine Web-Adresse aufrufen (mit Rückfrage).

Parameter
Die Parameter des tellraw-Befehls haben folgende Bedeutung:

  • Spieler ist der Name eines Spielers oder eine Ziel-Auswahl.
  • tellraw-Nachricht ist eine Nachricht mit besonderen Eigenschaften:
    • Die Nachricht hat keinen Absender. Im Gegensatz zu sonstigen Chat-Befehlen sieht der Absender bei tellraw die Nachricht nicht in seiner Chat-Konsole. Der oder die Empfänger sehen die Nachricht in ihrer Chat-Konsole ohne den Namen des Absenders. Das gilt sowohl für Spieler als auch für Befehlsblöcke als Absender.
    • Die Nachricht kann formatiert werden und Maus-sensitive Textteile enthalten. Die Nachricht reagiert nur auf die Maus, wenn der Empfänger die Chat-Konsole öffnet.
    • Der Nachrichtentext kann keine Ziel-Auswahl enthalten, die Befehle, die in der Nachricht enthalten sein können, aber schon.
    • Wenn die Nachricht einen Befehl enthält, wird der Befehl immer in die Chat-Konsole des (oder der) Empfänger eingetragen und dort ausgeführt. Das führt zu folgenden Effekten:
      • Wenn der Empfänger keine Berechtigung zur Ausführung des Befehls hat, erhält er die entsprechende Fehlermeldung.
      • Wenn der Befehl länger als die Chat-Konsole ist (100 Zeichen), wird er abgeschnitten, was meist zu einer Fehlermeldung führt.
      • Wenn der Befehl die Ziel-Auswahl @p enthält, wird dort immer der Empfänger der Nachricht eingesetzt, denn er ist selbst die Befehlsquelle und gleichzeitig der Befehlsquelle am nächsten.
      • Der Befehl ist nach der Ausführung - ob mit oder ohne Fehlermeldung - in der Chat-Historie des Empfängers zu sehen.
      • Der Empfänger kann die Befehle beliebig oft ausführen. Einerseits kann er immer wieder auf die Nachricht klicken, andererseits kann er den Befehl aus seiner Chat-Historie heraus erneut aufrufen.

Unformatierte tellraw-Nachricht
Wenn man nur die Eigenschaft nutzen möchte, dass eine tellraw-Nachricht keinen Absender hat und sie nicht formatieren möchte, schreibt man die komplette Nachricht in Anführungszeichen. Man kann einfache oder doppelte Anführungszeichen verwenden. Es darf auch innerhalb des Nachrichtentextes Anführungszeichen geben, aber nicht dieselben, die außen stehen. Beispiele:
/tellraw @p "Steige in's Gärtchen hinab"
/tellraw @p 'Steige in den "Garten" hinab'
Diese Eigenschaft kann man z.B. nutzen, wenn die tellraw-Nachricht in einem namenlosen Befehlsblock hinterlegt ist, der ansonsten den Absender "[@]:" der Nachricht voranstellen würde.

Elemente einer formatierten tellraw-Nachricht
Eine tellraw-Nachricht besteht aus unterschiedlichen Elementen. Wenn man die tellraw-Nachricht formatieren möchte, muss man für die Beschreibung der Elemente JSON-Markierungen verwenden.

Textformatting

Formattierte Textausgaben, hier über die Konsole

  • message: ein Objekt mit folgenden Eigenschaften:
    • text oder translate: der Textteil der Nachricht. Ein message-Objekt muss immer einen Textteil haben. Der darf aber auch leer sein, wobei dann zusätzliche Formatierungen und Maus-Events wirkungslos bleiben.
      • Bei text ist der Textteil ein Freitext. Eine Ziel-Auswahl an Stelle des Freitextes hat keine Wirkung und wird wie ein Text behandelt.
      • Bei translate ist der Textteil ein Parameter aus einer Minecraft-Sprachendatei. Die Standard-Sprachendateien stehen im Ordner .minecraft/assets. Die Parameter sind in allen Sprachendateien identisch. Bei der Verwendung von translate wird der in der aktuell eingestellten Sprache hinter dem Parameter stehende Text zum Textteil der Nachricht.
    • color: einer von 16 Farbnamen zum Einfärben des Textteils oder das Wort reset zum Zurücksetzen aller Formatierungen.
      Die Farbnamen lauten: white, black, yellow, gold, aqua, dark_aqua, blue, dark_blue, light_purple, dark_purple, red, dark_red, green, dark_green, gray, dark_gray.
    • bold: true oder false. Bei true wird der Textteil fett formatiert.
    • italic: true oder false. Bei true wird der Textteil kursiv formatiert.
    • underlined: true oder false. Bei true wird der Textteil unterstrichen formatiert.
    • strikethrough: true oder false. Bei true wird der Textteil durchgestrichen formatiert.
    • obfuscated: true oder false. Bei true wird der Textteil verschleiert formatiert, d. h. er wird unlesbar, weil sich die Buchstaben ständig ändern.
    • hoverEvent ein Objekt, das den Textteil auf das Darüberfahren mit der Maus reagieren lässt und dann einen Text anzeigt. Das Objekt hat folgende Eigenschaften:
      • action: eine von folgenden drei Aktionen: show_text, show_item, show_achievement.
      • value: ein Freitext:
        • Bei show_text wird der Freitext angezeigt.
        • Bei show_item wird der Beschreibungstext eines Items angezeigt, wenn der Freitext im Format "{id:123}" vorliegt (Item-IDs siehe Datenwert).
        • Bei show_achievement wird der Beschreibungstext eines Erfolges angezeigt, wenn der Freitext ein Parameter aus der Liste der Erfolge ist.
    • clickEvent: ein Objekt, das den Textteil auf das Anklicken mit der Maus reagieren lässt. Das Objekt hat folgende Eigenschaften:
      • action: eine von folgenden drei Aktionen: run_command, suggest_command, open_url.
      • value: ein Freitext:
        • Bei suggest_command wird der Freitext (vorzugsweise ein beliebiger Minecraft-Befehl) beim Anklicken des Nachrichtentextes ins Chat-Fenster des Empfängers gestellt und nicht ausgeführt. Der Empfänger kann dann entscheiden, ob er den Befehl (wenn es einer ist) ausführt.
        • Bei run_command wird der Freitext als Befehl (auch /tellraw) im Chat-Fenster des Empfängers ausgeführt.
        • Bei open_url wird der Freitext als Webadresse interptretiert. Beim Anklicken öffnet sich ein Rückfrage-Fenster, das die Webadresse anzeigt und ermöglicht, sie automatisch im Standard-Browser zu öffnen oder sie in die Zwischenablage des Betriebssystems zu kopieren.
    • extra: eine Aufzählung, deren Elemente wiederum message-Objekte sind. Dadurch ist eine Verschachtelung möglich.

Technisch gesehen sind color und action auch Freitexte. Da sie nur aus einem Wort bestehen, müssen sie nicht in Anführungszeichen stehen.

Beispiele
Verschachtelte tellraw-Nachrichten können schnell unübersichtlich werden und man übersieht fehlende Klammern und Kommata. Daher ist es sinnvoll, ab einer gewissen Komplexität die Nachricht strukturiert aufzubauen. Die tellraw-Nachricht kann auch in dieser strukturierten Form in einen Befehlsblock kopiert werden, es ist nicht notwendig, die Leerzeichen und Zeilenumbrüche zu entfernen.

{
  text:'',
  extra:
  [  
    {
      text:"Guten Tag ",
      color:yellow,
      bold:true
    },
    {
      text:Minecrafter,
      color:green,
      underlined:true
    }
  ]
}

Die obige Haupt-Nachricht hat keinen Textteil, sondern besteht nur aus einer Aufzählung von zwei Unter-Nachrichten. Die Unter-Nachrichten haben jeweils einen Textteil und Formatierungseigenschaften. Als Ergebnis wird der Text "Guten Tag Minecrafter" versendet mit dem ersten Teil in Gelb und fett und dem zweiten Teil in Grün und unterstrichen.
Zu Demonstrationszwecken hat der erste Textteil einfache, der zweite doppelte und der dritte (weil er nur aus einem Wort besteht) keine Anführungszeichen.

{
  text:"Hier gibt's ",
  extra:
  [  
    {
      text:">MC<, ",
      hoverEvent:
      {
        action:show_text,
        value:"die Minecraft-Webseite"
      },
      clickEvent:
      {
        action:open_url,
        value:"http://minecraft.net"
      }
    },
    {
      text:"hier "
    },
    {
      text:">Diamanten< ",
      hoverEvent:
      {
        action:show_achievement,
        value:"achievement.diamonds"
      },
      clickEvent:
      {
        action:suggest_command,
        value:"/tp @p 100 15 -50"
      }
    },
    {
      text:"und hier: "
    },
    {
      translate:potion.prefix.charming
    },
    {
      text:" >???<",
      hoverEvent:
      {
        action:show_item,
        value:"{id:86}"
      },
      clickEvent:
      {
        action:run_command,
        value:"/give @p 86"
      }
    }
  ]
}

Die obige Haupt-Nachricht hat einen unformatierten Textteil und eine Aufzählung mit sechs Unter-Nachrichten. Die zweite, vierte und fünfte Unter-Nachricht besteht nur aus einem unformatierten Textteil, der nicht anklickbar ist. Während die zweite und vierte den Textteil direkt ausgibt, übersetzt die fünfte Unter-Nachricht einen Sprachen-Parameter. Wenn die Sprache "Deutsch" eingestellt ist, lautet der Textteil der fünfte Unter-Nachricht: "Lieblich".
Die anderen Unter-Nachrichten haben jeweils einen unformatierten Textteil, der einen Tooltip-Text anzeigt, wenn man mit der Maus darüber fährt, und der anklickbar ist:

  • Wenn man mit der Maus über >MC< fährt, wird der Tooltip-Text: "die Minecraft-Webseite" angezeigt. Wenn man >MC< anklickt, wird das Rückfragenfenster zum Öffnen der Webseite "http://minecraft.net" angezeigt.
  • Wenn man mit der Maus über >Diamanten< fährt, wird der Tooltip-Text: "DIAMANTEN! Baue einen Diamanten mit Hilfe einer Eisenspitzhacke ab" angezeigt. Wenn man >Diamanten< anklickt, wird der Teleportations-Befehl "/tp @p 100 15 -50" in die Chat-Konsole kopiert, aber nicht ausgeführt.
  • Wenn man mit der Maus über >???< fährt, wird der Tooltip-Text: "Kürbis" angezeigt. Wenn man >???< anklickt, wird der Befehl "/give @p 86" in die Chat-Konsole kopiert und ausgeführt. Man erhält dann einen Kürbis in sein Inventar.

Als Ergebnis wird der Text "Hier gibt's >MC<, hier >Diamanten< und hier: Lieblicher >???<" versendet mit der Möglichkeit, die Textteile in den spitzen Klammern anzuklicken (was nicht an den spitzen Klammern liegt, sondern an dem clickEvent).

Advertisement