[LiteCore] ManyWorlds на минималках

Существует такой плагин, который позволяет создавать миры и телепортироваться в них с помощью команд. Однока такой плагин сложно найти, и за чего я решил сделать что-то похожее…

Информация

Данный плагин даст вам базовые возможности оригинального плагина


Подробная информация

Плагин даст вам возможность создавать миры и телепортироваться по ним

Пример


Мир test был создан с помощью данного плагина


Команды

Команда → /qw [тип мира]
(помино normal, void и flat можно создать мир с генерацией который имеется у вас в ядре

Разрешение → qw.use


Скачать

ZIPQqWorlds.zip
PHARQqWorlds.phar

Исходный кодQqWorlds | Talk 24serv

1 лайк

дальше он сгорел вместе с квартирой

Беш бармак не сгорел (пошёл жрать) :slight_smile:

пачиму?:sob:

1 лайк

я уже хотел сказать “гкод”

Ну и так гкод

я не знаю, там доступ к пк ограничен а скачивать не хочу

Шкила

<?php

namespace getLevel;



//	VK ➡ @qq_tynaev
//	GitHub ➡ QqTYNAAEV



use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use pocketmine\utils\Config;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\level\Level;
use pocketmine\level\generator\Generator;
use pocketmine\Player;

class Worlds extends PluginBase implements Listener{
	
	
	
	public function onEnable(){
		$this->getServer()->getPluginManager()->registerEvents($this, $this);
		$this->getLogger()->notice("
		    §8========================================
		    §bПлагин взят с форума §atalk.24serv.pro
		    §bАвтор плагина §aqq_BCEM
		    §8========================================");
	}
	
	
	public function onCommand(CommandSender $s, Command $cmd, $label, array $args){
		if($cmd->getName() == "qw"){
			if(count($args) == 0){
				$s->sendMessage("§7[§l§bQ§aW§r§7] §r§lИспользование: /qw [create ; teleport]");
			}else{
		        switch($args[0]){
					case "create":
					case "c":
					case "generate":
					case "g":
						if(count($args) <= 1){
							$s->sendMessage("§7[§l§bQ§aW§r§7] §r§lИспользование: /qw create [название] [normal ; void ; flat]");
						}else{
							$name = strtolower($args[1]);
							if($this->getServer()->isLevelGenerated($name)){
								$s->sendMessage("§7[§l§bQ§aW§r§7] §r§lМир уже существует");
							}else{
							    if(count($args) == 2){
							        $name = strtolower($args[1]);
							    }
							    if(count($args) >= 3){
						        	$name = strtolower($args[1]);
						        	$type = Generator::getGenerator($args[2]);
							        if(strtolower($args[2]) == Generator::getGeneratorName($type)){ //Не спрашивайте что я тут сделал, но безэтогоо плоский мир отказывался генерироваться
							            $this->getServer()->generateLevel($name, null, $type);
							            $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lМир создан");
							        }else{
							            $this->getServer()->generateLevel($name);
							            $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lМир создан");
							        }
							    }else{
							        $this->getServer()->generateLevel($name);
							        $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lМир создан");
							    }
							}
						}
					break;
					
					case "teleport":
					case "tp":
					case "t":
					    if($s instanceof Player){
					        if(count($args) <= 1){
						    	$s->sendMessage("§7[§l§bQ§aW§r§7] §r§lИспользование: /qw tp [мир]");
					        }else{
					            $name = strtolower($args[1]);
					            if($this->getServer()->isLevelGenerated($name)){
					                $this->getServer()->loadLevel($name);
					                $s->teleport($this->getServer()->getLevelByName($name)->getSafeSpawn());
					                $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lУспешная телепортация");
					            }else{
					                $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lМир не найден");
					            }
					        }
					    }else{
					        $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lКонсоль вырубай");
					    }
					break;
					
					case "list":
					case "l":
					    $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lСписок миров");
					    foreach($this->getServer()->getLevels() as $levels){
                            $s->sendMessage("§d- §f§l".$levels->getName());
					    }
					break;
					
					default: $s->sendMessage("§7[§l§bQ§aW§r§7] §r§lНеизвестная команда");
				}
			}
		}
	}
}

Нахуя?

Эти строки остались когда код был ещё хуже того что ты сейчас видишь

Убрать?

Понятия create и generate совершенно разные. А у тебя они все создают новый мир

Если речь идёт о мирах, понятие create и generate для меня значут Одно и тоже

А так ты прав

???

Круто же :)

Фу, видимо не умеешь даже регистрироваться классы для команд

фпп наше все

По подробнее пожалуйста

pocketmine\command\defaults