インベントリと防具をすべて/clearで消せるプラグインを探してるんですがなかったので自分でやってみたところ使い方:/clearと出てしまい、相談していろいろ試行錯誤してもだめだったので作成お願いします!!
これphpなのでキャストは不要ですCommandSenderをプレイヤーにキャストかな
<?php
namespace test\command;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\Listener;
use pocketmine\Plugin\PluginBase;
class main extends PluginBase implements Listener{
public function onEnable(){
$this->getLogger()->info("PluginLoaded!");
}
public function onCommand(CommandSender $player, Command $command, string $label, array $args) : bool{
$lowerCommand = strtolower($command->getName());// コマンドを小文字に変換
var_dump($lowerCommand);
switch($lowerCommand){
case "clear":
$player->getInventory()->clearAll();
$player->sendMessage('アイテムがすべて削除されました');
return true;// returnで処理が終わるのでbreakは不要
default:// 何もコマンドを入力しなかった場合
return false;
}
}
}
できましたこれphpなのでキャストは不要です
書き直してみたのでこれでやってみてください
閉じ括弧がひとつ多かったですねPHP:<?php namespace test\command; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\event\Listener; use pocketmine\Plugin\PluginBase; class main extends PluginBase implements Listener{ public function onEnable(){ $this->getLogger()->info("PluginLoaded!"); } public function onCommand(CommandSender $player, Command $command, string $label, array $args) : bool{ $lowerCommand = strtolower($command->getName());// コマンドを小文字に変換 var_dump($lowerCommand); switch($lowerCommand){ case "clear": $player->getInventory()->clearAll(); $player->sendMessage('アイテムがすべて削除されました'); return true;// returnで処理が終わるのでbreakは不要 default:// 何もコマンドを入力しなかった場合 return false; } } }