package zmaster587.advancedRocketry.api; import cpw.mods.fml.common.eventhandler.Cancelable; import net.minecraft.entity.Entity; import net.minecraft.world.World; import net.minecraftforge.event.entity.EntityEvent; /** * Events related to rockets here * */ public class RocketEvent extends EntityEvent { public final World world; public RocketEvent(Entity entity) { super(entity); world = entity.worldObj; } /** * Fired when the rocket is launched on the Minecraft Forge EVENT_BUS */ public static class RocketLaunchEvent extends RocketEvent { public RocketLaunchEvent(Entity entity) { super(entity); } } /** * Fired when the rocket is launched on the Minecraft Forge EVENT_BUS * Cancelling the event aborts the launch */ @Cancelable public static class RocketPreLaunchEvent extends RocketEvent { public RocketPreLaunchEvent(Entity entity) { super(entity); } } /** * Fired before the rocket is finished teleporting to the destination world on the Minecraft Forge EVENT_BUS */ public static class RocketDeOrbitingEvent extends RocketEvent { public RocketDeOrbitingEvent(Entity entity) { super(entity); } } /** * Fired when the rocket touches the ground on the Minecraft Forge EVENT_BUS */ public static class RocketLandedEvent extends RocketEvent { public RocketLandedEvent(Entity entity) { super(entity); } } /** * Fired when the rocket is about to be teleported to its destination on the Minecraft Forge EVENT_BUS */ public static class RocketReachesOrbitEvent extends RocketEvent { public RocketReachesOrbitEvent(Entity entity) { super(entity); } } }