我正在尝试对Minecraft插件进行编码,使用一个命令可使所有产生电荷的爬虫爬行,而使用另一个命令则使它们均不带电荷。我已经编写了用于设置侦听器的代码(这样,我的意思是我从https://youtu.be/oHKcQ184aa8?t=22复制了Dream的代码),而我只想创建它,因此在以下代码中有一个布尔值代替true(最后一行) )'''
@EventHandler
public void creeperSpawn(CreatureSpawnEvent event) {
if (event.getEntityType() == EntityType.CREEPER) {
Creeper creeper = (Creeper) event.getEntity();
creeper.setPowered(true);
}
}
'''我想将true更改为名为PoweredOrNot的布尔型,然后在运行命令时将其设置为Powered或不设置为true。唯一的问题是它要么说未定义PoweredOrNot,要么当我添加扩展onCommand时,它给我错误“令牌“扩展”上的语法错误,引发预期错误”和另外两个错误,一个错误在上面的括号中显示“语法错误,请插入“}”以完成ClassBody”,而添加另一个错误就不起作用了。括号下面的另一个错误是“令牌“}”上的语法错误,请删除此令牌,这样可以消除错误。
我做了研究,并创建了另一个名为Globals的类,它具有或不具有布尔名称的能力,但是当我进行Globals.PoweredOrNot时,它会说它没有定义]]
这是您可以反编译的jar文件,因为有许多类和软件包可以使用。注意,我认为您可能必须下载spiggot的参考库,但如果jar中包含idk,则请下载idk。https://drive.google.com/file/d/18XWOHV13I2cB---xlG0socfRMOnnKfPv/view?usp=sharing
完整代码(用于startCommand类)
package me.Gwehyr.chargeall.commands;
import org.bukkit.entity.Creeper;
import org.bukkit.entity.EntityType;
import org.bukkit.event.EventHandler;
import org.bukkit.command.*;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.CreatureSpawnEvent;
import me.Gwehyr.chargeall.*;
public class StartCommand implements CommandExecutor, Listener {
private Main plugin;
public StartCommand(Main plugin) {
this.plugin = plugin;
plugin.getCommand("charge").setExecutor(this);
}
@Override
public boolean onCommand( CommandSender sender, Command cmd, String label, String[] args) {
if (sender instanceof Player) {
sender.sendMessage("Only Console may execute this command");
return true;
}else {
boolean PoweredOrNot = true;
sender.sendMessage("Creepers Charged!");
}
return true;
}
@EventHandler
public void creeperSpawn(CreatureSpawnEvent event) extends onCommand {
if (event.getEntityType() == EntityType.CREEPER) {
Creeper creeper = (Creeper) event.getEntity();
creeper.setPowered(PoweredOrNot);
}
}
我正在尝试对Minecraft插件进行编码,使用一个命令可使所有产生电荷的爬虫爬行,而使用另一个命令则使它们均不带电荷。我已经编写了用于设置侦听器的代码(并由此设置了...
之所以说尚未初始化,是因为它仅在onCommand函数内部初始化。因此,不要将布尔值放在此处(箭头所在的位置)]