这是我的插件代码.
public boolean reapSoul(Player player, Player tplayer, double damage)
{
if(player.hasPermission("myrace.wraith.reap"))
{
player.sendMessage(ChatColor.DARK_GRAY + "You have reaped " + tplayer.getName() + "'s soul.");
damage = player.getLevel()/10;
double heal = damage/2;
tplayer.damage(damage);
player.setHealth(player.getHealth() + heal);
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
我知道可能存在很多错误,我可以自己处理它们.我无法处理的那个是
player.setHealth(player.getHealth() + heal);
Run Code Online (Sandbox Code Playgroud)
Eclipse(我的IDE)告诉我getHealth()方法对于Player类型是不明确的.
我知道自从Bukkit 1.6.x发布以来,这可能是一个非常受欢迎的问题,但我所做的搜索都没有给我一个我能理解的解决方案.
如果这确实是解决方案,请你帮我理解我能做些什么......
谢谢.
在Lua 5.2.1中,我尝试使用生成随机数
num = math.random(9)
Run Code Online (Sandbox Code Playgroud)
但是,每次我运行我的程序时:
num = math.random(9)
print("The generated number is "..num..".")
Run Code Online (Sandbox Code Playgroud)
我得到相同的号码.
brendan@osiris:~$ lua number
The generated number is 8.
brendan@osiris:~$ lua number
The generated number is 8.
brendan@osiris:~$ lua number
The generated number is 8.
Run Code Online (Sandbox Code Playgroud)
这很令人沮丧,因为每当我尝试生成一个新数字并重新启动程序时,我都会得到相同的序列.
是否有不同的生成数字的方式?
另外,我已经调查过了
math.randomseed(os.time())
Run Code Online (Sandbox Code Playgroud)
但我真的不明白.如果这确实是解决方案,你可以解释它是如何工作的,它做了什么,以及我会得到多少数字?
谢谢,
所以当我的老师不在时,我得到了这个任务,基本上我必须做一个学生项目.学生有姓名,分数和平均分.为了计算平均值,我决定将标记存储在int[]数组中.
public void addQuiz(int m)
{
int l = (marks.length);
marks[l] = m;
}
int[] marks = new int[8];
Run Code Online (Sandbox Code Playgroud)
但是当我运行该功能时:
student.addQuiz(90);
Run Code Online (Sandbox Code Playgroud)
我明白了:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
Run Code Online (Sandbox Code Playgroud)
有帮助吗?
我不确定这int[8]部分是做什么的,但它在我遵循的教程中,它会给我一个null没有它的指针.总共有八个标记,所以我只做了8个.