mirror of
https://github.com/MinecraftForge/MinecraftForge.git
synced 2026-11-13 16:54:22 +00:00
Merge pull request #2336 from VikeStep/master
[1.8.9] Add EntityTravelToDimensionEvent
This commit is contained in:
commit
7a0a801740
6 files changed
+97
-4
No files matched your search
@@ -26,6 +26,7 @@ import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.item.EntityItem;
|
||||
import net.minecraft.entity.item.EntityMinecartContainer;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.event.ClickEvent;
|
||||
@@ -73,6 +74,7 @@ import net.minecraftforge.common.util.BlockSnapshot;
|
||||
import net.minecraftforge.event.AnvilUpdateEvent;
|
||||
import net.minecraftforge.event.ForgeEventFactory;
|
||||
import net.minecraftforge.event.ServerChatEvent;
|
||||
import net.minecraftforge.event.entity.EntityTravelToDimensionEvent;
|
||||
import net.minecraftforge.event.entity.item.ItemTossEvent;
|
||||
import net.minecraftforge.event.entity.living.LivingAttackEvent;
|
||||
import net.minecraftforge.event.entity.living.LivingDeathEvent;
|
||||
@@ -906,4 +908,19 @@ public class ForgeHooks
|
||||
if (stack != null && stack.getItem().onLeftClickEntity(stack, player, target)) return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean onTravelToDimension(Entity entity, int dimension)
|
||||
{
|
||||
EntityTravelToDimensionEvent event = new EntityTravelToDimensionEvent(entity, dimension);
|
||||
MinecraftForge.EVENT_BUS.post(event);
|
||||
if (event.isCanceled())
|
||||
{
|
||||
// Revert variable back to true as it would have been set to false
|
||||
if (entity instanceof EntityMinecartContainer)
|
||||
{
|
||||
((EntityMinecartContainer) entity).dropContentsWhenDead = true;
|
||||
}
|
||||
}
|
||||
return !event.isCanceled();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package net.minecraftforge.event.entity;
|
||||
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||
import net.minecraftforge.fml.common.eventhandler.Event.HasResult;
|
||||
|
||||
/**
|
||||
* EntityTravelToDimensionEvent is fired before an Entity travels to a dimension.<br>
|
||||
* <br>
|
||||
* {@link #dimension} contains the id of the dimension the entity is traveling to.<br>
|
||||
* <br>
|
||||
* This event is {@link Cancelable}.<br>
|
||||
* If this event is canceled, the Entity does not travel to the dimension.<br>
|
||||
* <br>
|
||||
* This event does not have a result. {@link HasResult}<br>
|
||||
* <br>
|
||||
* This event is fired on the {@link MinecraftForge#EVENT_BUS}.<br>
|
||||
**/
|
||||
@Cancelable
|
||||
public class EntityTravelToDimensionEvent extends EntityEvent
|
||||
{
|
||||
public final int dimension;
|
||||
|
||||
public EntityTravelToDimensionEvent(Entity entity, int dimension)
|
||||
{
|
||||
super(entity);
|
||||
this.dimension = dimension;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user