我正在创造一些魔法咒语,显然我希望每次使用之间有一个延迟。
现在根据谷歌,一秒钟有 1000000000 纳秒。
然而,魔法咒语在不到两秒后就开始充电。
@EventHandler
public void onInteract(PlayerInteractEvent e){
Player p = e.getPlayer();
if (p.getItemInHand().getType().equals(Material.BLAZE_ROD)){
{
{
if (!kam.containsKey(p.getName())) kam.put(p.getName(), (long) 0);
if (kam.get(p.getName()) < System.nanoTime()){
kam.remove(p.getName());
kam.put(p.getName(), System.nanoTime() + (1000000000 * 30));
//Do magic spell attack here.
}
}
}else{
p.sendMessage(ChatColor.AQUA + "Skill recharging!");
}
}
显然,我的代码试图添加System.nanoTime()
加 30 秒,然后检查当前系统nanoTime
是否大于我放入 hashmap 的系统,如果是,则执行拼写。