From 18117b91ed735336d1df241ad5996f91a617247b Mon Sep 17 00:00:00 2001 From: Shoghi Cervantes Date: Wed, 12 Mar 2014 03:25:50 +0100 Subject: [PATCH] Fixed issues with CPU loop --- src/PocketMine/PocketMine.php | 2 +- src/PocketMine/Server.php | 16 +++++++--------- src/PocketMine/TimeAPI.php | 2 ++ src/PocketMine/block/Block.php | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/PocketMine/PocketMine.php b/src/PocketMine/PocketMine.php index 25af6ab9e..2408fb5fd 100644 --- a/src/PocketMine/PocketMine.php +++ b/src/PocketMine/PocketMine.php @@ -116,7 +116,7 @@ namespace PocketMine { $opts = getopt("", array("enable-ansi", "disable-ansi", "data-path:", "no-wizard")); define("PocketMine\\DATA", isset($opts["data-path"]) ? realpath($opts["data-path"]) . DIRECTORY_SEPARATOR : \PocketMine\PATH); - if((strpos(strtoupper(php_uname("s")), "WIN") or isset($opts["enable-ansi"])) and !isset($opts["disable-ansi"])){ + if((!strpos(strtoupper(php_uname("s")), "WIN") or isset($opts["enable-ansi"])) and !isset($opts["disable-ansi"])){ define("PocketMine\\ANSI", true); } else{ define("PocketMine\\ANSI", false); diff --git a/src/PocketMine/Server.php b/src/PocketMine/Server.php index b4a492f9c..3e60d6099 100644 --- a/src/PocketMine/Server.php +++ b/src/PocketMine/Server.php @@ -588,18 +588,16 @@ class Server{ $this->packetHandler($packet); $lastLoop = 0; } - if($this->tick() > 0){ - $lastLoop = 0; - } else{ + if(($ticks = $this->tick()) === 0){ ++$lastLoop; - if($lastLoop < 64){ - + if($lastLoop < 16){ + usleep(1); + } elseif($lastLoop < 128){ + usleep(1000); } elseif($lastLoop < 256){ - usleep(100); - } elseif($lastLoop < 512){ - usleep(512); + usleep(2000); } else{ - usleep(5000); + usleep(4000); } } } diff --git a/src/PocketMine/TimeAPI.php b/src/PocketMine/TimeAPI.php index b6bfdd064..4353e4bf9 100644 --- a/src/PocketMine/TimeAPI.php +++ b/src/PocketMine/TimeAPI.php @@ -21,6 +21,8 @@ namespace PocketMine; +use PocketMine\Level; + class TimeAPI{ public static $phases = array( "day" => 0, diff --git a/src/PocketMine/block/Block.php b/src/PocketMine/block/Block.php index bfcdb58e6..878dfaaa0 100644 --- a/src/PocketMine/block/Block.php +++ b/src/PocketMine/block/Block.php @@ -262,7 +262,7 @@ abstract class Block extends Position{ self::DANDELION => new Dandelion(), self::CYAN_FLOWER => new CyanFlower(), self::BROWN_MUSHROOM => new BrownMushroom(), - self::RED_MUSHROOM => new RedMushRoom(), + self::RED_MUSHROOM => new RedMushroom(), self::GOLD_BLOCK => new Gold(), self::IRON_BLOCK => new Iron(), self::DOUBLE_SLAB => new DoubleSlab(),