public function compare($target, $diff = false)
{
if ($target instanceof VersionString === false) {
$target = new VersionString($target);
}
$number = $this->getNumber();
$tNumber = $target->getNumber();
if ($diff === true) {
return $tNumber - $number;
}
if ($number > $tNumber) {
return -1;
//Target is older
} elseif ($number < $tNumber) {
return 1;
//Target is newer
} elseif ($target->getBuild() > $this->getBuild()) {
return 1;
} elseif ($target->getBuild() < $this->getBuild()) {
return -1;
} else {
return 0;
//Same version
}
}
protected function checkUpdate() { if ($this->updateInfo === \null) { return; } $currentVersion = new VersionString($this->server->getPocketMineVersion()); $newVersion = new VersionString($this->updateInfo["version"]); if ($currentVersion->compare($newVersion) > 0 and ($currentVersion->get() !== $newVersion->get() or $currentVersion->getBuild() > 0)) { $this->hasUpdate = \true; } else { $this->hasUpdate = \false; } }