@SuppressWarnings("unchecked")
@SubscribeEvent(priority = EventPriority.HIGHEST)
public void onPlayerInteract(PlayerInteractEvent ev) {
if (ev.entityPlayer.worldObj.isRemote || ev.isCanceled()) {
return;
}
Resident res = MyTownUniverse.instance.getOrMakeResident(ev.entityPlayer);
if(ev.entityPlayer.getHeldItem() != null) {
ProtectionManager.checkUsage(ev.entityPlayer.getHeldItem(), res, ev.action, createBlockPos(ev), ev.face, ev);
}
if (!ev.isCanceled()) {
ProtectionManager.checkBlockInteraction(res, new BlockPos(ev.x, ev.y, ev.z, ev.world.provider.dimensionId), ev.action, ev);
}
// Some things (Autonomous Activator) only care about these. So always deny them if the event is canceled.
if (ev.isCanceled()) {
ev.useBlock = Event.Result.DENY;
ev.useItem = Event.Result.DENY;
}
}
java类cpw.mods.fml.common.eventhandler.EventPriority的实例源码
ProtectionHandlers.java 文件源码
项目:MyTown2
阅读 34
收藏 0
点赞 0
评论 0
BlockMultipart.java 文件源码
项目:QmunityLib
阅读 21
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.HIGHEST)
@SideOnly(Side.CLIENT)
public void onDrawHighlight(DrawBlockHighlightEvent event) {
try {
if (!(event.player.worldObj.getBlock(event.target.blockX, event.target.blockY, event.target.blockZ) instanceof BlockMultipart))
return;
QMovingObjectPosition mop = retrace(event.player.worldObj, event.target.blockX, event.target.blockY, event.target.blockZ,
RayTracer.instance().getStartVector(event.player), RayTracer.instance().getEndVector(event.player));
if (mop == null)
return;
if (mop.getPart() == null || !(mop.getPart() instanceof IPartSelectableCustom))
return;
if (((IPartSelectableCustom) mop.getPart()).drawHighlight(mop, event.player, event.partialTicks))
event.setCanceled(true);
} catch (Exception ex) {
}
}
LivingDropsHandler.java 文件源码
项目:CustomThings
阅读 17
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.LOWEST)
public void onLivingDrop(LivingDropsEvent event)
{
if (event.entityLiving instanceof EntityCreeper)
{
boolean foundRecord = false;
Iterator<EntityItem> iter = event.drops.iterator();
while (iter.hasNext())
{
EntityItem e = iter.next();
if (e.getEntityItem().getItem() instanceof ItemRecord)
{
foundRecord = true;
}
}
if (foundRecord)
{
addRandomRecordToDrops(event.drops);
}
}
}
ChangeVanillaDrops.java 文件源码
项目:projectzulu1.7.10
阅读 16
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority=EventPriority.NORMAL, receiveCanceled=true)
public void onEvent(LivingDropsEvent event)
{
if (event.entity instanceof EntitySheep)
{
// DEBUG
Optional<?> itemBlock = ItemList.muttonRaw;
if (itemBlock.isPresent()) {
ItemStack itemStackToDrop = new ItemStack((Item)itemBlock.get());
event.drops.add(new EntityItem(event.entity.worldObj, event.entity.posX,
event.entity.posY, event.entity.posZ, itemStackToDrop));
}
}
}
ForgeInternalHandler.java 文件源码
项目:TRHS_Club_Mod_2016
阅读 22
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.HIGHEST)
public void onDimensionUnload(WorldEvent.Unload event)
{
ForgeChunkManager.unloadWorld(event.world);
if (event.world instanceof WorldServer)
FakePlayerFactory.unloadWorld((WorldServer)event.world);
}
NoteblockPlaceHandler.java 文件源码
项目:NoteblockTweak
阅读 24
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.HIGH)
public void rightClick(PlayerInteractEvent event){
if(event.entityPlayer.getHeldItem() != null && event.entityPlayer.getHeldItem().getItem() instanceof ItemNoteblockFork){
if(Minecraft.getMinecraft().theWorld.getBlock(event.x, event.y, event.z) instanceof BlockNote){
if(!event.entityPlayer.isSneaking()){
event.setCanceled(true);
TileEntityNote entity = (TileEntityNote) Minecraft.getMinecraft().theWorld.getTileEntity(event.x, event.y, event.z);
Minecraft.getMinecraft().displayGuiScreen(new GuiSet(entity, Minecraft.getMinecraft().currentScreen));
}
}
}
}
KeyManager.java 文件源码
项目:Age-of-Kingdom
阅读 24
收藏 0
点赞 0
评论 0
@SideOnly(Side.CLIENT)
@SubscribeEvent(priority= EventPriority.NORMAL, receiveCanceled=true)
public void onEvent(InputEvent.KeyInputEvent event) {
Minecraft mc = Minecraft.getMinecraft();
World world = mc.theWorld;
EntityPlayer player = mc.thePlayer;
if(keys[0].isPressed()) {
NetworkManager.sendToServer(new GuiAokMessage());
}
if(mc.gameSettings.keyBindChat.isPressed()) {
player.closeScreen();
player.openGui(AgeOfKingdom.INSTANCE, AgeOfKingdom.serverProxy.GUI_CHAT, world, (int) player.posX, (int) player.posY, (int) player.posZ);
}
}
RivalRebelsRenderOverlay.java 文件源码
项目:Rival-Rebels-Mod
阅读 22
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.NORMAL)
public void eventHandler(RenderGameOverlayEvent event)
{
if (rhodes != null)
{
renderRhodes(event, Minecraft.getMinecraft().thePlayer, rhodes);
}
renderItems(event);
}
TweakCraftEventHandler.java 文件源码
项目:TweakCraft
阅读 17
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.HIGHEST)
public void handleServerChat(ServerChatEvent evt) {
if (!TweakCraft.config.allowChatFormatting) {
return;
}
final String message = evt.component.getFormattedText();
evt.component = new ChatComponentTranslation(message.replaceAll("\\\\&", ChatFormatCode.SYMBOL));
}
MobSpawnListener.java 文件源码
项目:WorldBorder-Forge
阅读 21
收藏 0
点赞 0
评论 0
@SubscribeEvent(priority = EventPriority.HIGHEST)
public void onCreatureSpawn(LivingSpawnEvent.CheckSpawn event)
{
if ( isInsideBorder(event) )
return;
// CheckSpawn uses event result instead of cancellation
event.setResult(LivingSpawnEvent.Result.DENY);
}