mloeschenkohl 2 лет назад
Родитель
Сommit
a8369adfac
66 измененных файлов с 289 добавлено и 338 удалено
  1. 0 0
      Archiv/story/floralisdorf.txt
  2. 1 1
      Archiv/story/surv_1.txt
  3. 1 1
      dev/FireArrow.txt
  4. 1 1
      dev/cobweb_test.txt
  5. 5 5
      dev/shears_test.txt
  6. 1 1
      dev/sword_test.txt
  7. 44 94
      docu_minecraft.php
  8. 1 1
      jantest4.txt
  9. 17 17
      minigames/among_us/among_us.txt
  10. 3 3
      minigames/bedwars/bedwars.txt
  11. 1 1
      minigames/buttons/buttons.txt
  12. 14 14
      minigames/capturetheflag/capturetheflag.txt
  13. 1 1
      minigames/fastbridge/fastbridge.txt
  14. 1 1
      minigames/halma/halma.txt
  15. 3 3
      minigames/hideandseek/hideandseek.txt
  16. 1 1
      minigames/inverting/inverting.txt
  17. 1 1
      minigames/jumpnrun/icejumpnrun.txt
  18. 1 1
      minigames/jumpnrun/jumpnrun.txt
  19. 5 5
      minigames/jumpnrun/todesjumpnrun.txt
  20. 1 1
      minigames/leapfrog/leapfrog.txt
  21. 2 2
      minigames/letters/letters.txt
  22. 3 3
      minigames/mengerrun/mengerrun.txt
  23. 2 2
      minigames/parcour/parcour.txt
  24. 4 4
      minigames/ragemode/ragemode.txt
  25. 1 1
      minigames/rebuild/rebuild.txt
  26. 3 3
      minigames/sammelfieber/sammelfieber.txt
  27. 3 3
      minigames/sammelfieber/sfranked.txt
  28. 5 5
      minigames/shoppingchaos/shoppingchaos.txt
  29. 7 7
      minigames/snowgame/snowgame.txt
  30. 4 3
      minigames/volleyball/volleyball.txt
  31. 1 1
      story/admont/der_anfang.txt
  32. 1 1
      story/admont/die_uhr_tickt.txt
  33. 1 1
      story/admont/erntezeit.txt
  34. 2 2
      story/admont/erstes_date.txt
  35. 8 8
      story/admont/felsmagier.txt
  36. 2 2
      story/admont/helfende_hand.txt
  37. 4 4
      story/admont/kraeutermeister.txt
  38. 2 2
      story/admont/mitbringsel.txt
  39. 1 1
      story/admont/schatz_von_admont.txt
  40. 1 1
      story/admont/tuecher.txt
  41. 1 1
      story/schiffbruch/schiff_10_kuchen.txt
  42. 3 3
      story/schiffbruch/schiff_11_vorbereitungen.txt
  43. 1 1
      story/schiffbruch/schiff_13_boss.txt
  44. 1 1
      story/schiffbruch/schiff_1_schiffbruch.txt
  45. 1 1
      story/schiffbruch/schiff_2_nuechtern.txt
  46. 1 1
      story/schiffbruch/schiff_3_schatz.txt
  47. 1 1
      story/schiffbruch/schiff_4_hunger.txt
  48. 1 1
      story/schiffbruch/schiff_7_baumaterial.txt
  49. 1 1
      story/schiffbruch/schiff_9_durst.txt
  50. 1 1
      system/ai.txt
  51. 2 2
      system/chat.txt
  52. 26 26
      system/commands.txt
  53. 2 2
      system/copyisland.txt
  54. 3 3
      system/damage.txt
  55. 3 3
      system/doors.txt
  56. 4 4
      system/gamecenter.txt
  57. 3 3
      system/harvest.txt
  58. 4 4
      system/hawkeye.txt
  59. 2 2
      system/herobrine.txt
  60. 2 2
      system/sitting.txt
  61. 3 3
      system/survival.txt
  62. 3 3
      system/timber.txt
  63. 2 2
      system/voxel.txt
  64. 1 1
      utils/u_games.txt
  65. 56 56
      utils/u_general.txt
  66. 1 1
      utils/u_quest.txt

+ 0 - 0
story/floralisdorf.txt → Archiv/story/floralisdorf.txt


+ 1 - 1
story/surv_1.txt → Archiv/story/surv_1.txt

