001/*
002 * This file is part of Baritone.
003 *
004 * Baritone is free software: you can redistribute it and/or modify
005 * it under the terms of the GNU Lesser General Public License as published by
006 * the Free Software Foundation, either version 3 of the License, or
007 * (at your option) any later version.
008 *
009 * Baritone is distributed in the hope that it will be useful,
010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
012 * GNU Lesser General Public License for more details.
013 *
014 * You should have received a copy of the GNU Lesser General Public License
015 * along with Baritone.  If not, see <https://www.gnu.org/licenses/>.
016 */
017
018package baritone.api.event.events;
019
020import baritone.api.event.events.type.EventState;
021import net.minecraft.client.multiplayer.WorldClient;
022
023/**
024 * @author Brady
025 * @since 8/4/2018
026 */
027public final class WorldEvent {
028
029    /**
030     * The new world that is being loaded. {@code null} if being unloaded.
031     */
032    private final WorldClient world;
033
034    /**
035     * The state of the event
036     */
037    private final EventState state;
038
039    public WorldEvent(WorldClient world, EventState state) {
040        this.world = world;
041        this.state = state;
042    }
043
044    /**
045     * @return The new world that is being loaded. {@code null} if being unloaded.
046     */
047    public final WorldClient getWorld() {
048        return this.world;
049    }
050
051    /**
052     * @return The state of the event
053     */
054    public final EventState getState() {
055        return this.state;
056    }
057}