Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace MPCore;
- use pocketmine\Server;
- use pocketmine\command\Command;
- use pocketmine\command\CommandExecutor;
- use pocketmine\command\CommandSender;
- use pocketmine\event\player\PlayerCommandPreprocessEvent;
- use pocketmine\event\player\PlayerDropItemEvent;
- use pocketmine\event\player\PlayerInteractEvent;
- use pocketmine\event\player\PlayerItemConsumeEvent;
- use pocketmine\event\player\PlayerJoinEvent;
- use pocketmine\event\player\PlayerMoveEvent;
- use pocketmine\event\player\PlayerPreLoginEvent;
- use pocketmine\event\player\PlayerQuitEvent;
- use pocketmine\event\player\PlayerRespawnEvent;
- use pocketmine\event\entity\EntityDamageEvent;
- use pocketmine\event\Listener;
- use pocketmine\event\block\BlockBreakEvent;
- use pocketmine\event\block\BlockPlaceEvent;
- use pocketmine\Player;
- use pocketmine\IPlayer;
- use pocketmine\utils\TextFormat;
- use pocketmine\plugin\PluginBase;
- use pocketmine\utils\Config;
- use pocketmine\math\Vector3;
- use pocketmine\level\Position;
- use pocketmine\block\Air;
- use pocketmine\block\Block;
- class Main extends PluginBase implements Listener {
- public function onEnable() {
- $this->authTrue = array();
- $this->frozen = array();
- $this->saveDefaultConfig();
- $this->reloadConfig();
- $this->getServer()->getPluginManager()->registerEvents($this, $this);
- $this->getLogger()->info( TextFormat::GREEN . "##########################################" );
- $this->getLogger()->info( TextFormat::GREEN . "# MinePocket Core - Enabled! #" );
- $this->getLogger()->info( TextFormat::GREEN . "# By Autonomousperson #" );
- $this->getLogger()->info( TextFormat::GREEN . "##########################################" );
- }
- public function onPlayerCommand(PlayerCommandPreprocessEvent $event){
- $player = $event->getPlayer();
- $message = $event->getMessage();
- $cmdArr = explode(" ",$message);
- if(!in_array($event->getPlayer(), $this->authTrue)){
- if($cmdArr[0] === "/login"){
- $player->sendMessage(TextFormat::GREEN ."[MP] Please wait...");
- }else{
- $player->sendMessage(TextFormat::YELLOW ."[MP] Please /login before performing actions");
- $event->setCancelled(true);
- }
- }
- }
- public function onCommand(CommandSender $sender, Command $command, $label, array $args) {
- if($sender instanceof Player) {
- $player = $sender->getPlayer()->getName();
- $auth = $this->getConfig()->get($player);
- if(strtolower($command->getName('login'))) {
- if(empty($args)) {
- $sender->sendMessage(TextFormat::RED ."[MP] /login <PASS>");
- return true;
- }
- if (!empty($args)) {
- $pw = $args[0];
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, 'http://minepocket.com/api.php?action=authenticate&hash=j5d1fze2dc0f236gd7rb4eb0031qe239&username='.$player.'&password='.$pw.'');
- curl_setopt($ch, CURLOPT_HEADER, false);
- curl_setopt($ch, CURLOPT_NOBODY, false); // remove body
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
- $head = curl_exec($ch);
- $obj = json_decode($head);
- $hash = $obj->{'hash'};
- $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
- curl_close($ch);
- if (!isset($hash)) {
- $sender->sendMessage(TextFormat::RED ."[MP] Login failed. Try again.");
- $sender->sendMessage(TextFormat::GOLD ."[MP] Make sure your IGN matches your fourms name and password!");
- $this->getLogger()->info( TextFormat::RED . "[MPDEBUG] Fail" );
- }else{
- array_push($this->authTrue, $sender);
- $sender->sendMessage(TextFormat::GREEN ."[MP] You are now logged in!");
- $sender->sendMessage(TextFormat::AQUA ."[MP] Welcome back ".$player."!");
- $this->getLogger()->info( TextFormat::GREEN . "[MPDEBUG] Winner" );
- }
- /**
- if ($args[1] == "on") {
- if (empty($args[2])) {
- $sender->hidePlayer($sender);
- $sender->sendMessage(TextFormat::GREEN ."[MP] You should (hopefully) be vanished!");
- return true;
- }
- $sender->hidePlayer($args[2]);
- $sender->sendMessage(TextFormat::GREEN ."[MP] $args[2] should (hopefully) be vanished!");
- return true;
- }
- **/
- }
- else {
- $sender->sendMessage(TextFormat::YELLOW ."[MP] LulWut? Try /co help");
- return true;
- }
- }
- }else{
- if(strtolower($command->getName('mp'))) {
- if(empty($args)) {
- $sender->sendMessage("> Use /mp help");
- return true;
- }
- /**
- if ($args[0] == "on") {
- $sender->sendMessage("This command must be performed in game!");
- array_push($this->isinspecting, $sender);
- return true;
- }
- if ($args[0] == "off") {
- $sender->sendMessage("This command must be performed in game!");
- return true;
- }
- if(empty($args)) {
- $sender->sendMessage(TextFormat::RED ."[MP] Run /co help");
- return true;
- }
- else {
- $sender->sendMessage(TextFormat::YELLOW ."[MP] LulWut? Try /co help");
- return true;
- }
- **/
- }
- }
- }
- public function onPlayerJoin(PlayerJoinEvent $event){
- $player = $event->getPlayer();
- $name = $player->getName();
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, 'http://minepocket.com/api.php?action=getUser&hash=j5d1fze2dc0f236gd7rb4eb0031qe239&value='.$name.'');
- curl_setopt($ch, CURLOPT_HEADER, false);
- curl_setopt($ch, CURLOPT_NOBODY, false); // remove body
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
- $head = curl_exec($ch);
- $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
- $obj = json_decode($head);
- $user_id = $obj->{'user_id'};
- curl_close($ch);
- if(sameIP($player)){
- $player->sendMessage(TextFormat::GREEN ."IPMATCH");
- } else {
- $player->sendMessage(TextFormat::RED ."IPFAIL");
- }
- if (!isset($user_id)) {
- $player->sendMessage(TextFormat::RED ."=======================================");
- $player->sendMessage(TextFormat::AQUA ." Welcome to minepocket servers ");
- $player->sendMessage(TextFormat::AQUA ." We don't recognise your IGN ");
- $player->sendMessage(TextFormat::AQUA ." Register it at minepocket.com ");
- $player->sendMessage(TextFormat::RED ."=======================================");
- } else {
- $player->sendMessage(TextFormat::GREEN ."=======================================");
- $player->sendMessage(TextFormat::AQUA ." Welcome back to minepocket servers ");
- $player->sendMessage(TextFormat::AQUA ." Please use /login PASSWORD to auth ");
- $player->sendMessage(TextFormat::GREEN ."=======================================");
- }
- }
- public function sameIP(Player $player) {
- $player->sendMessage(TextFormat::GREEN ."TRIG");
- $name = $player->getName();
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, 'http://http://minepocket.com/mpAPI.php?key=fSVulJ8LDZnopF4vYbjm&action=ip&user='.$name.'');
- curl_setopt($ch, CURLOPT_HEADER, false);
- curl_setopt($ch, CURLOPT_NOBODY, false); // remove body
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
- $head = curl_exec($ch);
- $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
- $player->sendMessage(TextFormat::GREEN .$head);
- $player->sendMessage(TextFormat::GREEN .$player->getAddress());
- if($head != NULL) {
- if ($player->getAddress() == $head) {
- return true;
- }
- return false;
- } else {
- return false;
- }
- }
- public function onPlayereMove(PlayerMoveEvent $ev) {
- $player = $ev->getPlayer();
- $name = $player->getName();
- if (!in_array($ev->getPlayer(), $this->authTrue)) {
- $ev->setCancelled(true);
- return true;
- }
- }
- public function onPlayerInteract(PlayerInteractEvent $ev) {
- $player = $ev->getPlayer();
- $name = $player->getName();
- if (!in_array($ev->getPlayer(), $this->authTrue)) {
- $ev->setCancelled(true);
- return true;
- }
- }
- public function onBreak(BlockBreakEvent $ev) {
- $player = $ev->getPlayer();
- $name = $player->getName();
- if (!in_array($ev->getPlayer(), $this->authTrue)) {
- $ev->setCancelled(true);
- return true;
- }
- }
- public function onPlace(BlockPlaceEvent $ev) {
- $player = $ev->getPlayer();
- $name = $player->getName();
- if (!in_array($ev->getPlayer(), $this->authTrue)) {
- $ev->setCancelled(true);
- return true;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement