/** * Plugin is enabled by PocketMine server */ public function onEnable() { self::$instance = $this; PluginUtils::logOnConsole(TextFormat::GREEN . "[1vs1] - Init OneVsOne plugin"); // Get arena positions from arenas.yml @mkdir($this->getDataFolder()); $this->arenaConfig = new Config($this->getDataFolder() . "config.yml", Config::YAML, array()); $this->arenaManager = new ArenaManager(); $this->arenaManager->init($this->arenaConfig); // Register events $this->getServer()->getPluginManager()->registerEvents(new EventsManager($this->arenaManager), $this); // Register commands $joinCommand = new JoinCommand($this, $this->arenaManager); $this->getServer()->getCommandMap()->register($joinCommand->commandName, $joinCommand); $referenceArenaCommand = new ReferenceArenaCommand($this, $this->arenaManager); $this->getServer()->getCommandMap()->register($referenceArenaCommand->commandName, $referenceArenaCommand); }
/** * Add player into the queue */ public function addNewPlayerToQueue(Player $newPlayer) { // Check that player is not already in the queue if (in_array($newPlayer, $this->queue)) { PluginUtils::sendDefaultMessage($newPlayer, OneVsOne::getMessage("queue_alreadyinqueue")); return; } // Check that player is not currently in an arena $currentArena = $this->getPlayerArena($newPlayer); if ($currentArena != null) { PluginUtils::sendDefaultMessage($newPlayer, OneVsOne::getMessage("arena_alreadyinarena")); return; } // add player to queue array_push($this->queue, $newPlayer); // display some stats PluginUtils::logOnConsole("[1vs1] - There is actually " . count($this->queue) . " players in the queue"); PluginUtils::sendDefaultMessage($newPlayer, OneVsOne::getMessage("queue_join")); PluginUtils::sendDefaultMessage($newPlayer, OneVsOne::getMessage("queue_playersinqueue") . count($this->queue)); $newPlayer->sendTip(OneVsOne::getMessage("queue_popup")); $this->launchNewRounds(); $this->refreshSigns(); }