diff --git a/src/xenialdan/MagicWE2/API.php b/src/xenialdan/MagicWE2/API.php index 838a786..b20017f 100644 --- a/src/xenialdan/MagicWE2/API.php +++ b/src/xenialdan/MagicWE2/API.php @@ -684,7 +684,7 @@ public static function getRotationData(BlockState $blockState, int $rotation) : return API::$rotationData[$id . ":" . $meta][(string) $rotation] ?? []; } - public static function setRotationData(array $json){ + public static function setRotationData(array $json) : void{ self::$rotationData = $json; } diff --git a/src/xenialdan/MagicWE2/EventListener.php b/src/xenialdan/MagicWE2/EventListener.php index 161cd19..2440cb6 100644 --- a/src/xenialdan/MagicWE2/EventListener.php +++ b/src/xenialdan/MagicWE2/EventListener.php @@ -188,9 +188,6 @@ private function onBreakBlock(BlockBreakEvent $event) : void{ if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $event->getBlock()->getPosition()->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $selection->setPos1($event->getBlock()->getPosition()); break; } @@ -241,9 +238,6 @@ private function onRightClickBlock(PlayerInteractEvent $event) : void{ if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $event->getBlock()->getPosition()->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $selection->setPos2($event->getBlock()->getPosition()); break; } @@ -321,9 +315,6 @@ private function onLeftClickBlock(PlayerInteractEvent $event) : void{ if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $event->getBlock()->getPosition()->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $selection->setPos1($event->getBlock()->getPosition()); break; } diff --git a/src/xenialdan/MagicWE2/commands/selection/ChunkCommand.php b/src/xenialdan/MagicWE2/commands/selection/ChunkCommand.php index fde77b7..bd42788 100644 --- a/src/xenialdan/MagicWE2/commands/selection/ChunkCommand.php +++ b/src/xenialdan/MagicWE2/commands/selection/ChunkCommand.php @@ -56,9 +56,6 @@ public function onRun(CommandSender $sender, string $aliasUsed, array $args): vo if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $sender->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $chunk = $sender->getWorld()->getOrLoadChunkAtPosition($sender->getPosition()); if(is_null($chunk)){ throw new Error("Could not find a chunk at your position"); diff --git a/src/xenialdan/MagicWE2/commands/selection/HPos1Command.php b/src/xenialdan/MagicWE2/commands/selection/HPos1Command.php index 5b54c42..d3faa61 100644 --- a/src/xenialdan/MagicWE2/commands/selection/HPos1Command.php +++ b/src/xenialdan/MagicWE2/commands/selection/HPos1Command.php @@ -16,7 +16,6 @@ use xenialdan\MagicWE2\Loader; use xenialdan\MagicWE2\selection\Selection; use xenialdan\MagicWE2\session\UserSession; -use function is_null; class HPos1Command extends BaseCommand{ @@ -53,9 +52,6 @@ public function onRun(CommandSender $sender, string $aliasUsed, array $args): vo if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $sender->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $target = $sender->getTargetBlock(Loader::getInstance()->getToolDistance()); if($target === null){ $sender->sendMessage(Loader::PREFIX . TF::RED . $lang->translateString('error.notarget')); diff --git a/src/xenialdan/MagicWE2/commands/selection/HPos2Command.php b/src/xenialdan/MagicWE2/commands/selection/HPos2Command.php index ae34c9f..9a243c7 100644 --- a/src/xenialdan/MagicWE2/commands/selection/HPos2Command.php +++ b/src/xenialdan/MagicWE2/commands/selection/HPos2Command.php @@ -16,7 +16,6 @@ use xenialdan\MagicWE2\Loader; use xenialdan\MagicWE2\selection\Selection; use xenialdan\MagicWE2\session\UserSession; -use function is_null; class HPos2Command extends BaseCommand{ @@ -53,9 +52,6 @@ public function onRun(CommandSender $sender, string $aliasUsed, array $args): vo if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $sender->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $target = $sender->getTargetBlock(Loader::getInstance()->getToolDistance()); if($target === null){ $sender->sendMessage(Loader::PREFIX . TF::RED . $lang->translateString('error.notarget')); diff --git a/src/xenialdan/MagicWE2/commands/selection/Pos1Command.php b/src/xenialdan/MagicWE2/commands/selection/Pos1Command.php index 2a144c5..926c0f0 100644 --- a/src/xenialdan/MagicWE2/commands/selection/Pos1Command.php +++ b/src/xenialdan/MagicWE2/commands/selection/Pos1Command.php @@ -16,7 +16,6 @@ use xenialdan\MagicWE2\Loader; use xenialdan\MagicWE2\selection\Selection; use xenialdan\MagicWE2\session\UserSession; -use function is_null; class Pos1Command extends BaseCommand{ @@ -53,9 +52,6 @@ public function onRun(CommandSender $sender, string $aliasUsed, array $args): vo if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $sender->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $selection->setPos1($sender->getPosition()); } catch (Exception $error) { Loader::getInstance()->getLogger()->logException($error); diff --git a/src/xenialdan/MagicWE2/commands/selection/Pos2Command.php b/src/xenialdan/MagicWE2/commands/selection/Pos2Command.php index 3866160..de70047 100644 --- a/src/xenialdan/MagicWE2/commands/selection/Pos2Command.php +++ b/src/xenialdan/MagicWE2/commands/selection/Pos2Command.php @@ -16,7 +16,6 @@ use xenialdan\MagicWE2\Loader; use xenialdan\MagicWE2\selection\Selection; use xenialdan\MagicWE2\session\UserSession; -use function is_null; class Pos2Command extends BaseCommand{ @@ -53,9 +52,6 @@ public function onRun(CommandSender $sender, string $aliasUsed, array $args): vo if(($selection = $session->getLatestSelection()) === null){ $session->addSelection(($selection = new Selection($session->getUUID(), $sender->getWorld()))); // TODO check if the selection inside of the session updates } - if(is_null($selection)){ - throw new Error("No selection created - Check the console for errors"); - } $selection->setPos2($sender->getPosition()); } catch (Exception $error) { Loader::getInstance()->getLogger()->logException($error); diff --git a/src/xenialdan/MagicWE2/commands/tool/DebugCommand.php b/src/xenialdan/MagicWE2/commands/tool/DebugCommand.php index 21beb52..30723cf 100644 --- a/src/xenialdan/MagicWE2/commands/tool/DebugCommand.php +++ b/src/xenialdan/MagicWE2/commands/tool/DebugCommand.php @@ -16,43 +16,41 @@ use xenialdan\MagicWE2\Loader; use xenialdan\MagicWE2\tool\Debug; -class DebugCommand extends BaseCommand -{ +class DebugCommand extends BaseCommand{ /** * This is where all the arguments, permissions, sub-commands, etc would be registered * @throws InvalidArgumentException */ - protected function prepare(): void - { + protected function prepare() : void{ $this->setPermission("we.command.tool.debug"); } /** * @inheritDoc */ - public function onRun(CommandSender $sender, string $aliasUsed, array $args): void - { + public function onRun(CommandSender $sender, string $aliasUsed, array $args) : void{ $lang = Loader::getInstance()->getLanguage(); - if ($sender instanceof Player && SessionHelper::hasSession($sender)) { - try { + if($sender instanceof Player && SessionHelper::hasSession($sender)){ + try{ $lang = SessionHelper::getUserSession($sender)->getLanguage(); - } catch (SessionException) { + }catch(SessionException){ } } - if (!$sender instanceof Player) { + if(!$sender instanceof Player){ $sender->sendMessage(TF::RED . $lang->translateString('error.runingame')); return; } /** @var Player $sender */ - try { + try{ + $session = SessionHelper::getUserSession($sender); $item = ($session->debug ?? (new Debug()))->toItem($lang); $sender->getInventory()->addItem($item); - } catch (Exception $error) { + }catch(Exception $error){ $sender->sendMessage(Loader::PREFIX . TF::RED . $lang->translateString('error.command-error')); $sender->sendMessage(Loader::PREFIX . TF::RED . $error->getMessage()); $sender->sendMessage($this->getUsage()); - } catch (Error $error) { + }catch(Error $error){ Loader::getInstance()->getLogger()->logException($error); $sender->sendMessage(Loader::PREFIX . TF::RED . $error->getMessage()); } diff --git a/src/xenialdan/MagicWE2/helper/ArrayUtils.php b/src/xenialdan/MagicWE2/helper/ArrayUtils.php index e195cd4..92035cb 100644 --- a/src/xenialdan/MagicWE2/helper/ArrayUtils.php +++ b/src/xenialdan/MagicWE2/helper/ArrayUtils.php @@ -9,7 +9,7 @@ class ArrayUtils{ - public static function advanceWrap(&$array) : array{ + public static function advanceWrap(array &$array) : array{ $result = [key($array), current($array)]; if(!self::hasNext($array)){ reset($array); @@ -19,7 +19,7 @@ public static function advanceWrap(&$array) : array{ return $result; } - public static function regressWrap(&$array) : array{ + public static function regressWrap(array &$array) : array{ $return = [key($array), current($array)]; if(!self::hasPrev($array)){ end($array); @@ -37,7 +37,7 @@ public static function hasPrev(array $array) : bool{ return prev($array) !== false || key($array) !== null; } - public static function setPointerToValue(array &$array, $value) : void{ + public static function setPointerToValue(array &$array, mixed $value) : void{ reset($array); #var_dump($array,current($array),$value); while(current($array) !== $value && self::hasNext($array)) next($array); diff --git a/src/xenialdan/MagicWE2/selection/Selection.php b/src/xenialdan/MagicWE2/selection/Selection.php index 856e76c..d91d40a 100644 --- a/src/xenialdan/MagicWE2/selection/Selection.php +++ b/src/xenialdan/MagicWE2/selection/Selection.php @@ -200,7 +200,7 @@ public function setShape(Shape $shape) : void{ // $manager = $this->getIterator()->getManager(); // if($manager instanceof AsyncWorld) $manager->copyChunks($this); }catch(RuntimeException | SelectionException $e){ - Loader::getInstance()->getLogger()->debug($e); + Loader::getInstance()->getLogger()->debug($e->getMessage()); } } @@ -220,7 +220,7 @@ public function isValid() : bool{ $this->getPos1(); $this->getPos2(); }catch(Exception $e){ - Loader::getInstance()->getLogger()->debug($e); + Loader::getInstance()->getLogger()->debug($e->getMessage()); return false; } return true; diff --git a/src/xenialdan/MagicWE2/session/data/Asset.php b/src/xenialdan/MagicWE2/session/data/Asset.php index 6e3c330..3a20edc 100644 --- a/src/xenialdan/MagicWE2/session/data/Asset.php +++ b/src/xenialdan/MagicWE2/session/data/Asset.php @@ -66,8 +66,8 @@ public function __construct(string $filename, Schematic|SingleClipboard|MCStruct public function getSize(): Vector3 { - if ($this->structure instanceof Schematic) return new Vector3($this->structure->getWidth(), $this->structure->getHeight(), $this->structure->getLength()); - if ($this->structure instanceof MCStructure) return $this->structure->getSize(); + if($this->structure instanceof Schematic) return new Vector3($this->structure->getWidth(), $this->structure->getHeight(), $this->structure->getLength()); + if($this->structure instanceof MCStructure) return new Vector3($this->structure->getSize()->getX(), $this->structure->getSize()->getY(), $this->structure->getSize()->getZ()); else return new Vector3($this->structure->selection->getSizeX(), $this->structure->selection->getSizeY(), $this->structure->selection->getSizeZ()); //throw new Exception("Unknown structure type"); } @@ -81,8 +81,8 @@ public function getTotalCount(): int public function getOrigin(): Vector3 { - if ($this->structure instanceof Schematic) return new Vector3(0, 0, 0); - if ($this->structure instanceof MCStructure) return $this->structure->getStructureWorldOrigin(); + if($this->structure instanceof Schematic) return new Vector3(0, 0, 0); + if($this->structure instanceof MCStructure) return new Vector3($this->structure->getStructureWorldOrigin()->getX(), $this->structure->getStructureWorldOrigin()->getY(), $this->structure->getStructureWorldOrigin()->getZ()); else return $this->structure->position; //throw new Exception("Unknown structure type"); } diff --git a/src/xenialdan/MagicWE2/task/AsyncRevertTask.php b/src/xenialdan/MagicWE2/task/AsyncRevertTask.php index cc746c5..5793bb4 100644 --- a/src/xenialdan/MagicWE2/task/AsyncRevertTask.php +++ b/src/xenialdan/MagicWE2/task/AsyncRevertTask.php @@ -92,7 +92,7 @@ private function undoChunks(AsyncWorld &$manager, RevertClipboard $clipboard) : //$block is "data" array foreach($clipboard->blocksAfter as $block){ $block = self::singleDataToBlock($block);//turn data into real block - $original = $manager->getBlockAt($block->getPosition()->x, $block->getPosition()->y, $block->getPosition()->z); + $original = $manager->getBlockAt($block->getPosition()->getFloorX(), $block->getPosition()->getFloorY(), $block->getPosition()->getFloorZ()); yield self::singleBlockToData($original, $block->getPosition()); $manager->setBlockAt($block->getPosition()->getFloorX(), $block->getPosition()->getFloorY(), $block->getPosition()->getFloorZ(), $block); $changed++; @@ -115,7 +115,7 @@ private function redoChunks(AsyncWorld &$manager, RevertClipboard $clipboard) : //$block is "data" array foreach($clipboard->blocksAfter as $block){ $block = self::singleDataToBlock($block);//turn data into real block - $original = $manager->getBlockAt($block->getPosition()->x, $block->getPosition()->y, $block->getPosition()->z); + $original = $manager->getBlockAt($block->getPosition()->getFloorX(), $block->getPosition()->getFloorY(), $block->getPosition()->getFloorZ()); yield self::singleBlockToData($original, $block->getPosition()); $manager->setBlockAt($block->getPosition()->getFloorX(), $block->getPosition()->getFloorY(), $block->getPosition()->getFloorZ(), $block); $changed++; diff --git a/src/xenialdan/MagicWE2/tool/Debug.php b/src/xenialdan/MagicWE2/tool/Debug.php index 3c5a2ae..a7c2bd3 100644 --- a/src/xenialdan/MagicWE2/tool/Debug.php +++ b/src/xenialdan/MagicWE2/tool/Debug.php @@ -96,7 +96,7 @@ public function toItem(Language $lang) : Item{ public function getCurrentState(string $blockIdentifier) : ?string{ if(array_key_exists($blockIdentifier, $this->states)){ - return key($this->states[$blockIdentifier]); + return (string) ($this->states[$blockIdentifier]); } return null; } @@ -117,7 +117,7 @@ public function getName() : string{ * @throws InvalidArgumentException * @throws AssumptionFailedError */ - public function useSecondary(UserSession $session, Block $block){ + public function useSecondary(UserSession $session, Block $block) : void{ //cycle values /** @var BlockStatesParser $blockStatesParser */ $blockStatesParser = BlockStatesParser::getInstance(); @@ -155,7 +155,7 @@ public function useSecondary(UserSession $session, Block $block){ } } - public function usePrimary(UserSession $session, Block $block){ + public function usePrimary(UserSession $session, Block $block) : void{ //cycle states /** @var BlockStatesParser $blockStatesParser */ $blockStatesParser = BlockStatesParser::getInstance();