From b566c4e6090979b75fc3c1a641468e7df4547039 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 9 Jan 2017 22:20:33 +0000 Subject: [PATCH 1/3] Fix Normal generator logic fail --- src/pocketmine/level/generator/normal/Normal.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pocketmine/level/generator/normal/Normal.php b/src/pocketmine/level/generator/normal/Normal.php index 141f6208a..a0e34daeb 100644 --- a/src/pocketmine/level/generator/normal/Normal.php +++ b/src/pocketmine/level/generator/normal/Normal.php @@ -119,9 +119,9 @@ class Normal extends Generator{ $this->random->setSeed($this->level->getSeed()); $this->selector = new BiomeSelector($this->random, function($temperature, $rainfall){ if($rainfall < 0.25){ - if($rainfall < 0.7){ + if($temperature < 0.7){ return Biome::OCEAN; - }elseif($rainfall < 0.85){ + }elseif($temperature < 0.85){ return Biome::RIVER; }else{ return Biome::SWAMP; From 058468104a660932570e10e850367225b215bc23 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 10 Jan 2017 00:38:23 +0000 Subject: [PATCH 2/3] Fix setting item custom name does not update inventory If a NamedTag was already present, it was modifying the object directly WITHOUT serializing the tag back to raw NBT for sending. This commit fixes that by always serializing the tag on change. --- src/pocketmine/item/Item.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/pocketmine/item/Item.php b/src/pocketmine/item/Item.php index 20e222b81..4d264fd6a 100644 --- a/src/pocketmine/item/Item.php +++ b/src/pocketmine/item/Item.php @@ -559,7 +559,7 @@ class Item implements ItemIds, \JsonSerializable{ $this->clearCustomName(); } - if(!($hadCompoundTag = $this->hasCompoundTag())){ + if($this->hasCompoundTag()){ $tag = new CompoundTag("", []); }else{ $tag = $this->getNamedTag(); @@ -573,9 +573,7 @@ class Item implements ItemIds, \JsonSerializable{ ]); } - if(!$hadCompoundTag){ - $this->setCompoundTag($tag); - } + $this->setCompoundTag($tag); return $this; } From 57f3f9b4edd117fac180c8c468a73d1b1eb7fc9d Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 10 Jan 2017 08:58:31 +0000 Subject: [PATCH 3/3] Fix setting custom name erases CompoundTag, fixes #244 ... ... even though this bug was introduced AFTER said issue was reported. Nice work @Muqsit --- src/pocketmine/item/Item.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pocketmine/item/Item.php b/src/pocketmine/item/Item.php index 4d264fd6a..2e742c879 100644 --- a/src/pocketmine/item/Item.php +++ b/src/pocketmine/item/Item.php @@ -559,7 +559,7 @@ class Item implements ItemIds, \JsonSerializable{ $this->clearCustomName(); } - if($this->hasCompoundTag()){ + if(!$this->hasCompoundTag()){ $tag = new CompoundTag("", []); }else{ $tag = $this->getNamedTag();