![]() |
Diese Seite stammt ursprünglich aus de.minecraft.wiki und wurde von der Quelle abweichend verändert.
|
Gruppe: ![]() Systeme |
![]() |
![]() |
Hier:![]() |
Verfügbar in:![]() |
Das Lebenspunkte-System macht die Leben oder Herzen der umherlaufenden Kreaturen sichtbar. Dies kann auf unterschiedliche Weise erreicht werden. So können zum Beispiel die Herzen über den Kreaturen sichtbar über ihren Köpfen angezeigt werden, oder vom Spieler können sie in der Tab-Leiste angezeigt werden.
Variante 1[]
![]() | ||
---|---|---|
|
![]() | |
---|---|
|
![]() | |
---|---|
|
Mit diesem Lebenspunkte-System werden die Herzen der Tiere angezeigt und es wird auf die genaue Anzahl ihrer maximalen Lebensleiste geachtet. Wenn man das System einschaltet, kann man mit den erhaltenen Spawn-Eiern mehrere Tiere spawnen, die über sich als Namen die Lebensleiste tragen. Fügt man ihnen Schaden zu, so leert sich die Lebensleiste. Wenn die Tiere Schaden erhalten, wird deren Gesamtlebenszahl ausgelesen und mit Hilfe eines Schildes, dass mehrere Zeichen verbinden kann, die richtige Anzahl der Herzen den Tieren gegeben.
- Einschalten
Wird der Hebel umgelegt, startet der Befehlsblock und führt die Start-Funktion einmal aus
- Befehl 1.1 Die Funktion [[#lebenspunkte-system:v1start|lebenspunkte-system:v1start]] wird aktiviert
- Wiederholen
Mit dem Wiederhol-Befehlsblock führt jeden Tick die Zyklus-Funktion aus
- Befehl 1.2 die Funktion [[#lebenspunkte-system:v1zyklus|lebenspunkte-system:v1zyklus]] wird jeden Tick erneut ausgeführt.
- Ausschalten
Sobald der Hebel wieder in Ausgangsstellung zurück gelegt wurde, wird die Stopp-Funktion aktiviert
- Befehl 1.3 Die Funktion [[#lebenspunkte-system:v1stopp|lebenspunkte-system:v1stopp]] wird einmal ausgeführt
Befehlsblöcke mit Befehlen: |
|
Variante 1: Start-Funktion
Die Start-Funktion erzeugt die Punktestand-Ziele die für die Lebensleiste benutzt werden und sie gibt den Spielern vier Spawn-Eier, dessen Tiere die Lebensleiste unterstützen.
- [[#lebenspunkte-system:v1start-Line2|Zeile 2]] Ein dummy-Punktestand-Ziel für die aktuellen Lebenspunkte der Tiere
- [[#lebenspunkte-system:v1start-Line3|Zeile 3]] Ein dummy-Punktestand-Ziel für die Lebenspunkte vor einem Tick
- [[#lebenspunkte-system:v1start-Line4|Zeile 4]] Ein dummy-Punktestand-Ziel für die maximalen Lebenspunkte von einem Tier
- [[#lebenspunkte-system:v1start-Line7|Zeile 7]] Es werden ein Huhn, eine Kuh[[#lebenspunkte-system:v1start-Line8|[Z8]]], ein Schwein[[#lebenspunkte-system:v1start-Line9|[Z9]]], ein Schaf[[#lebenspunkte-system:v1start-Line10|[Z10]]],ein Kaninchen[[#lebenspunkte-system:v1start-Line11|[Z11]]] und ein Pferd[[#lebenspunkte-system:v1start-Line12|[Z12]]] als Spawn-Ei gegeben.
- [[#lebenspunkte-system:v1start-Line15|Zeile 15]] Es wird eine Partikelwolke mit grauen Herz und eine mit roten Herz[[#lebenspunkte-system:v1start-Line16|[Z16]]] erzeugt.
- [[#lebenspunkte-system:v1start-Line17|Zeile 17]] An der Position der Partikelwolke mit grauen Herz, wird ein Schild aufgestellt.
![]() lebenspunkte-system:v1start.mcfunction
|
# Die Punktestand-Ziele werden erstellt scoreboard objectives add PZLebP.1Leben dummy ["Lebenspunkte-System.1: ",{"text":"Die aktuellen Herzen der Kreaturen","bold":true}] scoreboard objectives add PZLebP.1Vergl dummy ["Lebenspunkte-System.1: ",{"text":"Die Herzen der Kreaturen vor einem Tick","bold":true}] scoreboard objectives add PZLebP.1MaxLeb dummy ["Lebenspunkte-System.1: ",{"text":"Das maximale Leben einer Kreatur","bold":true}] # Den Spielern in einem Umkreis von 25 Blöcken werden Spawn-Eier gegeben. Mit denen lassen sich Tiere spawnen die ihre Lebensleiste als Namen tragen werden give @a[distance=..25] minecraft:chicken_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:cow_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:pig_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:sheep_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:rabbit_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:horse_spawn_egg{lebenspunkte-system:"v1gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,Tags:["EtiLebP.1Alle","EtiLebP.1Herzen"],DeathLootTable:"minecraft:empty"} } # Partikelwolken mit Herz-Zeichen im Namen werden gespawnt und ein Schild wird platziert dass die Zeichen kombinieren kann summon minecraft:area_effect_cloud ~ ~1 ~ {Duration:-1,Age:-2147483648,WaitTime:-2147483648,Particle:"minecraft:block minecraft:air",Tags:["EtiLebP.1Alle","EtiLebP.1Herz"],CustomName:'{"text":"❤","color":"gray"}'} summon minecraft:area_effect_cloud ~ ~1 ~ {Duration:-1,Age:-2147483648,WaitTime:-2147483648,Particle:"minecraft:block minecraft:air",Tags:["EtiLebP.1Alle","EtiLebP.1HerzRot"],CustomName:'{"text":"❤","color":"red"}'} execute at @e[tag=EtiLebP.1Herz] run setblock ~ ~ ~ minecraft:oak_sign{Text1:'[{"text":""}]'} replace |
Variante 1: Zyklus-Funktion
Die Zyklus-Funktion ließt jeden Tick die Lebenspunkte der Tiere aus und vergleicht sie mit den Lebenspunkten vor einem Tick. Wenn es Unterschiede gibt, wird die Herzen-Funktion aufgerufen um die aktuellen Herze anzuzeigen.
- [[#lebenspunkte-system:v1zyklus-Line2|Zeile 2]] Zuerst werden die Lebenspunkte vor einem Tick gespeichert. Wenn das Tier gerade gespawnt wurde, besitzt es noch keinen Punktestand für die Leben und daher liegt er bei dieser Operation dann bei null.
- [[#lebenspunkte-system:v1zyklus-Line3|Zeile 3]] Danach werden die aktuellen Lebenspunkte ausgelesen und in "Leben" gespeichert.
- [[#lebenspunkte-system:v1zyklus-Line6|Zeile 6]] Wenn ein Tier das erste mal gespawnt wurde, besitzt es noch den Vergleichswert null. Das wird genutzt um die maximalen Leben zu ermitteln und zu speichern.
- [[#lebenspunkte-system:v1zyklus-Line9|Zeile 9]] Wenn der Vergleichswert nicht gleich dem Lebenspunktewert entspricht, erhält das Tier den Wert eins, um zu signalisieren, dass der Wert ungleich ist.
- [[#lebenspunkte-system:v1zyklus-Line10|Zeile 10]] Wenn der Wert ungleich ist, wird der Name des Tieres gelöscht, damit er neu berechnet werden kann.
- [[#lebenspunkte-system:v1zyklus-Line11|Zeile 11]] So wird die Herzen-Funktion von dem Tier aufgerufen, aber die Position wird mit der Partikelwolke festgelegt.
![]() lebenspunkte-system:v1zyklus.mcfunction
|
# Jeden Tick werden die Lebenspunkte der Tiere in einen Vergleichspunktestand gespeichert und danach wird der aktuelle Lebenspunktewert ermittelt execute as @e[tag=EtiLebP.1Herzen] run scoreboard players operation @s PZLebP.1Vergl = @s PZLebP.1Leben execute as @e[tag=EtiLebP.1Herzen] store result score @s PZLebP.1Leben run data get entity @s Health # Eine neu gespawnte Kreatur besitzt einen Vergleichswert von null, daher wird bei dieser das aktuelle Leben dem maximalen Leben gleichgesetzt execute as @e[tag=EtiLebP.1Herzen,scores={PZLebP.1Vergl=0}] run scoreboard players operation @s PZLebP.1MaxLeb = @s PZLebP.1Leben # Alle Tiere die mit den Spawn-Eiern erschaffen wurden (entsprechendes Etikett) werden geprüft ob sie noch ihre aktuellen Herzen haben, wenn nicht wird deren Vergleichspunktestand auf eins gesetzt und darauf hin die Funktion für das Tier aufgerufen execute as @e[tag=EtiLebP.1Herzen] unless score @s PZLebP.1Vergl = @s PZLebP.1Leben run scoreboard players set @s PZLebP.1Vergl 1 execute as @e[tag=EtiLebP.1Herzen,scores={PZLebP.1Vergl=1}] run data merge entity @s {CustomName:'""'} execute as @e[tag=EtiLebP.1Herzen,scores={PZLebP.1Vergl=1}] at @e[tag=EtiLebP.1Herz] run function lebenspunkte-system:v1herzen |
Variante 1: Herzen-Funktion
Die Herzen-Funktion berechnet sich aus den maximalen Leben der Tiere die gesamten Lebensleiste. Diese Funktion ruft sich immer wieder selbst auf. Solange der Vergleichswert, welcher von eins bis zum maximalen Leben des Tieres hochzählt, unter dem Wert des aktuellen Lebens ist, werden rote Herzen in den Namen des Schildes eingefügt, sobald der Wert jedoch diesen überschreitet, werden graue Herzen eingefügt. Das Schild spielt hier die zentrale Rolle, es verbindet die aktuell generierten Lebensleiste mit dem nächsten Herz, und das solange wie die Variable für das Tier noch nicht beim maximalen Lebenswert angekommen ist.
![]() lebenspunkte-system:v1herzen.mcfunction
|
# Der Kreatur wird ein Etikett gegeben um es erkennen zu können tag @s add EtiLebP.1Selbst # Wenn der zählende Punktestand der Kreatur kleiner oder gleich dem aktuellen Leben entspricht, wird in das Schild mit den Herzen der Kreatur ein rotes Herz hinzugefügt, ansonsten ein graues execute if score @s PZLebP.1Vergl <= @s PZLebP.1Leben run data merge block ~ ~ ~ {Text1:'[{"entity":"@e[tag=EtiLebP.1Selbst,sort=nearest,limit=1]","nbt":"CustomName","interpret":true},{"entity":"@e[tag=EtiLebP.1HerzRot,sort=nearest,limit=1]","nbt":"CustomName","interpret":true}]'} execute if score @s PZLebP.1Vergl > @s PZLebP.1Leben run data merge block ~ ~ ~ {Text1:'[{"entity":"@e[tag=EtiLebP.1Selbst,sort=nearest,limit=1]","nbt":"CustomName","interpret":true},{"entity":"@e[tag=EtiLebP.1Herz,sort=nearest,limit=1]","nbt":"CustomName","interpret":true}]'} # Nachdem der Name samt Herzen in das Schild gespeichert wurde, wird das Etikett nicht mehr benötigt tag @s remove EtiLebP.1Selbst # Der Name mit einem neuen Herz dabei wird in den Namen der Kreatur gespeichert data modify entity @s CustomName set from block ~ ~ ~ Text1 # Der zählende Punktestand wird um zwei erhöht und wenn er kleiner oder gleich dem maximalen Leben entspricht, wird diese Funktion sich selbst aufrufen scoreboard players add @s PZLebP.1Vergl 2 execute if score @s PZLebP.1Vergl <= @s PZLebP.1MaxLeb as @s run function lebenspunkte-system:v1herzen |
Variante 1: Stopp-Funktion
Die Stopp-Funktion löscht alle Punktestand-Ziele, alle Spawn-Eier im Inventar sowie auf dem Boden und entfernt alle Tiere die mit den Spawn-Eiern gespawnt wurden. Das Schild und die Partikelwolken werden ebenfalls gelöscht.
![]() lebenspunkte-system:v1stopp.mcfunction
|
# Die Punktestand-Ziele werden entfernt scoreboard objectives remove PZLebP.1Leben scoreboard objectives remove PZLebP.1Vergl scoreboard objectives remove PZLebP.1MaxLeb # Die Spawn-Eier werden aus den Inventaren der Spieler entfernt clear @a minecraft:chicken_spawn_egg{lebenspunkte-system:"v1gegenstand"} clear @a minecraft:cow_spawn_egg{lebenspunkte-system:"v1gegenstand"} clear @a minecraft:pig_spawn_egg{lebenspunkte-system:"v1gegenstand"} clear @a minecraft:sheep_spawn_egg{lebenspunkte-system:"v1gegenstand"} clear @a minecraft:rabbit_spawn_egg{lebenspunkte-system:"v1gegenstand"} clear @a minecraft:horse_spawn_egg{lebenspunkte-system:"v1gegenstand"} # Das Schild und alle Tiere die gespawnt wurden, werden entfernt execute at @e[tag=EtiLebP.1Herz] run setblock ~ ~ ~ minecraft:air replace tag @e[type=minecraft:item,nbt={Item:{tag:{lebenspunkte-system:"v1gegenstand"} } }] add EtiLebP.1Alle kill @e[tag=EtiLebP.1Alle] |
Variante 2[]
![]() | ||
---|---|---|
|
![]() | |
---|---|
|
![]() | |
---|---|
|
Dieses Lebenspunkte-System berechnet den prozentualen Wert der aktuellen Leben im Verhältnis zum gesamten Leben und gibt so die Lebensleiste bei dem jeweiligen Tier aus. Fügt man ihnen Schaden hinzu, so sieht man das und die Balken färben sich nach und nach von grün, über gelb auf rot um, bis das Tier letztlich stirbt.
- Einschalten
Wird der Hebel umgelegt, startet der Befehlsblock und führt die Start-Funktion einmal aus
- Befehl 2.1 Die Funktion [[#lebenspunkte-system:v2start|lebenspunkte-system:v2start]] wird aktiviert
- Wiederholen
Mit dem Wiederhol-Befehlsblock führt jeden Tick die Zyklus-Funktion aus
- Befehl 2.2 die Funktion [[#lebenspunkte-system:v2zyklus|lebenspunkte-system:v2zyklus]] wird jeden Tick erneut ausgeführt.
- Ausschalten
Sobald der Hebel wieder in Ausgangsstellung zurück gelegt wurde, wird die Stopp-Funktion aktiviert
- Befehl 2.3 Die Funktion [[#lebenspunkte-system:v2stopp|lebenspunkte-system:v2stopp]] wird einmal ausgeführt
Befehlsblöcke mit Befehlen: |
|
Variante 2: Start-Funktion
Die Start-Funktion erstellt die entsprechenden Punktestand-Ziele und gibt den Spielern mehrere Spawn-Eier für das Spawnen von Tieren mit Lebensleisten
- [[#lebenspunkte-system:v2start-Line2|Zeile 2]] Dieses Punktestand-Ziel speichert die aktuellen Lebenspunkte der Tiere.
- [[#lebenspunkte-system:v2start-Line3|Zeile 3]] Mit diesem Punktestand-Ziel werden die Lebenspunkte vor einem Tick gespeichert.
- [[#lebenspunkte-system:v2start-Line4|Zeile 4]] Das Punktestand-Ziel speichert die maximalen Lebenspunkte die ein Tier ohne Schaden haben kann.
- [[#lebenspunkte-system:v2start-Line7|Zeile 7]] Die Konstante "Hundertprozent" wird gesetzt.
- [[#lebenspunkte-system:v2start-Line10|Zeile 10]] Zehn Teams für die Lebensleisten werden erstellt.
- [[#lebenspunkte-system:v2start-Line23|Zeile 23]] Jedes Team wird anschließend beim Anzeigenamen hinter dem normalen Tiernamen so geändert, dass die jeweiligen prozentualen Lebenspunkte angezeigt werden.
- [[#lebenspunkte-system:v2start-Line36|Zeile 36]] Anschließend werden den Spielern in einem Radius von 25 Blöcken Delfine, Pandas[[#lebenspunkte-system:v2start-Line37|[Z37]]], Lamas[[#lebenspunkte-system:v2start-Line38|[Z38]]] und Füchse[[#lebenspunkte-system:v2start-Line39|[Z39]]] als Spawn-Eier zur Verfügung gestellt.
![]() lebenspunkte-system:v2start.mcfunction
|
# Die Punktestand-Ziele werden erstellt scoreboard objectives add PZLebP.2Leben dummy ["Lebenspunkte-System.2: ",{"text":"Die aktuellen Herzen der Kreaturen","bold":true}] scoreboard objectives add PZLebP.2Vergl dummy ["Lebenspunkte-System.2: ",{"text":"Die Herzen der Kreaturen vor einem Tick","bold":true}] scoreboard objectives add PZLebP.2MaxLeb dummy ["Lebenspunkte-System.2: ",{"text":"Das maximale Leben einer Kreatur","bold":true}] # Die Konstante 100 für die Prozentrechnung wird gesetzt scoreboard players set #KonstLebP.2HUNDERTPROZENT PZLebP.2MaxLeb 100 # Zehn Teams für die Leben in Prozent werden angelegt team add TMLebP.2Leb100 ["Lebenspunkte-System.2: ",{"text":"100% Leben","bold":true}] team add TMLebP.2Leb90 ["Lebenspunkte-System.2: ",{"text":"90% Leben","bold":true}] team add TMLebP.2Leb80 ["Lebenspunkte-System.2: ",{"text":"80% Leben","bold":true}] team add TMLebP.2Leb70 ["Lebenspunkte-System.2: ",{"text":"70% Leben","bold":true}] team add TMLebP.2Leb60 ["Lebenspunkte-System.2: ",{"text":"60% Leben","bold":true}] team add TMLebP.2Leb50 ["Lebenspunkte-System.2: ",{"text":"50% Leben","bold":true}] team add TMLebP.2Leb40 ["Lebenspunkte-System.2: ",{"text":"40% Leben","bold":true}] team add TMLebP.2Leb30 ["Lebenspunkte-System.2: ",{"text":"30% Leben","bold":true}] team add TMLebP.2Leb20 ["Lebenspunkte-System.2: ",{"text":"20% Leben","bold":true}] team add TMLebP.2Leb10 ["Lebenspunkte-System.2: ",{"text":"10% Leben","bold":true}] team add TMLebP.2Leb0 ["Lebenspunkte-System.2: ",{"text":"0% Leben","bold":true}] # Die Lebensbalken als Nachschrift der Teams, werden hinter dem Namen der Kreaturen angezeigt team modify TMLebP.2Leb100 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛","color":"green"},{"text":"]","color":"red"}] team modify TMLebP.2Leb90 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛⬛","color":"green"},{"text":"⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb80 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛","color":"green"},{"text":"⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb70 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛⬛","color":"green"},{"text":"⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb60 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛","color":"gold"},{"text":"⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb50 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛⬛","color":"gold"},{"text":"⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb40 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛⬛","color":"gold"},{"text":"⬛⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb30 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛⬛","color":"red"},{"text":"⬛⬛⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb20 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛⬛","color":"red"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb10 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":"⬛","color":"red"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] team modify TMLebP.2Leb0 suffix ["",{"text":" [","color":"red"},{"text":"LP: ","color":"gold"},{"text":" ","color":"red"},{"text":"⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛","color":"dark_gray"},{"text":"]","color":"red"}] # Spieler in einem Umkreis von bis zu 25 Metern erhalten Spawn-Eier, mit denen man Kreaturen mit Lebensleisten spawnen kann give @a[distance=..25] minecraft:dolphin_spawn_egg{lebenspunkte-system:"v2gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,CustomName:'{"text":""}',Tags:["EtiLebP.2Alle","EtiLebP.2Anzeige"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:panda_spawn_egg{lebenspunkte-system:"v2gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,CustomName:'{"text":""}',Tags:["EtiLebP.2Alle","EtiLebP.2Anzeige"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:llama_spawn_egg{lebenspunkte-system:"v2gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,CustomName:'{"text":""}',Tags:["EtiLebP.2Alle","EtiLebP.2Anzeige"],DeathLootTable:"minecraft:empty"} } give @a[distance=..25] minecraft:fox_spawn_egg{lebenspunkte-system:"v2gegenstand",display:{Lore:['"Eine Kreatur mit"','"Lebenspunkten"'] },EntityTag:{CustomNameVisible:true,CustomName:'{"text":""}',Tags:["EtiLebP.2Alle","EtiLebP.2Anzeige"],DeathLootTable:"minecraft:empty"} } |
Variante 2: Zyklus-Funktion
Die Zyklus-Funktion prüft ob die Tiere Schaden genommen haben und falls es so ist, wird die Herzen-Funktion aufgerufen die die aktuellen Lebenspunkte anzeigt
- [[#lebenspunkte-system:v2zyklus-Line2|Zeile 2]] Zuerst werden die Lebenspunkte vor einem Tick gespeichert, wenn das Tier zuvor noch nicht existierte, betragen die Lebenspunkte vor einem Tick null.
- [[#lebenspunkte-system:v2zyklus-Line3|Zeile 3]] Anschließend werden die aktuellen Lebenspunkte ermittelt und in den Punktestand fürs Leben gespeichert.
- [[#lebenspunkte-system:v2zyklus-Line6|Zeile 6]] Tiere die gerade gespawnt wurden, besitzen im Punktestand vor einem Tick den Wert null. Dieser wird abgefragt und wenn solch ein Tier gefunden wurde, wird in dem Punktestand für die maximale Lebensenergie der Wert der aktuellen Leben gespeichert, denn zu diesem Zeitpunkt hat das Tier seine vollen Leben.
- [[#lebenspunkte-system:v2zyklus-Line9|Zeile 9]] Es wird nun verglichen ob die Tiere Schaden erhalten haben, falls das so ist wird deren Lebensleiste aktualisiert, in dem die Lebensleisten-Funktion für genau dieses Tier geladen wird.
![]() lebenspunkte-system:v2zyklus.mcfunction
|
# Jeden Tick werden die Lebenspunkte der Tiere in einen Vergleispunktestand gespeichert und danach wird der aktuelle Lebenspunktewert ermittelt execute as @e[distance=..50,tag=EtiLebP.2Anzeige] run scoreboard players operation @s PZLebP.2Vergl = @s PZLebP.2Leben execute as @e[distance=..50,tag=EtiLebP.2Anzeige] store result score @s PZLebP.2Leben run data get entity @s Health # Eine neu gespawnte Kreatur besitzt einen Vergleichswert von null, daher wird bei diesem das aktuelle Leben dem maximalen Leben gleichgesetzt execute as @e[distance=..50,tag=EtiLebP.2Anzeige,scores={PZLebP.2Vergl=0}] run scoreboard players operation @s PZLebP.2MaxLeb = @s PZLebP.2Leben # Alle Tiere die mit den Spawn-Eiern erschaffen wurden und somit das entsprechende Etikett besitzen werden geprüft ob sie noch ihre aktuellen Herzen haben, wenn nicht wird die Funktion für das jeweilige Tier aufgerufen execute as @e[distance=..50,tag=EtiLebP.2Anzeige] unless score @s PZLebP.2Vergl = @s PZLebP.2Leben run function lebenspunkte-system:v2lebensleiste |
Variante 2: Lebensleisten-Funktion
Die Lebensleisten-Funktion schaut nach, wie viel Prozent Leben es von der maximalen Lebensenergie noch hat. Dieser Prozentwert entscheidet, in welches Team das Tier gesteckt wird.
![]() lebenspunkte-system:v2lebensleiste.mcfunction
|
# Es wird der Prozentwert berechnet scoreboard players operation @s PZLebP.2Vergl = @s PZLebP.2Leben scoreboard players operation @s PZLebP.2Vergl *= #KonstLebP.2HUNDERTPROZENT PZLebP.2MaxLeb scoreboard players operation @s PZLebP.2Vergl /= @s PZLebP.2MaxLeb # Je nach Prozent der Leben wird die Kreatur in eines der Teams gesteckt team join TMLebP.2Leb0 @s[scores={PZLebP.2Vergl=0..9}] team join TMLebP.2Leb10 @s[scores={PZLebP.2Vergl=10..19}] team join TMLebP.2Leb20 @s[scores={PZLebP.2Vergl=20..29}] team join TMLebP.2Leb30 @s[scores={PZLebP.2Vergl=30..39}] team join TMLebP.2Leb40 @s[scores={PZLebP.2Vergl=40..49}] team join TMLebP.2Leb50 @s[scores={PZLebP.2Vergl=50..59}] team join TMLebP.2Leb60 @s[scores={PZLebP.2Vergl=60..69}] team join TMLebP.2Leb70 @s[scores={PZLebP.2Vergl=70..79}] team join TMLebP.2Leb80 @s[scores={PZLebP.2Vergl=80..89}] team join TMLebP.2Leb90 @s[scores={PZLebP.2Vergl=90..99}] team join TMLebP.2Leb100 @s[scores={PZLebP.2Vergl=100..}] |
Variante 2: Stopp-Funktion
Die Stopp-Funktion löscht alle Punktestand-Ziele und Teams wieder und die Spawn-Eier in den Inventaren der Spieler sowie auf dem Boden und die damit erschaffenen Tiere.
![]() lebenspunkte-system:v2stopp.mcfunction
|
# Die Punktestand-Ziele werden entfernt scoreboard objectives remove PZLebP.2Leben scoreboard objectives remove PZLebP.2Vergl scoreboard objectives remove PZLebP.2MaxLeb # Alle zehn Teams werden wieder entfernt team remove TMLebP.2Leb100 team remove TMLebP.2Leb90 team remove TMLebP.2Leb80 team remove TMLebP.2Leb70 team remove TMLebP.2Leb60 team remove TMLebP.2Leb50 team remove TMLebP.2Leb40 team remove TMLebP.2Leb30 team remove TMLebP.2Leb20 team remove TMLebP.2Leb10 team remove TMLebP.2Leb0 # Die Spawn-Eier in den Inventaren der Spieler werden entfernt clear @a minecraft:dolphin_spawn_egg{lebenspunkte-system:"v2gegenstand"} clear @a minecraft:panda_spawn_egg{lebenspunkte-system:"v2gegenstand"} clear @a minecraft:llama_spawn_egg{lebenspunkte-system:"v2gegenstand"} clear @a minecraft:fox_spawn_egg{lebenspunkte-system:"v2gegenstand"} # Alle Kreaturen und eventuell auf den Boden geworfene Spawn-Eier werden gelöscht tag @e[type=minecraft:item,nbt={Item:{tag:{lebenspunkte-system:"v2gegenstand"} } }] add EtiLebP.2Alle kill @e[tag=EtiLebP.2Alle] |
![]() |
Mausklick-Sensor => Befehle; Zeichen-Eingabe => Befehle; Hungerpunkte-System => Befehle; Lebenspunkte-System => Befehle; Werkzeug-System => Befehle; Steinbruch-System => Befehle; Teleporter => Befehle; Kontrollpunkt-System => Befehle; Wegfindungssystem => Befehle; Befehle-System => Befehle; Passwort-System => Befehle; Wahl-System => Befehle; Kamera-System => Befehle; Sammel-System => Befehle; Zonen-System => Befehle; Auftrag-System => Befehle (erweitert); Gildenschlacht-Minispiel => Befehle; |
---|
![]() |
|
---|