@@ -79,7 +79,7 @@ function getGrowPercentage(location1, location2, block_type) {
 				mod_loc = loc.mod(location1, x, y, z);
 				if(block.getType(mod_loc) == block_type) {
 					crops_counter++;
-					if(block.getState(mod_loc, $age7_property) == 7) {
+					if(block.property.getValue(mod_loc, $age7_property) == 7) {
 						ready_counter++;
 					}
 				}

+ 1 - 1
dev/FireArrow.txt

@@ -4,7 +4,7 @@ event.load("projectile_hit");
 wait();
 
 if(loc_hit != null){
-	flame = enchantment.getLevel(enchantment.get("flame"), entity.getEquip(shooter, "hand"));
+	flame = enchantment.getLevel(enchantment.get("flame"), living.getEquip(shooter, "hand"));
 	if(flame > 0){
 		if(plot.check(loc_hit, shooter, 3, true)){
 			loc = entity.getLocation(projectile);

+ 1 - 1
dev/cobweb_test.txt

@@ -11,7 +11,7 @@ if(cancel) {
 if(block_type != "minecraft:cobweb"){
 	goto("wait");
 }
-equip = entity.getEquip(player, "hand");
+equip = living.getEquip(player, "hand");
 if(!item.hasTag(sword, equip)){
 	goto("wait");
 }

+ 5 - 5
dev/shears_test.txt

@@ -10,18 +10,18 @@ if(cancel) {
 if(!text.contains(block_type, "leaves")){
 	goto("wait");
 }
-if(item.getType(entity.getEquip(player, "hand")) != "minecraft:shears"){
+if(item.getType(living.getEquip(player, "hand")) != "minecraft:shears"){
 	goto("wait");
 }
-if(block.getState(block_loc, block.getProperty("persistent"))){
+if(block.property.getValue(block_loc, block.getProperty("persistent"))){
 	goto("wait");
 }
 
 shears_X = loc.getX(block_loc);
 shears_Y = loc.getY(block_loc);
 shears_Z = loc.getZ(block_loc);
-unbreaking_level = enchantment.getLevel(enchantment.get("unbreaking"), entity.getEquip(player, "hand"));
-radius = enchantment.getLevel(enchantment.get("sharpness"), entity.getEquip(player, "hand"));
+unbreaking_level = enchantment.getLevel(enchantment.get("unbreaking"), living.getEquip(player, "hand"));
+radius = enchantment.getLevel(enchantment.get("sharpness"), living.getEquip(player, "hand"));
 if(radius > 0){
 	cancel = true;
 }
@@ -42,7 +42,7 @@ goto("wait");
 
 function shear(block_loc,original_block_type,player,unbreaking_level){
 	if(block.getType(block_loc) == original_block_type){
-		if(!block.getState(block_loc, block.getProperty("persistent"))){
+		if(!block.property.getValue(block_loc, block.getProperty("persistent"))){
 			block.set(block_loc, "minecraft:air");
 			item.drop(block_loc, read.item(original_block_type,1));
 			if(player.isSurvival(player)){

+ 1 - 1
dev/sword_test.txt

@@ -5,5 +5,5 @@ event.load("block_break");
 
 @wait
 wait();
-msg("dev", item.hasTag(weapon, entity.getEquip(player, "hand")));
+msg("dev", item.hasTag(weapon, living.getEquip(player, "hand")));
 goto("wait");

+ 44 - 94
docu_minecraft.php

@@ -399,7 +399,7 @@
     <table>
         <tr>
             <th class="command">item_hit</th>
-            <th class="desc">the item thrown with entity.shootProjectile() hits a block or an entity</th>
+            <th class="desc">the item thrown with living.shootProjectile() hits a block or an entity</th>
         </tr>
         <tr>
             <td class="bold">Variablen</td>
@@ -826,16 +826,6 @@
             <td>block.countAir(location)</td>
         </tr>
     </table>
-    <table>
-        <tr>
-            <th class="command">block.isDoor (deprecated)</th>
-            <th class="desc">returns true if the block at the location is a door</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>block.isDoor(location)</td>
-        </tr>
-    </table>
     <table>
         <tr>
             <th class="command">block.isSolid</th>
@@ -3458,39 +3448,6 @@
             <td>player.getIp(player)</td>
         </tr>
     </table>
-    <table>
-        <tr>
-            <th class="command">entity.shootProjectile</th>
-            <th class="desc">returns the shooten entity. A projectile is shooten into viewing direction of the player</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>entity.shootProjectile(player, String entity_class, Number power, [data])</td>
-        </tr>
-        <tr>
-            <td class="bold">Arguments</td>
-            <td>
-                data: always null, except for arrows and potions use itemstacks<br>
-                <br>
-                entity_classes:<br>
-                <br>
-                me.km.entities.EntityItemProjectile<br>
-                net.minecraft.entity.projectile.SnowballEntity<br>
-                net.minecraft.entity.projectile.EggEntity<br>
-                net.minecraft.entity.item.EnderPearlEntity<br>
-                net.minecraft.entity.projectile.PotionEntity<br>
-                net.minecraft.entity.item.ExpBottleEntity<br>
-                net.minecraft.entity.projectile.ArrowEntity<br>
-                net.minecraft.entity.projectile.TippedArrowEntity<br>
-                net.minecraft.entity.projectile.SpectralArrowEntity<br>
-                net.minecraft.entity.projectile.ArrowEntity<br>
-                net.minecraft.entity.projectile.SmallFireballEntity<br>
-                net.minecraft.entity.projectile.WitherSkullEntity<br>
-                net.minecraft.entity.projectile.DragonFireballEntity<br>
-                net.minecraft.entity.projectile.FireballEntity
-            </td>
-        </tr>
-    </table>
     <table>
         <tr>
             <th class="command">player.clearInventory</th>
@@ -3530,46 +3487,6 @@
             <td class="bold">Format</td>
             <td>player.getEnderInv(player)</td>
         </tr>
-    </table>
-	<table>
-        <tr>
-            <th class="command">player.getInvSlot (deprecated)</th>
-            <th class="desc">returns an (non-copy) itemstack from a players inventory</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>player.getInvSlot(player, slot)</td>
-        </tr>
-    </table>
-	<table>
-        <tr>
-            <th class="command">player.setInvSlot (deprecated)</th>
-            <th class="desc">set an itemstack to a players inventory</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>player.setInvSlot(player, slot, itemstack)</td>
-        </tr>
-    </table>
-	<table>
-        <tr>
-            <th class="command">player.getEnderSlot (deprecated)</th>
-            <th class="desc">returns an (non-copy) itemstack from a players enderchest</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>player.getEnderSlot(player, slot)</td>
-        </tr>
-    </table>
-	<table>
-        <tr>
-            <th class="command">player.setEnderSlot (deprecated)</th>
-            <th class="desc">set an itemstack to a players enderchest</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>player.setEnderSlot(player, slot, itemstack)</td>
-        </tr>
     </table>
 	<table>
         <tr>
@@ -4118,16 +4035,6 @@
             <td>entity.isWet(entity)</td>
         </tr>
     </table>
-    <table>
-        <tr>
-            <th class="command">entity.isBlocking</th>
-            <th class="desc">returns true if an entity is blocking (e.g. activated shield)</th>
-        </tr>
-        <tr>
-            <td class="bold">Format</td>
-            <td>entity.isBlocking(entity)</td>
-        </tr>
-    </table>
     <table>
         <tr>
             <th class="command">entity.isBurning</th>
@@ -4475,6 +4382,49 @@
 			</td>
         </tr>
     </table>
+    <table>
+        <tr>
+            <th class="command">living.shootProjectile</th>
+            <th class="desc">returns the shooten entity. A projectile is shooten into viewing direction of the player</th>
+        </tr>
+        <tr>
+            <td class="bold">Format</td>
+            <td>living.shootProjectile(living_entity, String entity_class, Number power, [data])</td>
+        </tr>
+        <tr>
+            <td class="bold">Arguments</td>
+            <td>
+                data: always null, except for arrows and potions use itemstacks<br>
+                <br>
+                entity_classes:<br>
+                <br>
+                me.km.entities.EntityItemProjectile<br>
+                net.minecraft.entity.projectile.SnowballEntity<br>
+                net.minecraft.entity.projectile.EggEntity<br>
+                net.minecraft.entity.item.EnderPearlEntity<br>
+                net.minecraft.entity.projectile.PotionEntity<br>
+                net.minecraft.entity.item.ExpBottleEntity<br>
+                net.minecraft.entity.projectile.ArrowEntity<br>
+                net.minecraft.entity.projectile.TippedArrowEntity<br>
+                net.minecraft.entity.projectile.SpectralArrowEntity<br>
+                net.minecraft.entity.projectile.ArrowEntity<br>
+                net.minecraft.entity.projectile.SmallFireballEntity<br>
+                net.minecraft.entity.projectile.WitherSkullEntity<br>
+                net.minecraft.entity.projectile.DragonFireballEntity<br>
+                net.minecraft.entity.projectile.FireballEntity
+            </td>
+        </tr>
+    </table>
+    <table>
+        <tr>
+            <th class="command">living.isBlocking</th>
+            <th class="desc">returns true if an entity is blocking (e.g. activated shield)</th>
+        </tr>
+        <tr>
+            <td class="bold">Format</td>
+            <td>living.isBlocking(entity)</td>
+        </tr>
+    </table>
 </section>
 <section id="Particle">
 	<table>

+ 1 - 1
jantest4.txt

@@ -26,7 +26,7 @@ goto("checkgame");
 
 @player_toss
 cancel = true;
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 item_type = item.getType(item);
 if(item_type == "minecraft:bedrock") {
 	location = entity.getLocation(player);

+ 17 - 17
minigames/among_us/among_us.txt

@@ -3837,7 +3837,7 @@ function killCrewmate(killer, crewmate) {
 	map.add($report_map, ent, crew_uuid);
 	living.removeAi(ent);
 	entity.setName(ent, "");
-	entity.setEquip(ent, "hand", $air_item);
+	living.setEquip(ent, "hand", $air_item);
 	entity.setSilent(ent, true);
 	color = amongus.getPlayerColor(crewmate);
 	amongus.forceEquip(ent, color);
@@ -5260,49 +5260,49 @@ function amongus.isUsedPlayerColor(color) {
 }
 
 function amongus.removeEquip(player) {
-	entity.setEquip(player, "head", $air_item);
-	entity.setEquip(player, "chest", $air_item);
-	entity.setEquip(player, "legs", $air_item);
-	entity.setEquip(player, "feet", $air_item);
+	living.setEquip(player, "head", $air_item);
+	living.setEquip(player, "chest", $air_item);
+	living.setEquip(player, "legs", $air_item);
+	living.setEquip(player, "feet", $air_item);
 }
 
 function amongus.forceEquip(entity, color) {
 	color_code = map.get($cloth_code_map, color);
 	item = read.item(concat("{id:\"minecraft:leather_helmet\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 	item.hide(item, "attributes");
-	entity.setEquip(entity, "head", item);
+	living.setEquip(entity, "head", item);
 	item = read.item(concat("{id:\"minecraft:leather_chestplate\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 	item.hide(item, "attributes");
-	entity.setEquip(entity, "chest", item);
+	living.setEquip(entity, "chest", item);
 	item = read.item(concat("{id:\"minecraft:leather_leggings\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 	item.hide(item, "attributes");
-	entity.setEquip(entity, "legs", item);
+	living.setEquip(entity, "legs", item);
 	item = read.item(concat("{id:\"minecraft:leather_boots\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 	item.hide(item, "attributes");
-	entity.setEquip(entity, "feet", item);
+	living.setEquip(entity, "feet", item);
 }
 
 function amongus.equip(entity, color) {
 	color_code = map.get($cloth_code_map, color);
-	if(item.getType(entity.getEquip(entity, "head")) == "minecraft:air") {
+	if(item.getType(living.getEquip(entity, "head")) == "minecraft:air") {
 		item = read.item(concat("{id:\"minecraft:leather_helmet\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 		item.hide(item, "attributes");
-		entity.setEquip(entity, "head", item);
+		living.setEquip(entity, "head", item);
 	}
-	if(item.getType(entity.getEquip(entity, "chest")) == "minecraft:air") {
+	if(item.getType(living.getEquip(entity, "chest")) == "minecraft:air") {
 		item = read.item(concat("{id:\"minecraft:leather_chestplate\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 		item.hide(item, "attributes");
-		entity.setEquip(entity, "chest", item);
+		living.setEquip(entity, "chest", item);
 	}
-	if(item.getType(entity.getEquip(entity, "legs")) == "minecraft:air") {
+	if(item.getType(living.getEquip(entity, "legs")) == "minecraft:air") {
 		item = read.item(concat("{id:\"minecraft:leather_leggings\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 		item.hide(item, "attributes");
-		entity.setEquip(entity, "legs", item);
+		living.setEquip(entity, "legs", item);
 	}
-	if(item.getType(entity.getEquip(entity, "feet")) == "minecraft:air") {
+	if(item.getType(living.getEquip(entity, "feet")) == "minecraft:air") {
 		item = read.item(concat("{id:\"minecraft:leather_boots\",Count:1b,tag:{Damage:0,display:{color:", color_code, "}}}"));
 		item.hide(item, "attributes");
-		entity.setEquip(entity, "feet", item);
+		living.setEquip(entity, "feet", item);
 	}
 }
 

+ 3 - 3
minigames/bedwars/bedwars.txt

@@ -498,7 +498,7 @@ if(item.hasTag(bed_tag2, item)) {
 goto("checkgame");
 
 @item_air_click
-item_type = item.getType(entity.getEquip(player, "hand"));
+item_type = item.getType(living.getEquip(player, "hand"));
 if(item_type == "minecraft:gunpowder") {
 	if(!map.contains(warpinghome_tick, player)) {
 		player.removeItem(player, warp_powder);
@@ -608,7 +608,7 @@ goto("checkgame");
 
 @player_move
 if(id == voidid) {
-	entity.damage(player, 300);
+	living.damage(player, 300);
 	goto("checkgame");
 }
 temploc = entity.getLocation(player);
@@ -662,7 +662,7 @@ if(block_type == "minecraft:cobweb") {
 } elseif(block.hasTag(bed_tag, block.get(block_loc))) {
 	goto("breakbed");
 } elseif(block_type == "minecraft:iron_block") {
-	player_item_type = item.getType(entity.getEquip(player, "hand"));
+	player_item_type = item.getType(living.getEquip(player, "hand"));
 	if(player_item_type == "minecraft:stone_pickaxe" || player_item_type == "minecraft:iron_pickaxe") {
 		cancel = false;
 	}

+ 1 - 1
minigames/buttons/buttons.txt

@@ -42,7 +42,7 @@ goto("wait");
 
 @player_join
 entity.teleport(player, spawn_loc);
-entity.setHealth(player, 20);
+living.setHealth(player, 20);
 player.setHunger(player, 20);
 player.setSaturation(player, 5);
 player.clearInventory(player);

+ 14 - 14
minigames/capturetheflag/capturetheflag.txt

@@ -184,7 +184,7 @@ ignoreGoto(event);
 goto("wait");
 
 @item_air_click
-if(item.getType(entity.getEquip(player, "hand")) == "COMPASS") {
+if(item.getType(living.getEquip(player, "hand")) == "COMPASS") {
 	tempteamstring = map.get(compassmap, player_name);
 	newtempteamstring = list.getIndex(allteams, list.getIndexOf(allteams, tempteamstring) + 1);
 	tempcompass = map.get(compassitem, newtempteamstring);
@@ -275,7 +275,7 @@ if(item.getType(tempstack) == "minecraft:air") {
 	tempteamstring2 = map.get(flagcarrier, player_name);
 	player.speak("all", gamename, concat("§rDie ", map.get(teamcolortext, tempteamstring2), " Flagge §rwurde von ", map.get(colorcodes, tempteamstring), "Team ", map.get(teamcolortext2, tempteamstring), " §rerobert"));
 	block.set2(moveloc, "standing_banner", map.get(flagdirection, moveloc), concat("{Base:", map.get(flagcolors, moveloc), "}"));
-	entity.setEquip(player, "head", air_item);
+	living.setEquip(player, "head", air_item);
 	map.add(flagcarrier, player_name, null);
 	map.add(flagat, tempteamstring2, concat(map.get(colorcodes, tempteamstring), "Base"));
 	map.add(flagatloc, tempteamstring2, moveloc);
@@ -304,7 +304,7 @@ function setCompassNew(tempteamstring) {
 
 function equipPlayer(player, tempteamstring) {
 	clothescolor = map.get($clothescode, map.get(players, player_name));
-	entity.setEquip(player, "chest", read.item(concat("{id:\"minecraft:leather_chestplate\",Count:1b,tag:{display:{color:", clothescolor, "}}}")));
+	living.setEquip(player, "chest", read.item(concat("{id:\"minecraft:leather_chestplate\",Count:1b,tag:{display:{color:", clothescolor, "}}}")));
 	player.giveItem(player, $sword);
 	player.giveItem(player, $bow);
 	player.giveItem(player, $food);
@@ -330,20 +330,20 @@ setVar("i", 0);
 setVar("pname", list.getIndex(all, i));
 setVar("p", read.player(pname));
 if(list.contains(redteam, pname)) goto("equipred");
-entity.setEquip(p, "head", read.item("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
-entity.setEquip(p, "chest", read.item("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
-entity.setEquip(p, "legs", read.item("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
-entity.setEquip(p, "feet", read.item("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
+living.setEquip(p, "head", read.item("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
+living.setEquip(p, "chest", read.item("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
+living.setEquip(p, "legs", read.item("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
+living.setEquip(p, "feet", read.item("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:3361970}},Damage:0s}"));
 player.action(p, "§9Team Blau");
 if(less(inc("i"), list.getSize(all))) goto("equip");
 sgoto(40, "loop");
 goto("checkgame");
 
 @equipred
-entity.setEquip(p, "head", read.item("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
-entity.setEquip(p, "chest", read.item("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
-entity.setEquip(p, "legs", read.item("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
-entity.setEquip(p, "feet", read.item("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
+living.setEquip(p, "head", read.item("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
+living.setEquip(p, "chest", read.item("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
+living.setEquip(p, "legs", read.item("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
+living.setEquip(p, "feet", read.item("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:10040115}},Damage:0s}"));
 player.action(p, "§cTeam Rot");
 if(less(inc("i"), list.getSize(all))) goto("equip");
 sgoto(40, "loop");
@@ -378,7 +378,7 @@ if(and(list.contains(redteam, player_name), equal(redflagat, "§rBase"))) goto("
 if(and(list.contains(blueteam, player_name), equal(redflagat, "§rBase"))) {
 	block.set(entity.getLocation(player), air_item_type);
 	//tempteamstring setzen
-	entity.setEquip(player, "head", map.get(itembanner, tempteamstring));
+	living.setEquip(player, "head", map.get(itembanner, tempteamstring));
 	goto("pickupred");
 }
 if(and(list.contains(redteam, player_name), notequal(redflagat, "§rBase"), equal(redcarrier, player_name))) goto("resetredflag");
@@ -390,7 +390,7 @@ event.addLoc(redflagloc);
 goto("checkgame");
 
 @resetflag
-entity.setEquip(player, "head", air_item);
+living.setEquip(player, "head", air_item);
 block.clone(redcopyflagloc, redflagloc);
 setVar("redflagat", "§rBase");
 setVar("redflagatloc", redflagloc);
@@ -408,7 +408,7 @@ if(map.get(flagcarrier, player_name) != null) {
 tempteamstring2 = map.get(players, player_name);
 color = map.get(colorcodes, tempteamstring2);
 player.speak("all", gamename, concat(color, player_name, "§r trägt die ", map.get(teamcolortext, tempteamstring), " §rFlagge"));
-entity.setEquip(player, "head", map.get(itembanner, tempteamstring));
+living.setEquip(player, "head", map.get(itembanner, tempteamstring));
 map.add(flagcarrier, player_name, tempteamstring);
 map.add(flagat, tempteamstring, concat(color, player_name));
 map.add(flagatloc, tempteamstring, entity.getLocation(player));

+ 1 - 1
minigames/fastbridge/fastbridge.txt

@@ -15,7 +15,7 @@ goto("simplelobby");
 @specificLobbyHandling
 if(event == "player_join") {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);

+ 1 - 1
minigames/halma/halma.txt

@@ -14,7 +14,7 @@ goto("simplelobby");
 @specificLobbyHandling
 if(event == "player_join") {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);

+ 3 - 3
minigames/hideandseek/hideandseek.txt

@@ -71,7 +71,7 @@ goto("simplelobby");
 @specificLobbyHandling
 if(event == "player_join") {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -325,7 +325,7 @@ return;
 function setSeeker(player) {
 	setStackIcons(player, $seeker_skills);
 	player_uuid = player.getUuid(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	entity.clearEffects(player);
@@ -341,7 +341,7 @@ function setSeeker(player) {
 function setEscaper(player) {
 	setStackIcons(player, $hider_skills);
 	player_uuid = player.getUuid(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	entity.clearEffects(player);

+ 1 - 1
minigames/inverting/inverting.txt

@@ -35,7 +35,7 @@ if(event == "living_pre_hurt") {
 if(event == "player_join") {
 	entity.teleport(player, tploc);
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);

+ 1 - 1
minigames/jumpnrun/icejumpnrun.txt

@@ -122,7 +122,7 @@ if(list.contains(notallowed, toLowerCase(command))) {
 goto("wait");
 
 @player_toss
-entity.setEquip(player, "hand", item);
+living.setEquip(player, "hand", item);
 cancel = true;
 goto("wait");
 

+ 1 - 1
minigames/jumpnrun/jumpnrun.txt

@@ -74,7 +74,7 @@ title.clear(player);
 title.setTime(player, 20, 20, 20);
 title.send(player, gamename);
 player.clearInventory(player);
-entity.setHealth(player, 20);
+living.setHealth(player, 20);
 player.setHunger(player, 20);
 player.setSaturation(player, 5);
 

+ 5 - 5
minigames/jumpnrun/todesjumpnrun.txt

@@ -249,7 +249,7 @@ goto("wait");
 @player_toss
 if(jumpstage != 43) {
 	cancel = true;
-	entity.setEquip(player, "hand", item);
+	living.setEquip(player, "hand", item);
 	inv.update(player);
 }
 goto("wait");
@@ -261,13 +261,13 @@ if(key == 9) {
 mode = tjr.getMode();
 if(mode == "whole") {
 	if(key == 1) {
-		entity.setHealth(player, 20);
+		living.setHealth(player, 20);
 		tjr.teleportModule(player, jumpstage);
 		entity.setBurning(player, 0);
 		goto("wait");
 	}
 	if(key == 2) {
-		entity.setHealth(player, 20);
+		living.setHealth(player, 20);
 		jumpstage = 0;
 		tjr.setStarttime();
 		tjr.setWholeTimeTemp(player, 0);
@@ -279,7 +279,7 @@ if(mode == "whole") {
 }
 if(mode == "fly") {
 	if(key == 1) {
-		entity.setHealth(player, 20);
+		living.setHealth(player, 20);
 		jumpstage = 0;
 		tjr.setStarttime();
 		tjr.teleportModule(player, jumpstage);
@@ -289,7 +289,7 @@ if(mode == "fly") {
 } 
 if(mode == "modul") {
 	if(key == 1) {
-		entity.setHealth(player, 20);
+		living.setHealth(player, 20);
 		tjr.setStarttime();
 		tjr.teleportModule(player, jumpstage);
 		entity.setBurning(player, 0);

+ 1 - 1
minigames/leapfrog/leapfrog.txt

@@ -25,7 +25,7 @@ display.add(player, 0, gamename);
 display.add(player, 1, "Points: §e", text.number(points));
 display.add(player, 2, "Your Record: §e", text.number(player_record));
 stacks.setActive(player, false);
-entity.setHealth(player, 20);
+living.setHealth(player, 20);
 player.setHunger(player, 20);
 player.setSaturation(player, 5);
 entity.teleport(player, loc.mod(middleloc, 0.5, 0, 0.5));

+ 2 - 2
minigames/letters/letters.txt

@@ -38,7 +38,7 @@ seconds = 0;
 this_player = player;
 entity.teleport(player, spawnloc);
 entity.cleareffects(player);
-entity.setHealth(player, 20);
+living.setHealth(player, 20);
 player.setHunger(player, 20);
 player.setSaturation(player, 5);
 title.setTime(player, 20, 0, 20);
@@ -165,7 +165,7 @@ if(block.hasTag(sign_tag, block.get(block_loc))) {
 		counter++;
 		msg.prefix(player, gamename, concat("Progress: ", text.number(counter), "/26"));
 		display.add(player, 3, concat(text.number(counter), "/26"));
-		entity.setHealth(player, 20);
+		living.setHealth(player, 20);
 		player.setHunger(player, 20);
 		player.setSaturation(player, 5);
 		if(counter == 26) {

+ 3 - 3
minigames/mengerrun/mengerrun.txt

@@ -16,7 +16,7 @@ goto("simplelobby");
 @specificLobbyHandling
 if(event == "player_join") {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -217,7 +217,7 @@ goto("checkgame");
 function setSeeker(player) {
 	setStackIcons(player);
 	player_uuid = player.getUuid(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 100);
 	entity.clearEffects(player);
@@ -231,7 +231,7 @@ function setSeeker(player) {
 function setEscaper(player) {
 	setStackIcons(player);
 	player_uuid = player.getUuid(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 100);
 	entity.clearEffects(player);

+ 2 - 2
minigames/parcour/parcour.txt

@@ -63,7 +63,7 @@ starttime = time.getMillis();
 goto("wait");
 
 @player_toss
-entity.setEquip(player, "hand", item);
+living.setEquip(player, "hand", item);
 cancel = true;
 goto("wait");
 
@@ -181,7 +181,7 @@ if(key == 1) {
 	minutes = 0;
 	seconds = 0;
 	jumpstage = 0;
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	entity.setBurning(player, 0);
 	display.add(player, 4, concat("Checkpoints: §e", text.number(jumpstage), "/", text.number(list.getSize(checkpoints) - 1)));
 	display.add(player, 5, concat("§rTime: §e0:00"));

+ 4 - 4
minigames/ragemode/ragemode.txt

@@ -207,11 +207,11 @@ goto("wait");
 @block_place
 cancel = true;
 @item_air_click
-player_item_type = item.getType(entity.getEquip(player, "hand"));
+player_item_type = item.getType(living.getEquip(player, "hand"));
 if(player_item_type == "minecraft:iron_axe") {
-	list.add(agelist, entity.shootProjectile(player, "me.km.entities.EntityItemProjectile", 1, axe));
+	list.add(agelist, living.shootProjectile(player, "me.km.entities.EntityItemProjectile", 1, axe));
 	sgoto(10, "setage");
-	player.removeItem(player, entity.getEquip(player, "hand"));
+	player.removeItem(player, living.getEquip(player, "hand"));
 	goto("wait");
 }
 if(player_item_type == "minecraft:chest") {
@@ -245,7 +245,7 @@ if(!list.contains(player_list, attacker_uuid)) {
 	msg.prefix(player, gamename, "§eIllegal player in game.");
 	goto("wait");
 }
-attacker_item = entity.getEquip(attacker, "hand");
+attacker_item = living.getEquip(attacker, "hand");
 attacker_item_type = item.getType(attacker_item);
 if(attacker_item_type == "minecraft:iron_axe") {
 	player.removeItem(attacker, attacker_item);

+ 1 - 1
minigames/rebuild/rebuild.txt

@@ -9,7 +9,7 @@ goto("simplelobby");
 @specificLobbyHandling
 if(event == "player_join") {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);

+ 3 - 3
minigames/sammelfieber/sammelfieber.txt

@@ -88,7 +88,7 @@ while(hasNext(iter)) {
 	player.setGamemode(player, "survival");
 	player.setFly(player, false);
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -150,7 +150,7 @@ if(action == "right") {
 	} else {
 		hand = "offhand";
 	}
-	item_type = item.getType(entity.getEquip(player, hand));
+	item_type = item.getType(living.getEquip(player, hand));
 	if(set.contains(player_blocks, item_type)) {
 		goto("wait");
 	}
@@ -176,7 +176,7 @@ if(block.hasTag(leaves_tag, block.get(block_loc))) {
 	drop_type = concat(text.concatList(split_list, "_", 0, list.getSize(split_list) - 2), "_sapling");
 	item.drop(block_loc, read.item(drop_type));
 }
-state = block.getState(block_loc, double_block_half_property);
+state = block.property.getValue(block_loc, double_block_half_property);
 if(state != null) {
 	if(state == "lower") {
 		loc = block_loc;

+ 3 - 3
minigames/sammelfieber/sfranked.txt

@@ -78,7 +78,7 @@ while(hasNext(iter)) {
 	player.setGamemode(player, "survival");
 	player.setFly(player, false);
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -105,7 +105,7 @@ if(action == "right") {
 	} else {
 		hand = "offhand";
 	}
-	item_type = item.getType(entity.getEquip(player, hand));
+	item_type = item.getType(living.getEquip(player, hand));
 	if(set.contains(player_blocks, item_type)) {
 		goto("wait");
 	}
@@ -131,7 +131,7 @@ if(block.hasTag(leaves_tag, block.get(block_loc))) {
 	drop_type = concat(text.concatList(split_list, "_", 0, list.getSize(split_list) - 2), "_sapling");
 	item.drop(block_loc, read.item(drop_type));
 }
-state = block.getState(block_loc, double_block_half_property);
+state = block.property.getValue(block_loc, double_block_half_property);
 if(state != null) {
 	if(state == "lower") {
 		loc = block_loc;

+ 5 - 5
minigames/shoppingchaos/shoppingchaos.txt

@@ -218,7 +218,7 @@ goto("simplelobby");
 if(event == "player_join") {
 	list.add(waiters, player.getUuid(player));
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -445,7 +445,7 @@ goto("checkgame");
 if(block.hasTag(wall_signs_tag, block)) {
 	if(block.getSign(block_loc, 0) == "Click here") {
 		if(player.getItemAmount(player, false, emerald) >= 10) {
-			direction = block.getState(block_loc, facing_prop);
+			direction = block.property.getValue(block_loc, facing_prop);
 			block.set(block_loc, air);
 			item = getItem(getRandomIndex());
 			entity.spawnItemFrame(block_loc, direction, item);
@@ -476,7 +476,7 @@ goto("checkgame");
 if(isPlayer(entity)) {
 	player = entity;
 	if(map.contains(sales_map, human)) {
-		hand_item = entity.getEquip(player, "hand");
+		hand_item = living.getEquip(player, "hand");
 		aim_item = map.get(sales_map, human);
 		if(item.getType(hand_item) == item.getType(aim_item)) {
 			player_uuid = player.getUuid(player);
@@ -560,9 +560,9 @@ goto("checkgame");
 
 @item_air_click
 if(hand == "MAIN_HAND") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 } else {
-	item = entity.getEquip(player, "offhand");
+	item = living.getEquip(player, "offhand");
 }
 if(item.getType(item) == "minecraft:ender_pearl") {
 	cancel = true;

+ 7 - 7
minigames/snowgame/snowgame.txt

@@ -54,7 +54,7 @@ if(event == "player_join") {
 	map.add(nerf_map, player_name, 0);
 	map.add(kills_map, player_name, 0);
 	map.add(deaths_map, player_name, 0);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -173,7 +173,7 @@ if(player.hasMinigameId(player, script_id)) {
 goto("checkgame");
 
 @item_air_click
-player_item_type = item.getType(entity.getEquip(player, "hand"));
+player_item_type = item.getType(living.getEquip(player, "hand"));
 if(player_item_type == "minecraft:snowball") {
 	for(i = 0; i < list.getSize(allteams); i++) {
 		temp_team = list.getIndex(allteams, i);
@@ -389,12 +389,12 @@ function giveSnowballs(player) {
 }
 
 function equipPlayer(player, team) {
-	if(item.getType(entity.getEquip(player, "head")) == "minecraft:air") {
+	if(item.getType(living.getEquip(player, "head")) == "minecraft:air") {
 		color = map.get($cloth_color, team);
-		entity.setEquip(player, "head", read.item(concat("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:", color, "}}}")));
-		entity.setEquip(player, "chest", read.item(concat("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:", color, "}}}")));
-		entity.setEquip(player, "legs", read.item(concat("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:", color, "}}}")));
-		entity.setEquip(player, "feet", read.item(concat("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:", color, "}}}")));
+		living.setEquip(player, "head", read.item(concat("{id:'minecraft:leather_helmet',Count:1b,tag:{display:{color:", color, "}}}")));
+		living.setEquip(player, "chest", read.item(concat("{id:'minecraft:leather_chestplate',Count:1b,tag:{display:{color:", color, "}}}")));
+		living.setEquip(player, "legs", read.item(concat("{id:'minecraft:leather_leggings',Count:1b,tag:{display:{color:", color, "}}}")));
+		living.setEquip(player, "feet", read.item(concat("{id:'minecraft:leather_boots',Count:1b,tag:{display:{color:", color, "}}}")));
 	}
 }
 

+ 4 - 3
minigames/volleyball/volleyball.txt

@@ -39,7 +39,7 @@ randblock_z2 = -5;
 player_name = player.getName(player);
 if(event == "player_join") {
 	list.add(waiters, player_name);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	player.clearInventory(player);
@@ -157,14 +157,15 @@ goto("checkgame");
 teamlist = map.get(team_lists, team);
 p_uuid = list.getIndex(teamlist, math.random(0, list.getSize(teamlist) - 1));
 p = player.get(p_uuid);
-player.setInvSlot(p, 5, "minecraft:bedrock");
+inv = player.getInv(p);
+inv.setItem(inv, 5, read.item("minecraft:bedrock"));
 goto("checkgame");
 
 @player_toss
 cancel = true;
 player = player;//*?*//
 //*player = living_entity; ist schon player?*//
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 item_type = item.getType(item);
 //*isblock(item_type) wäre benötigt um nicht einzelne Blöcke zu werfen?*//
 if(item_type == "minecraft:bedrock") {

+ 1 - 1
story/admont/der_anfang.txt

@@ -92,7 +92,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Gastwirtin") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		if(text.item(item) == "{id:\"minecraft:potion\",Count:1b,tag:{Potion:\"minecraft:water\"}}") {
 			msg.prefix(player, "§dGastwirt", "Danke! Hier eine kleine Belohnung.");
 			player.removeItem(player, item);

+ 1 - 1
story/admont/die_uhr_tickt.txt

@@ -51,7 +51,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Schmied") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		rest_amount = human.giveItem(entity_name, player, "minecraft:gold_ingot", gold_ingot_needed);
 		if(rest_amount == 0) {

+ 1 - 1
story/admont/erntezeit.txt

@@ -75,7 +75,7 @@ if(event == "block_break") {
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Bauer") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:wheat") {
 			if(wheat_needed > 0) {

+ 2 - 2
story/admont/erstes_date.txt

@@ -80,7 +80,7 @@ if(option == "A") {
 	if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 		entity_name = entity.getName(entity);
 		if(entity_name == "Peter") {
-			item = entity.getEquip(player, "hand");
+			item = living.getEquip(player, "hand");
 			item_type = item.getType(item);
 			if(item_type == "minecraft:writable_book") {
 				msg.prefix(player, "§dPeter", "Bitte signier das Buch noch für mich!");
@@ -88,7 +88,7 @@ if(option == "A") {
 			}
 			if(item_type == "minecraft:written_book" && removeFormat(item.getName(item)) == "Für Merle") {
 				block.addItem(book_chest_loc, item.clone(item));
-				entity.setEquip(player, "hand", read.item("minecraft:air"));
+				living.setEquip(player, "hand", read.item("minecraft:air"));
 				msg.prefix(player, "§dPeter", "Vielen Dank!");
 				msg(player, "§dQuest abgeschlossen. Belohnung: 8 Snuvis!");
 				money.addBoost(player, 8);

+ 8 - 8
story/admont/felsmagier.txt

@@ -56,10 +56,10 @@ if(event == "quest_term") {
 	wait(); //Script wird von außen terminiert
 }
 if(event == "block_click" && hand == "MAIN_HAND" && block.getType(block_loc) == "minecraft:iron_door") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(item.getType(item) == "km:golden_key" && item.getName(item) == "Turmschlüssel") {
-		state_open = block.getState(block_loc, open_prop);
-		state_half = block.getState(block_loc, half_prop);
+		state_open = block.property.getValue(block_loc, open_prop);
+		state_half = block.property.getValue(block_loc, half_prop);
 		if(state_half == "upper") {
 			door_loc = loc.mod(block_loc, 0, -1, 0);
 		} else {
@@ -119,7 +119,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Zauberlehrling") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		if(item.getType(item) != "minecraft:bread") {
 			msg.prefix(player, "§dZauberlehrling", "Das kann ich nicht gebrauchen.");
 			goto("wait");
@@ -190,7 +190,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Felsmagier") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		if(item.getType(item) != "km:golden_key" && item.getName(item) != "Turmschlüssel") {
 			msg.prefix(player, "§dFelsmagier", "Gib mir bitte den Turmschlüssel.");
 			goto("wait");
@@ -219,7 +219,7 @@ if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "
 	entity_name = entity.getName(entity);
 	if(entity_name == "Felsmagier") {
 		msg.prefix(player, "§dFelsmagier", "Nimm diesen Eimer, fülle ihn mit Wasser und leere in dann in den Kessel.");
-		safeGiveItemPlayer(player, read.item("minecraft:bucket"));
+		player.safeGiveItem(player, read.item("minecraft:bucket"));
 		block.set(cauldron_loc, "minecraft:cauldron[level=0]");
 		stage.increase(player);
 	}
@@ -237,7 +237,7 @@ goto("wait");
 
 @stage18
 if(event == "block_click" && hand == "MAIN_HAND") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(block.getType(block_loc) == "minecraft:cauldron" && item.getType(item) == "minecraft:water_bucket") {
 		msg.prefix(player, "§dFelsmagier", "Gut gemacht. Komm zurück zu mir.");
 		stage.increase(player);
@@ -302,7 +302,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Felsmagier") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		if(item.getType(item) == "km:mushroom_stick_cooked") {
 			msg.prefix(player, "§dFelsmagier", "Danke dir.");
 			player.removeItem(player, read.item("km:mushroom_stick_cooked"));

+ 2 - 2
story/admont/helfende_hand.txt

@@ -62,7 +62,7 @@ if(event == "entity_click") {
 	entity_type = entity.getType(entity);
 	if(entity_type == "sheep") {
 		if(!sheep.isSheared(entity)) {
-			item = entity.getEquip(player, "hand");
+			item = living.getEquip(player, "hand");
 			item_type = item.getType(item);
 			if(item_type == "minecraft:shears") {
 				wool++;
@@ -82,7 +82,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Gustav") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:coal") {
 			if(coal_needed > 0) {

+ 4 - 4
story/admont/kraeutermeister.txt

@@ -67,7 +67,7 @@ if(event == "item_air_click") {
 	if(hand == "OFF_HAND") {
 		goto("wait");
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	item_type = item.getType(item);
 	if(item_type == "minecraft:paper") {
 		c = 0;
@@ -137,7 +137,7 @@ if(event == "block_break") {
 	}
 	if(block_type == "minecraft:nether_wart") {
 		cancel = false;
-		age = block.getState(block_loc, age_prop_3);
+		age = block.property.getValue(block_loc, age_prop_3);
 		scheduler.setBlock(5, block_loc, concat(block_type, "[age=", text.number(age), "]"), false);
 		nether_wart++;
 		if(nether_wart == nether_wart_needed) {
@@ -177,7 +177,7 @@ if(event == "block_break") {
 		}
 	}
 	if(block_type == "minecraft:twisting_vines") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:shears") {
 			cancel = false;
@@ -200,7 +200,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kunibert") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:brown_mushroom") {
 			if(brown_mushroom_needed > 0) {

+ 2 - 2
story/admont/mitbringsel.txt

@@ -79,7 +79,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kunibert") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "km:herb_strong") {
 			if(herb_strong_needed > 0) {
@@ -151,7 +151,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Olaf") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:air") {
 			goto("wait");

+ 1 - 1
story/admont/schatz_von_admont.txt

@@ -53,7 +53,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Herbert") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:gold_ingot" || item_type == "minecraft:diamond") {
 			amount = player.getItemAmount(player, false, read.item("minecraft:diamond"));

+ 1 - 1
story/admont/tuecher.txt

@@ -46,7 +46,7 @@ if(event == "entity_click") {
 	entity_type = entity.getType(entity);
 	if(entity_type == "sheep") {
 		if(!sheep.isSheared(entity)) {
-			item = entity.getEquip(player, "hand");
+			item = living.getEquip(player, "hand");
 			item_type = item.getType(item);
 			if(item_type == "minecraft:shears") {
 				wool++;

+ 1 - 1
story/schiffbruch/schiff_10_kuchen.txt

@@ -79,7 +79,7 @@ if(event == "block_drop") {
 if(event == "entity_click") {
 	entity_type = entity.getType(entity);
 	if(entity_type == "cow") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:bucket") {
 			milk++;

+ 3 - 3
story/schiffbruch/schiff_11_vorbereitungen.txt

@@ -33,7 +33,7 @@ goto(label);
 @stage0
 if(event == "block_click") {
 	if(block_type == "minecraft:chest") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type != "minecraft:tripwire_hook") {
 			cancel = true;
@@ -55,7 +55,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:compass") {
 			stage.increase(player);
@@ -72,7 +72,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:tripwire_hook") {
 			amount = item.getAmount(item);

+ 1 - 1
story/schiffbruch/schiff_13_boss.txt

@@ -114,7 +114,7 @@ goto("wait");
 @stage2
 if(event == "living_pre_hurt") {
 	if(list.contains(ents, living_entity)) {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type != "km:diamond_stick") {
 			cancel = true;

+ 1 - 1
story/schiffbruch/schiff_1_schiffbruch.txt

@@ -66,7 +66,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:furnace") {
 			msg.prefix(player, "§dKumpel", "Lassen wir die Mahlzeiten brutzeln, Kamerad!");

+ 1 - 1
story/schiffbruch/schiff_2_nuechtern.txt

@@ -31,7 +31,7 @@ goto(label);
 
 @stage0
 if(event == "entity_click" && entity.getType(entity) == "cow") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	item_type = item.getType(item);
 	if(item_type == "minecraft:bucket") {
 		stage.increase(player);

+ 1 - 1
story/schiffbruch/schiff_3_schatz.txt

@@ -50,7 +50,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:gold_block") {
 			given++;

+ 1 - 1
story/schiffbruch/schiff_4_hunger.txt

@@ -72,7 +72,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:bread") {
 			given++;

+ 1 - 1
story/schiffbruch/schiff_7_baumaterial.txt

@@ -45,7 +45,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:jungle_log") {
 			given++;

+ 1 - 1
story/schiffbruch/schiff_9_durst.txt

@@ -38,7 +38,7 @@ goto("wait");
 if(event == "entity_click" && hand == "MAIN_HAND" && entity.getType(entity) == "human") {
 	entity_name = entity.getName(entity);
 	if(entity_name == "Kumpel") {
-		item = entity.getEquip(player, "hand");
+		item = living.getEquip(player, "hand");
 		item_type = item.getType(item);
 		if(item_type == "minecraft:potion") {
 			given++;

+ 1 - 1
system/ai.txt

@@ -18,7 +18,7 @@ if(isLiving(entity)) {
 		loc = entity.getLocation(entity);
 		world = loc.getWorld(loc);
 		world_name = world.getName(world);
-		if(isSurvWorldName(world_name)) {
+		if(word.isSurvName(world_name)) {
 			if(!living.getAi()) {
 				entity_type = entity.getType(entity);
 				if(!list.contains(ai_ignore, entity_type)) {

+ 2 - 2
system/chat.txt

@@ -123,7 +123,7 @@ if(players.getAmount() == 1) {
 			if(now_time - cookie_time > 300000) {
 				cookie_time = now_time;
 				msg(player, "§dHere is a cookie for you :D");
-				safeGiveItemPlayer(player, cookie);
+				player.safeGiveItem(player, cookie);
 			}
 		}
 	}
@@ -202,7 +202,7 @@ list = map.getOrDefault(causetolist, damage_type, defaultdeaths);
 if(damage_type == "player") {
 	killer = player.getFromDamageSource(damage_source);
 	killer_name = player.getName(killer);
-	item = entity.getEquip(killer, "hand");
+	item = living.getEquip(killer, "hand");
 	if(item.hasName(item)) {
 		message1 = concat(death_prefix, fullname, colorcodedeath, " killed by ", killer_name, " with ");
 		message2 = item.getFullText(item);

+ 26 - 26
system/commands.txt

@@ -502,7 +502,7 @@ if(event == "player_move") {
 }
 if(event == "block_click") {
 	world_name = world.getName(loc.getWorld(entity.getLocation(player)));
-	if(action == "right" && !isSurvWorldName(world_name) && block.hasTag(beds_tag, block)) {
+	if(action == "right" && !word.isSurvName(world_name) && block.hasTag(beds_tag, block)) {
 		cancel = true;
 		goto("wait");
 	}
@@ -662,7 +662,7 @@ if(event == "inv_click") {
 		}
 		//Transmit item
 		player.removeItem(p, item);
-		safeGiveItemPlayer(player, item);
+		player.safeGiveItem(player, item);
 		inv.setItem(inv, inv_slot, read.item("minecraft:air"));
 		inv.update(player);
 		goto("wait");
@@ -748,7 +748,7 @@ if(event == "inv_click") {
 		if(skill.isActive(skill_name)) {
 			player_loc = entity.getLocation(player);
 			world_name = world.getName(loc.getWorld(player_loc));
-			if(!isSurvWorldName(world_name)) {
+			if(!word.isSurvName(world_name)) {
 				msg.prefix(player, prefix_skill, "You can't use this in this world.");
 				goto("wait");
 			}
@@ -933,7 +933,7 @@ if(event == "function_key") {
 	if(key == 2) {
 		player_loc = entity.getLocation(player);
 		world_name = world.getName(loc.getWorld(player_loc));
-		if(isSurvWorldName(world_name) || world_name == "story") {
+		if(word.isSurvName(world_name) || world_name == "story") {
 			skill.showAll(player);
 		}
 		goto("wait");
@@ -941,7 +941,7 @@ if(event == "function_key") {
 	if(key == 3) {
 		player_loc = entity.getLocation(player);
 		world_name = world.getName(loc.getWorld(player_loc));
-		if(!isSurvWorldName(world_name)) {
+		if(!word.isSurvName(world_name)) {
 			goto("wait");
 		}
 		world_time = world.getTime(world.getOverWorld());
@@ -1729,7 +1729,7 @@ if(isDouble(arg0)) {
 	goto("wait");
 }
 if(arg0 == "block") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	item_type = item.getType(item);
 	if(item_type == "minecraft:air") {
 		msg.prefix(player, prefix_commands, "You have to hold an item in your mainhand.");
@@ -1820,13 +1820,13 @@ if(arg0 == "toggle") {
 goto("wait");
 
 @hat
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) == "minecraft:air") {
 	msg.prefix(player, prefix_commands, "You have to hold an item in hand.");
 	goto("wait");
 }
-entity.setEquip(player, "head", item);
-entity.setEquip(player, "hand", read.item("minecraft:air"));
+living.setEquip(player, "head", item);
+living.setEquip(player, "hand", read.item("minecraft:air"));
 goto("wait");
 
 @hawkeye
@@ -2259,7 +2259,7 @@ if(affectedplayer != player) {
 } else {
 	msg.prefix(affectedplayer, prefix_commands, "You killed yourself.");
 }
-entity.damage(affectedplayer, 1000);
+living.damage(affectedplayer, 1000);
 goto("wait");
 
 @nickname
@@ -2281,7 +2281,7 @@ player.setTabName(player);
 goto("wait");
 
 @iteminfo
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 text = text.item(item);
 text = text.replace(text, "\"", "\\\"");
 msg(player, text.clipBoard(text, text));
@@ -3149,7 +3149,7 @@ if(size != 1) {
 	msg.prefix(player, prefix_commands, "/senditem <player>");
 	goto("wait");
 }
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) == "minecraft:air") {
 	msg.prefix(player, prefix_commands, "§rDu musst ein Item in der Hand halten");
 	goto("wait");
@@ -3165,7 +3165,7 @@ if(p == null) {
 	msg.prefix(player, prefix_commands, "This player is not online.");
 	goto("wait");
 }
-safeGiveItemPlayer(p, item);
+player.safeGiveItem(p, item);
 player.removeItem(player, item);
 goto("wait");
 
@@ -3269,7 +3269,7 @@ msg.prefix(player, prefix_commands, "Found a bug? Report it to marvinius with §
 goto("wait");
 
 @repair
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) == "minecraft:air") {
 	msg.prefix(player, prefix_commands, "You have to hold an item in your mainhand.");
 	goto("wait");
@@ -3528,7 +3528,7 @@ if(arg0 == "hide") {
 		msg.prefix(player, prefix_datatools, "§r/datatools hide <name>");
 		goto("wait");
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(item.getType(item) == "minecraft:air") {
 		msg.prefix(player, prefix_datatools, "Hold an item in your hand.");
 		goto("wait");
@@ -3546,7 +3546,7 @@ if(arg0 == "attribute") {
 		msg.prefix(player, prefix_datatools, "/datatools attribute <attribut> <slot> <double> <op>");
 		goto("wait");
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(item.getType(item) == "minecraft:air") {
 		msg.prefix(player, prefix_commands, "You have to hold an item in your mainhand.");
 		goto("wait");
@@ -3582,7 +3582,7 @@ if(arg0 == "name-item") {
 		msg.prefix(player, prefix_datatools, "§r/datatools name-item <name>");
 		goto("wait");
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(item.getType(item) == "minecraft:air") {
 		msg.prefix(player, prefix_datatools, "§rDu musst ein Item in der Hand halten.");
 		goto("wait");
@@ -3599,7 +3599,7 @@ if(arg0 == "lore-item") {
 		msg.prefix(player, prefix_datatools, "§r/datatools lore-item <line> <lore>");
 		goto("wait");
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(item.getType(item) == "minecraft:air") {
 		msg.prefix(player, prefix_datatools, "§rDu musst ein Item in der Hand halten.");
 		goto("wait");
@@ -3640,7 +3640,7 @@ if(arg0 == "maxhealth") {
 		goto("wait");
 	}
 	living.setMaxHealth(entity, value);
-	msg.prefix(player, prefix_datatools, concat("Das Entity ", entity.getType(entity), " hat nun Maxhealth: ", entity.getMaxHealth(entity), "§r."));
+	msg.prefix(player, prefix_datatools, concat("Das Entity ", entity.getType(entity), " hat nun Maxhealth: ", living.getMaxHealth(entity), "§r."));
 	goto("wait");
 }
 if(arg0 == "name-entity") {
@@ -5790,7 +5790,7 @@ if(arg0 == "list") {
 }
 location = entity.getLocation(player);
 world_name = world.getName(loc.getWorld(entity.getLocation(player)));
-if(!isSurvWorldName(world_name)) {
+if(!word.isSurvName(world_name)) {
 	msg.prefix(player, prefix_commands, "You can't use this command in this world.");
 	goto("wait");
 }
@@ -7249,7 +7249,7 @@ if(size == 1) {
 		msg.prefix(player, prefix_commands, concat(affectedname, " was healed."));
 	}
 }
-entity.heal(affectedplayer, 50);
+living.heal(affectedplayer, 50);
 player.setHunger(affectedplayer, 20);
 player.setSaturation(affectedplayer, 5);
 entity.clearEffects(affectedplayer);
@@ -7685,11 +7685,11 @@ function inv.show(from_player, to_player) {
 	//inv = inv.new("333303000 333333333 333333333 333333333 000000000 333333333");
 	inv = inv.new("333303000333333333333333333333333333000000000333333333");
 	set.add($invseeids, inv.getId(inv));
-	inv.setItem(inv, 0, entity.getEquip(from_player, "head"));
-	inv.setItem(inv, 1, entity.getEquip(from_player, "chest"));
-	inv.setItem(inv, 2, entity.getEquip(from_player, "legs"));
-	inv.setItem(inv, 3, entity.getEquip(from_player, "feet"));
-	inv.setItem(inv, 4, entity.getEquip(from_player, "offhand"));
+	inv.setItem(inv, 0, living.getEquip(from_player, "head"));
+	inv.setItem(inv, 1, living.getEquip(from_player, "chest"));
+	inv.setItem(inv, 2, living.getEquip(from_player, "legs"));
+	inv.setItem(inv, 3, living.getEquip(from_player, "feet"));
+	inv.setItem(inv, 4, living.getEquip(from_player, "offhand"));
 	for(slot = 0; slot <= 8; slot++) {
 		inv.setItem(inv, slot + 32, inv.getItem(player_inv, slot));
 	}

+ 2 - 2
system/copyisland.txt

@@ -13,7 +13,7 @@ goto("wait");
 
 @block_break
 player_id = player.getId(player);
-if(item.getType(entity.getEquip(player, "hand")) == mark_item_type) {
+if(item.getType(living.getEquip(player, "hand")) == mark_item_type) {
 	if(perm.has(player, "copyisland")) {
 		if(!isTheCloningPlayer(player_id)) {
 			goto("wait");
@@ -25,7 +25,7 @@ goto("wait");
 
 @block_click
 player_id = player.getId(player);
-if(item.getType(entity.getEquip(player, "hand")) == mark_item_type) {
+if(item.getType(living.getEquip(player, "hand")) == mark_item_type) {
 	if(perm.has(player, "copyisland")) {
 		if(!isTheCloningPlayer(player_id)) {
 			goto("wait");

+ 3 - 3
system/damage.txt

@@ -32,12 +32,12 @@ cancel = true;
 if(heal_amount <= 0) {
 	goto("wait");
 }
-health = entity.getHealth(living_entity);
+health = living.getHealth(living_entity);
 if(health <= 0) {
 	goto("wait");
 }
 new_health = health + heal_amount;
-entity.setHealth(living_entity, new_health);
+living.setHealth(living_entity, new_health);
 if(!isPlayer(living_entity)) {
 	updateEntityName(living_entity);
 }
@@ -69,7 +69,7 @@ function updateEntityName(living_entity) {
 
 	entity_name = entity.getName(living_entity);
 	max_health = living.getMaxHealth(living_entity);
-	health = text.number(math.round(entity.getHealth(living_entity)));
+	health = text.number(math.round(living.getHealth(living_entity)));
 	max_health = text.number(math.roundComma(max_health, 1));
 	
 	heart_index = text.indexOf(entity_name, "❤", 0);

+ 3 - 3
system/doors.txt

@@ -14,7 +14,7 @@ msg("dev", "§bDoors §rloaded.");
 wait();
 loc = entity.getLocation(player);
 world_name = world.getName(loc.getWorld(loc));
-if(isSurvWorldName(world_name) || isStoryWorldName(world_name)) {
+if(word.isSurvName(world_name) || world.isStoryName(world_name)) {
 	ignoreGoto(event);
 }
 goto("wait");
@@ -61,7 +61,7 @@ if(block.hasTag(fencegates_tag, block) && action == "right") {
 	player_spec = player.getAutoCloseDoor(player);
 	if(player_spec) {
 		if(!map.contains(orig_state, block_loc)) {
-			state = block.getState(block_loc, open_prop);
+			state = block.property.getValue(block_loc, open_prop);
 			map.add(orig_state, block_loc, state);
 		}
 		list.add(fencegates, block_loc);
@@ -105,7 +105,7 @@ if(block.hasTag(fencegates_tag, block.get(doorloc))) {
 		goto("wait");
 	}
 	map.remove(orig_state, doorloc);
-	if(block.getState(doorloc, open_prop) != state) {
+	if(block.property.getValue(doorloc, open_prop) != state) {
 		//TODO
 	}
 }

+ 4 - 4
system/gamecenter.txt

@@ -114,7 +114,7 @@ iter = map.iterator(gamemappaths);
 while(hasNext(iter)) {
 	entry = next(iter);
 	gamesignloc = map.getKey(entry);
-	facing = block.getState(gamesignloc, facing_property);
+	facing = block.property.getValue(gamesignloc, facing_property);
 	if(facing == "north") {
 		ground_block = loc.mod(gamesignloc, 0, 0, 1);
 	} elseif(facing == "east") {
@@ -143,7 +143,7 @@ ignoreGoto(event);
 goto("wait");
 
 @item_air_click
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) == "km:cross_red") {
 	cancel = true;
 	goto("wait");
@@ -228,7 +228,7 @@ if(set.contains(gamesign_ground_block, block_loc) || map.contains(gamepaths, blo
 goto("wait");
 
 @block_click
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) == "km:cross_red") {
 	cancel = true;
 }
@@ -356,7 +356,7 @@ if(!loc.isInGamesWorld(player_loc)) {
 }
 plot_id = plot.getIdFromLocation(player_loc);
 if(plot_id == 32 || plot_id == 106) {
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	cancel = true;

+ 3 - 3
system/harvest.txt

@@ -25,7 +25,7 @@ if(event == "block_drop") {
 	loc = entity.getLocation(player);
 }
 world_name = world.getName(loc.getWorld(loc));
-if(isSurvWorldName(world_name)) {
+if(word.isSurvName(world_name)) {
 	ignoreGoto(event);
 }
 goto("wait");
@@ -38,9 +38,9 @@ block_type = block.getType(block_loc);
 if(!set.contains(auto_farm_set2, block_type)) {
 	goto("wait");
 }
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(!item.hasTag(hoe_tag, item)) {
-	item = entity.getEquip(player, "offhand");
+	item = living.getEquip(player, "offhand");
 	if(!item.hasTag(hoe_tag, item)) {
 		goto("wait");
 	}

+ 4 - 4
system/hawkeye.txt

@@ -42,7 +42,7 @@ msg("dev", "§bHawkeye §rloaded.");
 @wait
 wait();
 if(event == "block_place") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(hawkeye.isTool(item)) {
 		if(!perm.has(player, "hawkeye")) {
 			perm.no(player, "hawkeye");
@@ -60,7 +60,7 @@ if(event == "block_place") {
 	}
 }
 if(event == "block_click") {
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	if(action == "left" && hawkeye.isTool(item)) {
 		if(!perm.has(player, "hawkeye")) {
 			perm.no(player, "hawkeye");
@@ -78,7 +78,7 @@ if(event == "block_click") {
 	goto("wait");
 }
 world_name = world.getName(loc.getWorld(block_loc));
-if(isSurvWorldName(world_name)) {
+if(word.isSurvName(world_name)) {
 	if(event == "block_break" || event == "block_place") {
 		if(!cancel) {
 			id = hawkeye.getNextId();
@@ -119,7 +119,7 @@ if(isSurvWorldName(world_name)) {
 goto("wait");
 
 function hawkeye.addBlockState(id, block_loc, state_name, state_prop) {
-	state = block.getState(block_loc, state_prop);
+	state = block.property.getValue(block_loc, state_prop);
 	if(state != null) {
 		hawkeye.addBlockDetail(id, state_name, state);
 	}

+ 2 - 2
system/herobrine.txt

@@ -8,14 +8,14 @@ wait();
 if(event == "human_hurt") {
 	entity_name = entity.getName(human);
 	if(list.contains(herobrines, human)) {
-		entity.damage(entity, 4, damage.get("thorns", human));
+		living.damage(entity, 4, damage.get("thorns", human));
 	}
 	goto("wait");
 }
 if(event == "block_break") {
 	player_loc = entity.getLocation(player);
 	world_name = world.getName(loc.getWorld(player_loc));
-	if(!isSurvWorldName(world_name)) {
+	if(!word.isSurvName(world_name)) {
 		goto("wait");
 	}
 	r = math.random(1, 500);

+ 2 - 2
system/sitting.txt

@@ -29,10 +29,10 @@ if(block.hasTag(stairs_tag, block)) {
 	if(action == "left") {
 		goto("wait");
 	}
-	if(block.getState(block_loc, half_property) != "bottom") {
+	if(block.property.getValue(block_loc, half_property) != "bottom") {
 		goto("wait");
 	}
-	if(item.getType(entity.getEquip(player, "hand")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "hand")) != "minecraft:air") {
 		goto("wait");
 	}
 	if(!loc.isAir(loc.mod(block_loc, 0, 1, 0))) {

+ 3 - 3
system/survival.txt

@@ -281,7 +281,7 @@ if(event == "living_death" || event == "living_pre_hurt") {
 	loc = entity.getLocation(player);
 }
 world_name = world.getName(loc.getWorld(loc));
-if(isSurvWorldName(world_name)) {
+if(word.isSurvName(world_name)) {
 	ignoreGoto(event);
 }
 goto("wait");
@@ -292,7 +292,7 @@ world = loc.getWorld(player_loc);
 if(world.getName(world) != "overworld") {
 	goto("wait");
 }
-item = entity.getEquip(player, "hand");
+item = living.getEquip(player, "hand");
 if(item.getType(item) != "minecraft:clock") {
 	goto("wait");
 }
@@ -435,7 +435,7 @@ if(entity.getType(entity) == "human") {
 			offerRank(player, "rank.adventurer");
 		}
 		removeAdventureDisplay(player);
-		safeGiveItemPlayer(player, coin_silver);
+		player.safeGiveItem(player, coin_silver);
 		goto("wait");
 	}
 }

+ 3 - 3
system/timber.txt

@@ -64,11 +64,11 @@ function block.isTree(break_loc) {
 	while(block.getType(mod_loc) == $tree_type) {
 		loc.add(mod_loc, 0, 1, 0);
 	}
-	state = block.getState(mod_loc, $prop_persistent);
+	state = block.property.getValue(mod_loc, $prop_persistent);
 	if(state == null || state) {
 		if($tree_type == "minecraft:acacia_log") {
 			for(i = 0; i < 5; i++) {
-				state = block.getState(mod_loc, $prop_persistent);
+				state = block.property.getValue(mod_loc, $prop_persistent);
 				if(state != null && !state) {
 					return true;
 				}
@@ -172,7 +172,7 @@ function block.isTreePart(location) {
 	if(temp_type == "minecraft:vine") {
 		return true;
 	}
-	state = block.getState(location, $prop_persistent);
+	state = block.property.getValue(location, $prop_persistent);
 	if(state != null && !state) {
 		return true;
 	}

+ 2 - 2
system/voxel.txt

@@ -24,10 +24,10 @@ if(event == "left_click_air" || event == "block_break") {
 } else {
 	goto("wait");
 }
-if(item.getType(entity.getEquip(player, "hand")) == "km:plus_green") {
+if(item.getType(living.getEquip(player, "hand")) == "km:plus_green") {
 	goto("doshit");
 }
-if(item.getType(entity.getEquip(player, "hand")) == "km:minus_green") {
+if(item.getType(living.getEquip(player, "hand")) == "km:minus_green") {
 	goto("dosmooth");
 }
 goto("wait");

+ 1 - 1
utils/u_games.txt

@@ -412,7 +412,7 @@ function player.hasMinigameId(player, script_id) {
 
 function resetplayer(player) {
 	entity.cleareffects(player);
-	entity.setHealth(player, 20);
+	living.setHealth(player, 20);
 	player.setHunger(player, 20);
 	player.setSaturation(player, 5);
 	display.reset(player);

+ 56 - 56
utils/u_general.txt

@@ -144,10 +144,6 @@ function player.safeGiveItem(player, item) {
 	item.drop(entity.getLocation(player), rest_item);
 }
 
-function safeGiveItemPlayer(player, item) { //Deprecated
-	player.safeGiveItem(player, item);
-}
-
 function setBlockIfNotAir(location, block) {
 	if(block.getType(location) == "minecraft:air") {
 		block.set(location, block, true);
@@ -363,15 +359,7 @@ function world.isStoryName(world_name) {
 	return world_name == "story";
 }
 
-function isStoryWorldName(world_name) { //Deprecated
-	return world_name == "story";
-}
-
-function isGamesWorldName(world_name) { //Deprecated
-	return world_name == "games";
-}
-
-function isSurvWorldName(world_name) {
+function word.isSurvName(world_name) {
 	if(world_name == "overworld") {
 		return true;
 	} elseif(world_name == "the_end") {
@@ -384,7 +372,7 @@ function isSurvWorldName(world_name) {
 
 function world.canUsePlots(world) {
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		return true;
 	}
 	if(world.isCreativeName(world_name)) {
@@ -395,7 +383,7 @@ function world.canUsePlots(world) {
 
 function world.addTimedStatus(world, index, time, message) {
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		worldlist = players.toWorldList(world.getOverWorld());
 		for(i = 0; i < list.getSize(worldlist); i++) {
 			status.addTimed(list.getIndex(worldlist, i), index, time, message);
@@ -434,7 +422,7 @@ function player.checkForWorldChange(player, location) {
 		return false;
 	}
 	//Wenn beide Welten in derselben Liste sind --> kein Wechsel
-	if(isSurvWorldName(from_world_name) && isSurvWorldName(to_world_name)) {
+	if(word.isSurvName(from_world_name) && word.isSurvName(to_world_name)) {
 		return false;
 	}
 	return true;
@@ -461,7 +449,7 @@ function player.changeInv(player, from_world, to_world) {
 			player.setGamemode(player, gm);
 		}
 	}
-	if(isSurvWorldName(to_world_name)) {
+	if(word.isSurvName(to_world_name)) {
 		if(player.hasFly(player)) {
 			scheduler.addFly(1, player, true);
 		}
@@ -473,7 +461,7 @@ function inv.saveForPlayer(sec_player, for_player_or_id, world) {
 		for_player_or_id = player.getId(for_player_or_id);
 	}
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		pfad = "scripts/configs/inv_data/survival";
 	} else {
 		pfad = concat("scripts/configs/inv_data/", world_name);
@@ -482,7 +470,7 @@ function inv.saveForPlayer(sec_player, for_player_or_id, world) {
 	
 	//Allgemeine Daten
 	if(for_player_or_id == player.getId(sec_player)) {
-		config.set(config, "health", entity.getHealth(sec_player));
+		config.set(config, "health", living.getHealth(sec_player));
 		config.set(config, "hunger", player.getHunger(sec_player));
 		config.set(config, "saturation", player.getSaturation(sec_player));
 		config.set(config, "xp", player.getExp(sec_player));
@@ -490,19 +478,21 @@ function inv.saveForPlayer(sec_player, for_player_or_id, world) {
 	}
 	
 	//Inventare
-	for(i = 0; i <= 35; i++) {
-		item_string = text.item(player.getInvSlot(sec_player, i));
+	inv = player.getInv(sec_player);
+	for(i = 0; i < 36; i++) {
+		item_string = text.item(inv.getItem(inv, i));
 		config.set(config, concat("slot-", i), item_string);
 	}
-	for(i = 0; i <= 26; i++) {
-		item_string = text.item(player.getEnderSlot(sec_player, i));
+	ender_inv = player.getInv(sec_player);
+	for(i = 0; i < 27; i++) {
+		item_string = text.item(inv.getItem(ender_inv, i));
 		config.set(config, concat("eslot-", i), item_string);
 	}
-	config.set(config, "offhand", text.item(entity.getEquip(sec_player, "offhand")));
-	config.set(config, "head", text.item(entity.getEquip(sec_player, "head")));
-	config.set(config, "chest", text.item(entity.getEquip(sec_player, "chest")));
-	config.set(config, "legs", text.item(entity.getEquip(sec_player, "legs")));
-	config.set(config, "feet", text.item(entity.getEquip(sec_player, "feet")));
+	config.set(config, "offhand", text.item(living.getEquip(sec_player, "offhand")));
+	config.set(config, "head", text.item(living.getEquip(sec_player, "head")));
+	config.set(config, "chest", text.item(living.getEquip(sec_player, "chest")));
+	config.set(config, "legs", text.item(living.getEquip(sec_player, "legs")));
+	config.set(config, "feet", text.item(living.getEquip(sec_player, "feet")));
 	config.saveAsync(config);
 }
 
@@ -511,7 +501,7 @@ function inv.loadFromPlayer(sec_player, from_player_or_id, world) {
 		from_player_or_id = player.getId(from_player_or_id);
 	}
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		pfad = "scripts/configs/inv_data/survival";
 	} else {
 		pfad = concat("scripts/configs/inv_data/", world_name);
@@ -523,7 +513,7 @@ function inv.loadFromPlayer(sec_player, from_player_or_id, world) {
 	
 	//Allgemeine Daten
 	if(from_player_or_id == player.getId(sec_player)) {
-		entity.setHealth(sec_player, config.getDouble(config, "health", 20));
+		living.setHealth(sec_player, config.getDouble(config, "health", 20));
 		player.setHunger(sec_player, config.getDouble(config, "hunger", 20));
 		player.setSaturation(sec_player, config.getDouble(config, "saturation", 5));
 		player.setExp(sec_player, config.getDouble(config, "xp", 0));
@@ -535,21 +525,23 @@ function inv.loadFromPlayer(sec_player, from_player_or_id, world) {
 		item_string = config.getString(config, concat("slot-", i), "minecraft:air");
 		item = read.item(item_string);
 		if(item != null) {
-			player.setInvSlot(sec_player, i, item);
+			inv = player.getInv(sec_player);
+			inv.setItem(inv, i, item);
 		}
 	}
 	for(i = 0; i <= 26; i++) {
 		item_string = config.getString(config, concat("eslot-", i), "minecraft:air");
 		item = read.item(item_string);
 		if(item != null) {
-			player.setEnderSlot(sec_player, i, item);
+			ender_inv = player.getInv(sec_player);
+			inv.setItem(ender_inv, i, item);
 		}
 	}
-	entity.setEquip(sec_player, "offhand", read.item(config.getString(config, "offhand", "minecraft:air")));
-	entity.setEquip(sec_player, "head", read.item(config.getString(config, "head", "minecraft:air")));
-	entity.setEquip(sec_player, "chest", read.item(config.getString(config, "chest", "minecraft:air")));
-	entity.setEquip(sec_player, "legs", read.item(config.getString(config, "legs", "minecraft:air")));
-	entity.setEquip(sec_player, "feet", read.item(config.getString(config, "feet", "minecraft:air")));
+	living.setEquip(sec_player, "offhand", read.item(config.getString(config, "offhand", "minecraft:air")));
+	living.setEquip(sec_player, "head", read.item(config.getString(config, "head", "minecraft:air")));
+	living.setEquip(sec_player, "chest", read.item(config.getString(config, "chest", "minecraft:air")));
+	living.setEquip(sec_player, "legs", read.item(config.getString(config, "legs", "minecraft:air")));
+	living.setEquip(sec_player, "feet", read.item(config.getString(config, "feet", "minecraft:air")));
 }
 
 //--------------------------------------------------
@@ -1496,7 +1488,7 @@ function msg.quest(player, speaker, line_now, line_max, message) {
 
 function sendMessageToWorld(world, message) {
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		worldlist = players.toWorldList(world.getOverWorld());
 		for(i = 0; i < list.getSize(worldlist); i++) {
 			msg(list.getIndex(worldlist, i), message);
@@ -1519,7 +1511,7 @@ function sendMessageToWorld(world, message) {
 
 function sendMessageToWorld2(world, message1, message2) {
 	world_name = world.getName(world);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		worldlist = players.toWorldList(world.getOverWorld());
 		for(i = 0; i < list.getSize(worldlist); i++) {
 			msg(list.getIndex(worldlist, i), message1, message2);
@@ -1607,19 +1599,19 @@ function player.hasClearInventory(player) {
 			return false;
 		}
 	}
-	if(item.getType(entity.getEquip(player, "head")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "head")) != "minecraft:air") {
 		return false;
 	}
-	if(item.getType(entity.getEquip(player, "chest")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "chest")) != "minecraft:air") {
 		return false;
 	}
-	if(item.getType(entity.getEquip(player, "legs")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "legs")) != "minecraft:air") {
 		return false;
 	}
-	if(item.getType(entity.getEquip(player, "feet")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "feet")) != "minecraft:air") {
 		return false;
 	}
-	if(item.getType(entity.getEquip(player, "offhand")) != "minecraft:air") {
+	if(item.getType(living.getEquip(player, "offhand")) != "minecraft:air") {
 		return false;
 	}
 	return true;
@@ -1766,7 +1758,7 @@ function player.showDefaultStacks(player) {
 	player_loc = entity.getLocation(player);
 	world_name = world.getName(loc.getWorld(player_loc));
 	stacks.clear(player);
-	if(isSurvWorldName(world_name)) {
+	if(word.isSurvName(world_name)) {
 		stacks.set(player, 0, "km:gear");
 		stacks.set(player, 1, "km:golden_scepter");
 		stacks.set(player, 2, "minecraft:red_bed");
@@ -1868,6 +1860,14 @@ function player.clearBackPos(player) {
 	config.saveAsync(config);
 }
 
+function entity.getFromDamageSource(damage_source) {
+	entity = damage.getImmediateSource(damage_source);
+	if(entity == null) {
+		return damage.getTrueSource(damage_source);
+	}
+	return entity;
+}
+
 function player.getFromDamageSource(damage_source) {
 	entity = damage.getImmediateSource(damage_source);
 	if(isPlayer(entity)) {
@@ -2159,20 +2159,20 @@ function player.isCommandBlocked(player) {
 }
 
 function player.checkHandsForItem(player, item) {
-	hand = entity.getEquip(player, "hand");
+	hand = living.getEquip(player, "hand");
 	if(item.getType(hand) == item.getType(item)) {
 		return true;
 	}
-	offhand = entity.getEquip(player, "offhand");
+	offhand = living.getEquip(player, "offhand");
 	return item.getType(offhand) == item.getType(item);
 }
 
 function player.checkHandsForTag(player, tag) {
-	hand = entity.getEquip(player, "hand");
+	hand = living.getEquip(player, "hand");
 	if(item.hasTag(tag, hand)) {
 		return true;
 	}
-	offhand = entity.getEquip(player, "offhand");
+	offhand = living.getEquip(player, "offhand");
 	return item.hasTag(tag, offhand);
 }
 
@@ -2184,14 +2184,14 @@ function block.gotWater(block, block_type, block_loc) {
 	if(block_type == "minecraft:water") {
 		return true;
 	}
-	return block.getState(block_loc, block.getProperty("waterlogged"));
+	return block.property.getValue(block_loc, block.getProperty("waterlogged"));
 }
 
 function block.getSecondDoor(door_loc_1) {
 	prop_h_facing = block.getProperty("horizontal_facing");
-	state_facing = block.getState(door_loc_1, prop_h_facing);
+	state_facing = block.property.getValue(door_loc_1, prop_h_facing);
 	prop_hinge = block.getProperty("hinge");
-	state_hinge = block.getState(door_loc_1, prop_hinge);
+	state_hinge = block.property.getValue(door_loc_1, prop_hinge);
 	if(state_facing == "north") {
 		if(state_hinge == "right") {
 			door_loc_2 = loc.mod(door_loc_1, -1, 0, 0);
@@ -2217,9 +2217,9 @@ function block.getSecondDoor(door_loc_1) {
 			door_loc_2 = loc.mod(door_loc_1, 0, 0, -1);
 		}
 	}
-	if(block.isDoor(door_loc_2)) {
+	if(block.hasTag(block.getTag("minecraft:wooden_doors"), block.get(door_loc_2))) {
 		if(block.isSameDoorHalf(door_loc_1, door_loc_2)) {
-			state_hinge_2 = block.getState(door_loc_2, prop_hinge);
+			state_hinge_2 = block.property.getValue(door_loc_2, prop_hinge);
 			if(state_hinge == "left" && state_hinge_2 == "right" || state_hinge == "right" && state_hinge_2 == "left") {
 				return door_loc_2;
 			}
@@ -2230,8 +2230,8 @@ function block.getSecondDoor(door_loc_1) {
 
 function block.isSameDoorHalf(door_loc_1, door_loc_2) {
 	prop_d_half = block.getProperty("double_block_half");
-	state_half = block.getState(door_loc_1, prop_d_half);
-	state_half_2 = block.getState(door_loc_2, prop_d_half);
+	state_half = block.property.getValue(door_loc_1, prop_d_half);
+	state_half_2 = block.property.getValue(door_loc_2, prop_d_half);
 	return state_half == state_half_2;
 }
 

+ 1 - 1
utils/u_quest.txt

@@ -37,7 +37,7 @@ function human.giveItem(human_name, player, needed_type_or_tag, needed_amount) {
 	if(needed_amount == 0) {
 		return -1;
 	}
-	item = entity.getEquip(player, "hand");
+	item = living.getEquip(player, "hand");
 	item_type = item.getType(item);
 	if(item_type == "minecraft:air") {
 		return needed_amount;