From 90fa40de34212770313f0323ce8f35fc0aa6c2d5 Mon Sep 17 00:00:00 2001 From: Shoghi Cervantes Date: Wed, 27 Aug 2014 17:42:38 +0200 Subject: [PATCH] Added entity id names --- src/pocketmine/entity/Arrow.php | 4 +-- src/pocketmine/entity/Chicken.php | 5 ++++ src/pocketmine/entity/Cow.php | 6 ++++- src/pocketmine/entity/Creeper.php | 6 ++++- src/pocketmine/entity/Egg.php | 6 ++++- src/pocketmine/entity/Enderman.php | 5 +++- .../{EnderPearl.php => FallingSand.php} | 6 ++++- src/pocketmine/entity/Ocelot.php | 6 ++++- src/pocketmine/entity/Painting.php | 6 ++++- src/pocketmine/entity/Pig.php | 6 ++++- src/pocketmine/entity/PigZombie.php | 6 ++++- .../{FallingBlock.php => PrimedTNT.php} | 6 ++++- src/pocketmine/entity/Sheep.php | 6 ++++- src/pocketmine/entity/Silverfish.php | 6 ++++- src/pocketmine/entity/Skeleton.php | 4 ++- src/pocketmine/entity/Slime.php | 6 ++++- src/pocketmine/entity/Snowball.php | 6 ++++- src/pocketmine/entity/Spider.php | 6 ++++- src/pocketmine/entity/TNTPrimed.php | 27 ------------------- src/pocketmine/entity/Villager.php | 2 ++ src/pocketmine/entity/Wolf.php | 6 ++++- src/pocketmine/entity/Zombie.php | 5 ++++ .../level/format/generic/BaseChunk.php | 3 ++- .../level/format/generic/BaseFullChunk.php | 1 + 24 files changed, 99 insertions(+), 47 deletions(-) rename src/pocketmine/entity/{EnderPearl.php => FallingSand.php} (82%) rename src/pocketmine/entity/{FallingBlock.php => PrimedTNT.php} (80%) delete mode 100644 src/pocketmine/entity/TNTPrimed.php diff --git a/src/pocketmine/entity/Arrow.php b/src/pocketmine/entity/Arrow.php index 8cc76df81..50748765e 100644 --- a/src/pocketmine/entity/Arrow.php +++ b/src/pocketmine/entity/Arrow.php @@ -25,6 +25,7 @@ namespace pocketmine\entity; use pocketmine\event\entity\EntityDamageEvent; use pocketmine\math\Vector3; use pocketmine\nbt\tag\Short; +use pocketmine\nbt\tag\String; use pocketmine\network\protocol\AddEntityPacket; use pocketmine\network\protocol\SetEntityMotionPacket; use pocketmine\Player; @@ -39,13 +40,12 @@ class Arrow extends Projectile{ protected $drag = 0.01; protected function initEntity(){ + $this->namedtag->id = new String("id", "Arrow"); $this->setMaxHealth(1); $this->setHealth(1); if(isset($this->namedtag->Age)){ $this->age = $this->namedtag["Age"]; } - - } public function onUpdate(){ diff --git a/src/pocketmine/entity/Chicken.php b/src/pocketmine/entity/Chicken.php index 56190eb73..651342b0f 100644 --- a/src/pocketmine/entity/Chicken.php +++ b/src/pocketmine/entity/Chicken.php @@ -22,6 +22,11 @@ namespace pocketmine\entity; +use pocketmine\nbt\tag\String; + class Chicken extends Animal{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Chicken"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Cow.php b/src/pocketmine/entity/Cow.php index c954d803e..a9caf21db 100644 --- a/src/pocketmine/entity/Cow.php +++ b/src/pocketmine/entity/Cow.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Cow extends Animal{ +use pocketmine\nbt\tag\String; +class Cow extends Animal{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Cow"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Creeper.php b/src/pocketmine/entity/Creeper.php index d6c06afd9..040f72e13 100644 --- a/src/pocketmine/entity/Creeper.php +++ b/src/pocketmine/entity/Creeper.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Creeper extends Monster implements Explosive{ +use pocketmine\nbt\tag\String; +class Creeper extends Monster implements Explosive{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Creeper"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Egg.php b/src/pocketmine/entity/Egg.php index cef660eab..87eb24c79 100644 --- a/src/pocketmine/entity/Egg.php +++ b/src/pocketmine/entity/Egg.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Egg extends Projectile{ +use pocketmine\nbt\tag\String; +class Egg extends Projectile{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Egg"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Enderman.php b/src/pocketmine/entity/Enderman.php index 86d8eafd6..37e01a01f 100644 --- a/src/pocketmine/entity/Enderman.php +++ b/src/pocketmine/entity/Enderman.php @@ -23,7 +23,10 @@ namespace pocketmine\entity; use pocketmine\inventory\InventoryHolder; +use pocketmine\nbt\tag\String; class Enderman extends Monster implements InventoryHolder{ - + protected function initEntity(){ + $this->namedtag->id = new String("id", "Enderman"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/EnderPearl.php b/src/pocketmine/entity/FallingSand.php similarity index 82% rename from src/pocketmine/entity/EnderPearl.php rename to src/pocketmine/entity/FallingSand.php index 702a4a922..c297449dc 100644 --- a/src/pocketmine/entity/EnderPearl.php +++ b/src/pocketmine/entity/FallingSand.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class EnderPearl extends Projectile{ +use pocketmine\nbt\tag\String; +class FallingSand extends Entity{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "FallingSand"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Ocelot.php b/src/pocketmine/entity/Ocelot.php index d9d9f03ac..a03ce7eaa 100644 --- a/src/pocketmine/entity/Ocelot.php +++ b/src/pocketmine/entity/Ocelot.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Ocelot extends Animal implements Tameable{ +use pocketmine\nbt\tag\String; +class Ocelot extends Animal implements Tameable{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Ozelot"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Painting.php b/src/pocketmine/entity/Painting.php index 4e6c4e05f..7e591a87f 100644 --- a/src/pocketmine/entity/Painting.php +++ b/src/pocketmine/entity/Painting.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Painting extends Hanging{ +use pocketmine\nbt\tag\String; +class Painting extends Hanging{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Painting"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Pig.php b/src/pocketmine/entity/Pig.php index 9505d4956..d4e328557 100644 --- a/src/pocketmine/entity/Pig.php +++ b/src/pocketmine/entity/Pig.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Pig extends Animal implements Rideable{ +use pocketmine\nbt\tag\String; +class Pig extends Animal implements Rideable{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Pig"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/PigZombie.php b/src/pocketmine/entity/PigZombie.php index fdc82726e..26fe44935 100644 --- a/src/pocketmine/entity/PigZombie.php +++ b/src/pocketmine/entity/PigZombie.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class PigZombie extends Zombie{ +use pocketmine\nbt\tag\String; +class PigZombie extends Zombie{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "PigZombie"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/FallingBlock.php b/src/pocketmine/entity/PrimedTNT.php similarity index 80% rename from src/pocketmine/entity/FallingBlock.php rename to src/pocketmine/entity/PrimedTNT.php index 8e2db1dce..73dc9b514 100644 --- a/src/pocketmine/entity/FallingBlock.php +++ b/src/pocketmine/entity/PrimedTNT.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class FallingBlock extends Entity{ +use pocketmine\nbt\tag\String; +class PrimedTNT extends Entity implements Explosive{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "PrimedTNT"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Sheep.php b/src/pocketmine/entity/Sheep.php index bf2e1fa8c..7eaf87a0f 100644 --- a/src/pocketmine/entity/Sheep.php +++ b/src/pocketmine/entity/Sheep.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Sheep extends Animal implements Colorable{ +use pocketmine\nbt\tag\String; +class Sheep extends Animal implements Colorable{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Sheep"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Silverfish.php b/src/pocketmine/entity/Silverfish.php index da67d7c2a..58a966b7f 100644 --- a/src/pocketmine/entity/Silverfish.php +++ b/src/pocketmine/entity/Silverfish.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Silverfish extends Monster{ +use pocketmine\nbt\tag\String; +class Silverfish extends Monster{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Silverfish"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Skeleton.php b/src/pocketmine/entity/Skeleton.php index 913b91653..7c6793d37 100644 --- a/src/pocketmine/entity/Skeleton.php +++ b/src/pocketmine/entity/Skeleton.php @@ -23,5 +23,7 @@ namespace pocketmine\entity; class Skeleton extends Monster implements ProjectileSource{ - + protected function initEntity(){ + $this->namedtag->id = new Skeleton("id", "Chicken"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Slime.php b/src/pocketmine/entity/Slime.php index 66f78d473..475fca583 100644 --- a/src/pocketmine/entity/Slime.php +++ b/src/pocketmine/entity/Slime.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Slime extends Living{ +use pocketmine\nbt\tag\String; +class Slime extends Living{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Slime"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Snowball.php b/src/pocketmine/entity/Snowball.php index 6f48e75f6..87761b64d 100644 --- a/src/pocketmine/entity/Snowball.php +++ b/src/pocketmine/entity/Snowball.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Snowball extends Projectile{ +use pocketmine\nbt\tag\String; +class Snowball extends Projectile{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Snowball"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Spider.php b/src/pocketmine/entity/Spider.php index 4e510f2f7..7dc21fd6c 100644 --- a/src/pocketmine/entity/Spider.php +++ b/src/pocketmine/entity/Spider.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Spider extends Monster{ +use pocketmine\nbt\tag\String; +class Spider extends Monster{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Spider"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/TNTPrimed.php b/src/pocketmine/entity/TNTPrimed.php deleted file mode 100644 index b3142bf1f..000000000 --- a/src/pocketmine/entity/TNTPrimed.php +++ /dev/null @@ -1,27 +0,0 @@ -namedtag->id = new String("id", "Villager"); if(!isset($this->namedtag->Profession)){ $this->setProfession(self::PROFESSION_GENERIC); } diff --git a/src/pocketmine/entity/Wolf.php b/src/pocketmine/entity/Wolf.php index 481268eba..d1f1f3352 100644 --- a/src/pocketmine/entity/Wolf.php +++ b/src/pocketmine/entity/Wolf.php @@ -22,6 +22,10 @@ namespace pocketmine\entity; -class Wolf extends Animal implements Tameable{ +use pocketmine\nbt\tag\String; +class Wolf extends Animal implements Tameable{ + protected function initEntity(){ + $this->namedtag->id = new String("id", "Wolf"); + } } \ No newline at end of file diff --git a/src/pocketmine/entity/Zombie.php b/src/pocketmine/entity/Zombie.php index a22773789..b12956731 100644 --- a/src/pocketmine/entity/Zombie.php +++ b/src/pocketmine/entity/Zombie.php @@ -24,6 +24,7 @@ namespace pocketmine\entity; use pocketmine\event\entity\EntityDamageByEntityEvent; use pocketmine\item\Item; +use pocketmine\nbt\tag\String; use pocketmine\network\protocol\AddMobPacket; use pocketmine\network\protocol\SetEntityMotionPacket; use pocketmine\Player; @@ -35,6 +36,10 @@ class Zombie extends Monster{ public $length = 0.6; public $height = 1.8; + protected function initEntity(){ + $this->namedtag->id = new String("id", "Zombie"); + } + public function getName(){ return "Zombie"; } diff --git a/src/pocketmine/level/format/generic/BaseChunk.php b/src/pocketmine/level/format/generic/BaseChunk.php index 17dab2e2d..1e1a952d2 100644 --- a/src/pocketmine/level/format/generic/BaseChunk.php +++ b/src/pocketmine/level/format/generic/BaseChunk.php @@ -105,7 +105,8 @@ abstract class BaseChunk extends BaseFullChunk implements Chunk{ if(!isset($nbt->id)){ continue; } - + + //TODO: add all entities if($nbt->id instanceof String){ //New format switch($nbt["id"]){ case "Item": diff --git a/src/pocketmine/level/format/generic/BaseFullChunk.php b/src/pocketmine/level/format/generic/BaseFullChunk.php index 585b0c2d6..8ef420f25 100644 --- a/src/pocketmine/level/format/generic/BaseFullChunk.php +++ b/src/pocketmine/level/format/generic/BaseFullChunk.php @@ -106,6 +106,7 @@ abstract class BaseFullChunk implements FullChunk{ continue; } + //TODO: add all entities if($nbt->id instanceof String){ //New format switch($nbt["id"]){ case "Item":