public function onCommand(CommandSender $sender, Command $command, $label, array $args) { switch ($command->getName()) { case "pvp": $name = $sender->getName(); echo 1; if (isset($this->joinedpvp[$name])) { echo 2; if ($this->joinedpvp[$name] == 1) { $sender->sendMessage(TextFormat::RED . "[WallPVP]あなたはすでにpvpに参加しています。"); break; } } if (time() - @$this->teamc[1][$name] <= 30 * 1) { echo "a2"; $this->team[1][$name] = 1; $teamname = "S"; $tcolor = TextFormat::LIGHT_PURPLE; $pos1 = new Position(73, 72, 132); //座標を指定 $sender->sendMessage(TextFormat::LIGHT_PURPLE . "[WallPVP]あなたは" . $teamname . "チームです。"); } elseif (time() - @$this->teamc[2][$name] <= 30 * 1) { echo "b1"; $this->team[2][$name] = 1; $teamname = "M"; $tcolor = TextFormat::AQUA; $pos1 = new Position(64, 76, 28); //座標を指定 $sender->sendMessage(TextFormat::AQUA . "[WallPVP]あなたは" . $teamname . "チームです。"); } else { echo 3; $this->joinedpvp[$name] = 1; if (count($this->team[1]) <= count($this->team[2])) { $this->team[1][$name] = 1; $teamname = "S"; $tcolor = TextFormat::LIGHT_PURPLE; $pos1 = new Position(73, 72, 132); //座標を指定 $sender->sendMessage(TextFormat::LIGHT_PURPLE . "[WallPVP]あなたは" . $teamname . "チームです。"); } else { $this->team[2][$name] = 1; $teamname = "M"; $tcolor = TextFormat::AQUA; $pos1 = new Position(64, 76, 28); //座標を指定 $sender->sendMessage(TextFormat::AQUA . "[WallPVP]あなたは" . $teamname . "チームです。"); } } if (isset($this->team[1][$name])) { $teamname = "[S]"; $tcolor = TextFormat::LIGHT_PURPLE; } elseif (isset($this->team[2][$name])) { $teamname = "[M]"; $tcolor = TextFormat::AQUA; } else { $teamname = null; $tcolor = null; } if ($sender->isOp()) { $op = "[OP]"; } else { $op = null; } $sender->setDisPlayName($tcolor . $op . $teamname . $name . "[" . $this->hapi->getkill($name) . "kill]"); $sender->setNameTag($tcolor . $op . $teamname . $name . "[" . $this->hapi->getkill($name) . "kill]"); $sender->teleport($pos1); $effect = Effect::getEffect(11); //Effect ID $effect->setVisible(true); //Particles $effect->setAmplifier(1000); $effect->setDuration(100); //Ticks $sender->addEffect($effect); break; case "rekit": $this->setKit($sender); break; case "ok": $cfg = $this->settings->getAll(); $name = $sender->getName(); if (isset($this->buy[$name])) { if (time() - $this->buy[$name]["time"] <= 20) { $amount = $cfg[$this->buy[$name]["id"]]; if ($this->hapi->getkit1($name) == $this->buy[$name]["id"]) { $sender->sendMessage(TextFormat::RED . "[WallPVP]購入済みです。"); } else { if ($this->hapi->useexp($name, $amount)) { $this->hapi->setkit1($name, $this->buy[$name]["id"]); $this->setKit($sender); $sender->sendMessage(TextFormat::RED . "[WallPVP]" . $amount . "EXPの" . $this->buy[$name]["id"] . "を購入しました。"); } else { $sender->sendMessage(TextFormat::RED . "[WallPVP]EXPが足りません。"); } } } } break; case "buy": $name = $sender->getName(); if (!isset($args[0])) { $sender->sendMessage("Usege: /buy '[effectID]'"); break; } if (!ctype_digit($args[0])) { $sender->sendMessage("Usege: /buy '[effectID]'"); break; } $cfg = $this->settings->getAll(); $ecost = $cfg[$args[0]]; $sender->sendMessage("ID " . $args[0] . ": 値段\$" . $ecost . "を買うのなら/ok"); if (isset($this->buy[$name])) { unset($this->buy[$name]); } $this->buy[$name]["time"] = time(); $this->buy[$name]["id"] = $args[0]; unset($cfg); unset($ecost); break; case "shop": $cfg = $this->settings->getAll(); if (!isset($args[0])) { $sender->sendMessage("Usege: /shop [effectID] [price]"); break; } if (!ctype_digit($args[0])) { $sender->sendMessage("Usege: /shop '[effectID]' [price]"); break; } if (!isset($args[1])) { $sender->sendMessage("Usege: /shop [effectID] '[price]'"); break; } if (!$this->settings->exists($args[1])) { $sender->sendMessage("EffectID is wrong."); break; } if (!ctype_digit($args[1])) { $sender->sendMessage("Usege: /shop [effectID] '[price]'"); break; } $this->settings->set($args[0], $args[1]); $this->settings->save(); $sender->sendMessage("You changed EffectID " . $args[0] . " 's price \$" . $args[1]); $this->settings->reload(); break; break; case "c": $name = $sender->getName(); $players = Server::getInstance()->getOnlinePlayers(); if (isset($this->team[1][$name])) { foreach ($players as $player) { if (isset($this->team[1][$player->getName()])) { $player->sendMessage(TextFormat::YELLOW . "[SチームC]" . $name . "|" . $args); } } } elseif (isset($this->team[2][$name])) { foreach ($players as $player) { if (isset($this->team[2][$player->getName()])) { $player->sendMessage(TextFormat::YELLOW . "[MチームC]" . $name . "|" . $args); } } } break; case "mi": $name = $sender->getName(); if (isset($this->team[1][$name])) { $teamname = "S"; } elseif (isset($this->team[2][$name])) { $teamname = "M"; } $name = $sender->getName(); $sender->sendMessage(TextFormat::RED . "//////" . $name . "さんの情報/////"); if (isset($teamname)) { $sender->sendMessage(TextFormat::RED . "[チーム] " . $teamname . "チーム"); } # $sender->sendMessage(TextFormat::RED ."[KIT] ".$this->hapi->getkit1($name)); $sender->sendMessage(TextFormat::RED . "[レベル] " . $this->getServer()->getPluginManager()->getPlugin("hapi")->getlevel($name)); $sender->sendMessage(TextFormat::RED . "[EXP] " . $this->getServer()->getPluginManager()->getPlugin("hapi")->getexp($name)); $sender->sendMessage(TextFormat::RED . "[キル数] " . $this->getServer()->getPluginManager()->getPlugin("hapi")->getkill($name) . "回"); $sender->sendMessage(TextFormat::RED . "[連続キル数] " . $this->getServer()->getPluginManager()->getPlugin("hapi")->getrenkill($name) . "回"); if ($this->getServer()->getPluginManager()->getPlugin("hapi")->getexp($name) != 0 and $this->getServer()->getPluginManager()->getPlugin("hapi")->getdes($name) != 0) { $sender->sendMessage(TextFormat::RED . "[キルレート] " . $this->getServer()->getPluginManager()->getPlugin("hapi")->getkill($name) / $this->getServer()->getPluginManager()->getPlugin("hapi")->getdes($name)); } $sender->sendMessage(TextFormat::RED . "/////////////////////////////"); break; case "stat": $sender->sendMessage(TextFormat::RED . "[WallPVP]各チームの人数です。"); $sender->sendMessage(TextFormat::RED . "[S]" . count($this->team[1]) . "人、[コア]" . $this->teamcore[1] . "HP"); $sender->sendMessage(TextFormat::RED . "[M]" . count($this->team[2]) . "人、[コア]" . $this->teamcore[2] . "HP"); } }