Double Jump

Discussion in 'Plugin Development' started by Zinqay_, Apr 10, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    Zinqay_

    Hello, I am coding Double Jump for an OITC server. And I want a cooldown for when people can use the double jump, maybe every 3 seconds, how do i do this? Here is my current code:

    Code:
     @EventHandler
                public void onMove2(PlayerMoveEvent event)
                {
                  if ((event.getPlayer().getGameMode() != GameMode.CREATIVE) && (event.getPlayer().getLocation().getBlock().getRelative(BlockFace.DOWN).getType() != Material.AIR)) {
                    event.getPlayer().setAllowFlight(true);
                  }
                }
                
                @EventHandler
                public void onFly(PlayerToggleFlightEvent event)
                {
                  Player player = event.getPlayer();
                  if ((player.getGameMode() != GameMode.CREATIVE))
                  {
                    event.setCancelled(true);
                    player.setAllowFlight(false);
                    player.setFlying(false);
                    event.getPlayer().setVelocity(event.getPlayer().getVelocity().add(new Vector(0,0.40,0)));
                    Vector v = player.getLocation().getDirection().multiply(0.5).setY(0.5);
                    player.setVelocity(v);
                      player.getLocation().getWorld().playSound(player.getLocation(), Sound.BAT_TAKEOFF, 1.0F, -5.0F);
                    }
                      for (Player p : Bukkit.getOnlinePlayers()) {
                        try
                        {
                          ParticleEffects.CLOUD.sendToPlayer(p, player.getLocation(), 1.0F, 1.0F, 1.0F, 1.0F, 40);
                          player.setExp(0.0F);
                        }
                        catch (Exception e)
                        {
                          e.printStackTrace();
                        }
                      }
                    } 
    
    Thanks!
     
  2. Offline

    Miro

    maybe declare a boolean, set it to false, and use a bukkit scheduled event to put it to true again after required cooldown time, and make the double jump only be usable while the boolean is true.
     
  3. Offline

    Zinqay_

    Erm, i'm not too sure what you mean, could you sort of put that into code please? I'm a little confused, xD
     
Thread Status:
Not open for further replies.

Share This Page