类org.bukkit.event.weather.WeatherChangeEvent源码实例Demo

下面列出了怎么用org.bukkit.event.weather.WeatherChangeEvent的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Skript   文件: EvtWeatherChange.java
@SuppressWarnings("null")
@Override
public boolean check(final Event e) {
	if (types == null)
		return true;
	if (!(e instanceof WeatherChangeEvent || e instanceof ThunderChangeEvent))
		return false;
	final boolean rain = e instanceof WeatherChangeEvent ? ((WeatherChangeEvent) e).toWeatherState() : ((ThunderChangeEvent) e).getWorld().hasStorm();
	final boolean thunder = e instanceof ThunderChangeEvent ? ((ThunderChangeEvent) e).toThunderState() : ((WeatherChangeEvent) e).getWorld().isThundering();
	return types.check(e, new Checker<WeatherType>() {
		@Override
		public boolean check(final WeatherType t) {
			return t.isWeather(rain, thunder);
		}
	});
}
 
源代码2 项目: Thermos   文件: CraftWorld.java
public void setStorm(boolean hasStorm) {
    CraftServer server = world.getServer();

    WeatherChangeEvent weather = new WeatherChangeEvent(this, hasStorm);
    server.getPluginManager().callEvent(weather);
    if (!weather.isCancelled()) {
        world.worldInfo.setRaining(hasStorm);

        // These numbers are from Minecraft
        if (hasStorm) {
            setWeatherDuration(rand.nextInt(12000) + 12000);
        } else {
            setWeatherDuration(rand.nextInt(168000) + 12000);
        }
    }
}
 
源代码3 项目: BedwarsRel   文件: WeatherListener.java
@EventHandler
public void onWeatherEvent(WeatherChangeEvent we) {
  if (we.isCancelled()) {
    return;
  }

  List<Game> games = BedwarsRel.getInstance().getGameManager().getGamesByWorld(we.getWorld());

  if (games.size() == 0) {
    return;
  }

  for (Game game : games) {
    if (game.getState() != GameState.STOPPED) {
      we.setCancelled(true);
      break;
    }
  }
}
 
源代码4 项目: RedProtect   文件: GlobalListener.java
@EventHandler(ignoreCancelled = true, priority = EventPriority.NORMAL)
public void onWeatherChange(WeatherChangeEvent e) {
    RedProtect.get().logger.debug(LogLevel.DEFAULT, "GlobalListener - Is onChangeWeather event");

    World w = e.getWorld();
    if (!RedProtect.get().config.globalFlagsRoot().worlds.get(w.getName()).weather.allow_weather) {
        int attempts = RedProtect.get().config.globalFlagsRoot().worlds.get(w.getName()).weather.attempts_before_rain;
        if (e.toWeatherState()) {
            if (!rainCounter.containsKey(w)) {
                rainCounter.put(w, attempts);
                e.setCancelled(true);
            } else {
                int acTry = rainCounter.get(w);
                if (acTry - 1 <= 0) {
                    Bukkit.getScheduler().runTaskLater(RedProtect.get(), () -> w.setWeatherDuration(RedProtect.get().config.globalFlagsRoot().worlds.get(w.getName()).weather.rain_time * 20), 40);
                    rainCounter.put(w, attempts);
                } else {
                    rainCounter.put(w, acTry - 1);
                    e.setCancelled(true);
                }
            }
        }
    }
}
 
源代码5 项目: DungeonsXL   文件: DWorldListener.java
@EventHandler
public void onWeatherChange(WeatherChangeEvent event) {
    InstanceWorld instance = plugin.getInstanceWorld(event.getWorld());
    if (instance instanceof EditWorld && event.toWeatherState()) {
        event.setCancelled(true);
    } else if (instance instanceof GameWorld) {
        Boolean raining = ((GameWorld) instance).getDungeon().getRules().getState(GameRule.RAIN);
        if (raining == null) {
            return;
        }
        if ((raining && !event.toWeatherState()) || (!raining && event.toWeatherState())) {
            event.setCancelled(true);
        }
    }
}
 
源代码6 项目: HubBasics   文件: NoWeather.java
@EventHandler
public void onWeather(WeatherChangeEvent event) {
    WeatherType type = this.worldStates.get(event.getWorld().getName());
    if (type == null) return;
    if (type == WeatherType.CLEAR && event.toWeatherState()) {
        event.setCancelled(true);
    } else if (type == WeatherType.DOWNFALL && !event.toWeatherState()) {
        event.setCancelled(true);
    }
}
 
源代码7 项目: askyblock   文件: AcidEffect.java
/**
 * Tracks weather changes and acid rain
 *
 * @param e - event
 */
@EventHandler(priority = EventPriority.NORMAL)
public void onWeatherChange(final WeatherChangeEvent e) {
    if (DEBUG)
        plugin.getLogger().info("DEBUG: " + e.getEventName());

    // Check that they are in the ASkyBlock world
    // plugin.getLogger().info("weather change noted");
    if (!e.getWorld().getName().equalsIgnoreCase(Settings.worldName)) {
        return;
    }
    this.isRaining = e.toWeatherState();
    // plugin.getLogger().info("is raining = " + isRaining);
}
 
源代码8 项目: PGM   文件: EventFilterMatchModule.java
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void onWeatherChange(final WeatherChangeEvent event) {
  cancelAlways(event, event.getWorld());
}
 
源代码9 项目: ProjectAres   文件: EventFilterMatchModule.java
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void onWeatherChange(final WeatherChangeEvent event) {
    cancelAlways(event, event.getWorld());
}
 
源代码10 项目: ProjectAres   文件: EnvironmentControlListener.java
@EventHandler
public void noWeather(final WeatherChangeEvent event) {
    event.setCancelled(true);
}
 
源代码11 项目: VoxelGamesLibv2   文件: NoWeatherChangeFeature.java
@EventHandler
public void onWeatherChange(WeatherChangeEvent e) {
    if (e.getWorld().getName().equals(world.getName())) {
        e.setCancelled(true);
    }
}
 
源代码12 项目: Skript   文件: ExprWeather.java
@SuppressWarnings("unchecked")
@Override
public boolean setTime(final int time) {
	return super.setTime(time, getExpr(), WeatherChangeEvent.class, ThunderChangeEvent.class);
}
 
源代码13 项目: ZombieEscape   文件: ServerListener.java
@EventHandler
public void onWeather(WeatherChangeEvent event) {
    event.setCancelled(true);
}
 
源代码14 项目: CardinalPGM   文件: WorldFreeze.java
@EventHandler
public void onWeatherChange(WeatherChangeEvent event) {
    event.setCancelled(true);
}
 
源代码15 项目: KTP   文件: UHPluginListener.java
@EventHandler
public void onWeatherChange(WeatherChangeEvent ev) {
	if (!p.getConfig().getBoolean("weather")) {
		ev.setCancelled(true);
	}
}
 
 类所在包
 类方法
 同包方法