@SubscribeEvent
public void noMobs(final LivingSpawnEvent.CheckSpawn event) {
if (event.getResult() == Event.Result.DEFAULT && event.world.provider.dimensionId == ExtraUtils.underdarkDimID && event.entity instanceof EntityMob) {
if (EventHandlerUnderdark.rand.nextDouble() < Math.min(0.95, event.entity.posY / 80.0)) {
event.setResult(Event.Result.DENY);
}
else {
IAttributeInstance t = ((EntityMob)event.entity).getEntityAttribute(SharedMonsterAttributes.maxHealth);
t.setBaseValue(t.getBaseValue() * 2.0);
((EntityMob)event.entity).heal((float)t.getAttributeValue());
t = ((EntityMob)event.entity).getEntityAttribute(SharedMonsterAttributes.attackDamage);
t.setBaseValue(t.getBaseValue() * 2.0);
if (!EventHandlerServer.isInRangeOfTorch(event.entity) && event.entityLiving.worldObj.checkNoEntityCollision(event.entityLiving.boundingBox) && event.entityLiving.worldObj.getCollidingBoundingBoxes((Entity)event.entityLiving, event.entityLiving.boundingBox).isEmpty() && !event.entityLiving.worldObj.isAnyLiquid(event.entityLiving.boundingBox)) {
event.setResult(Event.Result.ALLOW);
}
}
}
}
java类cpw.mods.fml.common.eventhandler.SubscribeEvent的实例源码
EventHandlerUnderdark.java 文件源码
项目:ExtraUtilities
阅读 24
收藏 0
点赞 0
评论 0
TransmitterNetworkRegistry.java 文件源码
项目:4Space-5
阅读 22
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onChunkLoad(ChunkEvent.Load event)
{
if(event.getChunk() != null && !event.world.isRemote)
{
int x = event.getChunk().xPosition;
int z = event.getChunk().zPosition;
IChunkProvider cProvider = event.getChunk().worldObj.getChunkProvider();
Chunk[] neighbors = new Chunk[5];
neighbors[0] = event.getChunk();
if(cProvider.chunkExists(x + 1, z)) neighbors[1] = cProvider.provideChunk(x + 1, z);
if(cProvider.chunkExists(x - 1, z)) neighbors[2] = cProvider.provideChunk(x - 1, z);
if(cProvider.chunkExists(x, z + 1)) neighbors[3] = cProvider.provideChunk(x, z + 1);
if(cProvider.chunkExists(x, z - 1)) neighbors[4] = cProvider.provideChunk(x, z - 1);
for(Chunk c : neighbors)
{
refreshChunk(c);
}
}
}
EventHandlerGC.java 文件源码
项目:4Space-5
阅读 24
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onZombieSummonAid(SummonAidEvent event)
{
if (event.entity instanceof EntityEvolvedZombie)
{
event.customSummonedAid = new EntityEvolvedZombie(event.world);
if (((EntityLivingBase) event.entity).getRNG().nextFloat() < ((EntityEvolvedZombie) event.entity).getEntityAttribute(((EntityEvolvedZombie) event.entity).getReinforcementsAttribute()).getAttributeValue())
{
event.setResult(Result.ALLOW);
}
else
{
event.setResult(Result.DENY);
}
}
}
MarsModuleClient.java 文件源码
项目:4Space-5
阅读 26
收藏 0
点赞 0
评论 0
@SideOnly(Side.CLIENT)
@SubscribeEvent
public void onClientTick(ClientTickEvent event)
{
final Minecraft minecraft = FMLClientHandler.instance().getClient();
final WorldClient world = minecraft.theWorld;
if (world != null)
{
if (world.provider instanceof WorldProviderMars)
{
if (world.provider.getSkyRenderer() == null)
{
world.provider.setSkyRenderer(new SkyProviderMars((IGalacticraftWorldProvider) world.provider));
}
if (world.provider.getCloudRenderer() == null)
{
world.provider.setCloudRenderer(new CloudRenderer());
}
}
}
}
EventHandlerMars.java 文件源码
项目:4Space-5
阅读 20
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onPlanetDecorated(GCCoreEventPopulate.Post event)
{
if (this.eggGenerator == null)
{
this.eggGenerator = new WorldGenEggs(MarsBlocks.rock);
}
if (event.worldObj.provider instanceof WorldProviderMars)
{
int eggsPerChunk = 2;
int x;
int y;
int z;
for (int eggCount = 0; eggCount < eggsPerChunk; ++eggCount)
{
x = event.chunkX + event.rand.nextInt(16) + 8;
y = event.rand.nextInt(128);
z = event.chunkZ + event.rand.nextInt(16) + 8;
this.eggGenerator.generate(event.worldObj, event.rand, x, y, z);
}
}
}
ConnectionEvents.java 文件源码
项目:4Space-5
阅读 27
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onConnectionReceived(ServerConnectionFromClientEvent event)
{
if (ConfigManagerCore.enableDebug)
{
Integer[] idList = (Integer[]) WorldUtil.getPlanetList().get(0);
String ids = "";
for (int j = 0; j < idList.length; j++)
{
ids+=idList[j].toString()+" ";
}
GCLog.info("Galacticraft server sending dimension IDs to connecting client: "+ ids);
}
event.manager.scheduleOutboundPacket(ConnectionPacket.createDimPacket(WorldUtil.getPlanetListInts()));
event.manager.scheduleOutboundPacket(ConnectionPacket.createSSPacket(WorldUtil.getSpaceStationListInts()));
event.manager.scheduleOutboundPacket(ConnectionPacket.createConfigPacket(ConfigManagerCore.getServerConfigOverride()));
}
EventHandler.java 文件源码
项目:RFUtilities
阅读 22
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void entityEvent(LivingEvent.LivingUpdateEvent event)
{
if (event.entity instanceof EntityPlayer)
{
if (((EntityPlayer) event.entity).getCurrentEquippedItem() != null)
{
canItemShowTess =
(RFUtilities.TE_LOADED && (((EntityPlayer) event.entity).getCurrentEquippedItem().getItem() instanceof ItemToolBase ||
((EntityPlayer) event.entity).getCurrentEquippedItem().getItem() instanceof ItemMultimeter)) ||
((EntityPlayer) event.entity).getCurrentEquippedItem().getItem() instanceof ItemDialer;
}
else
{
canItemShowTess = false;
}
}
}
MEventHandler.java 文件源码
项目:PAYDAY
阅读 33
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onPlayerCloned(PlayerEvent.Clone e) {
NBTTagCompound nbt = new NBTTagCompound();
PlayerData.get(e.original).saveReviveRelevantNBTData(nbt, e.wasDeath);
PlayerData.get(e.entityPlayer).loadNBTData(nbt);
}
MEventHandler.java 文件源码
项目:PAYDAY
阅读 31
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onBlockBreak(BlockEvent.BreakEvent evt) {
/*
if (evt.block instanceof LobbyBlock) {
// RESETS DATA AND CANCELS EVENT
LobbyTileEntity t = (LobbyTileEntity) evt.world.getTileEntity(evt.x, evt.y, evt.z);
if (t != null) {
PlayerData data;
for (EntityPlayer p : UUIDUtil.getPlayersFromProfileUUIDs(evt.world, t.players)) {
data = PlayerData.get(p);
data.setReady(false);
data.setInLobby(false);
if (evt.world.isRemote)
data.sendToServer();
t.removePlayer(p);
//PAYDAY.INSTANCE.sendToServer(new LobbyPlayerActionPacket(evt.x, evt.y, evt.z, true));
}
}
//evt.setCanceled(true);
}*/
}
FMLEventHandler.java 文件源码
项目:nei-lotr
阅读 21
收藏 0
点赞 0
评论 0
@SubscribeEvent
public void onPlayerLoggedIn(PlayerLoggedInEvent event) {
if (mod.getConfig().isUseVersionChecker() && mod.getVersionChecker().isNewVersionAvaible()) {
if (mod.getVersionChecker().getNewestVersion() != null) {
event.player.addChatComponentMessage(mod.getVersionChecker().getNewestVersion().getFormattedChatText());
}
}
}