예제 #1
0
 @EventHandler
 public void onGamemodeChange(PlayerGameModeChangeEvent e) {
   if (e.getNewGameMode().equals(GameMode.ADVENTURE)) {
     Player p = e.getPlayer();
     p.setAllowFlight(true);
     p.setFlying(false);
   }
 }
예제 #2
0
 @EventHandler(priority = EventPriority.MONITOR)
 public void onGamemode(PlayerGameModeChangeEvent e) {
   if (!plugin.getConfig().getBoolean("Complete")) return;
   Player p = e.getPlayer();
   if (plugin.spieler == p) {
     if (e.getNewGameMode() == GameMode.CREATIVE) {
       e.setCancelled(true);
     }
   }
 }
예제 #3
0
	@EventHandler(priority = EventPriority.HIGH)
	public void onGamemodeChange(PlayerGameModeChangeEvent e) {
		SpleefPlayer player = HeavySpleef.getInstance().getSpleefPlayer(e.getPlayer());

		if (!player.isActive()) {
			return;
		}

		if (e.getNewGameMode() == GameMode.SURVIVAL) {
			return;
		}

		player.sendMessage(I18N._("cantChangeGamemode"));
		e.setCancelled(true);
	}
예제 #4
0
  @Override
  public void setGameMode(GameMode mode) {
    if (getHandle().playerNetServerHandler == null) return;
    if (mode == null) {
      throw new IllegalArgumentException("Mode cannot be null");
    }

    if (mode != getGameMode()) {
      PlayerGameModeChangeEvent event = new PlayerGameModeChangeEvent(this, mode);
      server.getPluginManager().callEvent(event);
      if (event.isCancelled()) {
        return;
      }

      getHandle().theItemInWorldManager.setGameType(EnumGameType.getByID(mode.getValue()));
      getHandle()
          .playerNetServerHandler
          .sendPacketToPlayer(new Packet70GameEvent(3, mode.getValue()));
    }
  }
예제 #5
0
  @Override
  public void setGameMode(GameMode mode) {
    if (getHandle().field_71135_a == null) return;

    if (mode == null) {
      throw new IllegalArgumentException("Mode cannot be null");
    }

    if (mode != getGameMode()) {
      PlayerGameModeChangeEvent event = new PlayerGameModeChangeEvent(this, mode);
      server.getPluginManager().callEvent(event);
      if (event.isCancelled()) {
        return;
      }

      getHandle()
          .field_71134_c
          .func_73076_a(net.minecraft.world.EnumGameType.func_77146_a(mode.getValue()));
      getHandle()
          .field_71135_a
          .func_72567_b(new net.minecraft.network.packet.Packet70GameEvent(3, mode.getValue()));
    }
  }
예제 #6
0
 @EventHandler(priority = EventPriority.HIGH)
 void onGamemodeChange(PlayerGameModeChangeEvent event) {
   if (teamUtil.getPlayerTeam(event.getPlayer()).equalsIgnoreCase("spectator")) {
     event.getPlayer().setAllowFlight(true);
   }
 }