// Path: core/src/com/kowaisugoi/game/control/flags/FlagId.java
// public enum FlagId {
//     FLAG_BODY_FOUND,
//     FLAG_CAR_FOUND,
//     FLAG_CAR_SNOWREMOVED,
//     FLAG_SHED_OPENED,
//     FLAG_NIGHT_TIME,
//     FLAG_BOARDS_REMOVED,
//     FLAG_TORCH_PLACED,
//     FLAG_ENTERED_BATHROOM,
//     FLAG_KEYS_MISSING,
//     FLAG_KEYS_APPEARED,
//     FLAG_KEYS_FOUND,
//     FLAG_HALLWAY_SCARE,
//     FLAG_HALLWAY_SCARE_OVER
// }
// 
// Path: core/src/com/kowaisugoi/game/interactables/Interactable.java
// public interface Interactable {
//     // TODO: In a perfect world, the interaction box should probably be private.
//     public Rectangle getInteractionBox();
// 
//     public void draw(SpriteBatch batch);
// 
//     public void draw(ShapeRenderer renderer);
// 
//     public boolean click(float curX, float curY);
// 
//     public void beautifyCursor(float curX, float curY);
// 
//     public void update(float delta);
// 
//     public void registerListener(InteractionListener listener);
// 
//     public void setSoundEffect(SoundId soundId);
// 
//     public boolean isItemInteractable();
// 
//     public boolean itemInteract(ItemId id);
// 
//     public String getItemInteractionMessage(ItemId id);
// 
//     public void setItemInteractionMessage(ItemId id, String message);
// 
//     public boolean checkInteraction(float curX, float curY);
// }
// 
// Path: core/src/com/kowaisugoi/game/rooms/RoomId.java
// public enum RoomId {
//     MAIN_HALL,
//     HALLWAY,
//     FRONT_DOOR_INTERIOR,
//     BEDROOM,
//     BATHROOM,
//     BATHROOM_CABINET,
//     BACKYARD,
//     CRAWLSPACE,
//     FRONTYARD,
//     KITCHEN,
//     SHED,
//     SHED_INTERIOR,
//     SHRINE,
//     ROAD,
//     PARKING_AREA,
//     CAR
// }


import com.badlogic.gdx.graphics.g2d.Sprite;
import com.kowaisugoi.game.control.flags.FlagId;
import com.kowaisugoi.game.interactables.Interactable;
import com.kowaisugoi.game.rooms.RoomId;
package com.kowaisugoi.game.interactables.passages;


public interface Passage extends Interactable {
    public RoomId getDestination();

    public void roomTransition();

    public void transitionComplete();

    public void setTransitionImage(Sprite sprite);

// Path: core/src/com/kowaisugoi/game/control/flags/FlagId.java
// public enum FlagId {
//     FLAG_BODY_FOUND,
//     FLAG_CAR_FOUND,
//     FLAG_CAR_SNOWREMOVED,
//     FLAG_SHED_OPENED,
//     FLAG_NIGHT_TIME,
//     FLAG_BOARDS_REMOVED,
//     FLAG_TORCH_PLACED,
//     FLAG_ENTERED_BATHROOM,
//     FLAG_KEYS_MISSING,
//     FLAG_KEYS_APPEARED,
//     FLAG_KEYS_FOUND,
//     FLAG_HALLWAY_SCARE,
//     FLAG_HALLWAY_SCARE_OVER
// }
// 
// Path: core/src/com/kowaisugoi/game/interactables/Interactable.java
// public interface Interactable {
//     // TODO: In a perfect world, the interaction box should probably be private.
//     public Rectangle getInteractionBox();
// 
//     public void draw(SpriteBatch batch);
// 
//     public void draw(ShapeRenderer renderer);
// 
//     public boolean click(float curX, float curY);
// 
//     public void beautifyCursor(float curX, float curY);
// 
//     public void update(float delta);
// 
//     public void registerListener(InteractionListener listener);
// 
//     public void setSoundEffect(SoundId soundId);
// 
//     public boolean isItemInteractable();
// 
//     public boolean itemInteract(ItemId id);
// 
//     public String getItemInteractionMessage(ItemId id);
// 
//     public void setItemInteractionMessage(ItemId id, String message);
// 
//     public boolean checkInteraction(float curX, float curY);
// }
// 
// Path: core/src/com/kowaisugoi/game/rooms/RoomId.java
// public enum RoomId {
//     MAIN_HALL,
//     HALLWAY,
//     FRONT_DOOR_INTERIOR,
//     BEDROOM,
//     BATHROOM,
//     BATHROOM_CABINET,
//     BACKYARD,
//     CRAWLSPACE,
//     FRONTYARD,
//     KITCHEN,
//     SHED,
//     SHED_INTERIOR,
//     SHRINE,
//     ROAD,
//     PARKING_AREA,
//     CAR
// }


// Path: core/src/com/kowaisugoi/game/interactables/passages/Passage.java
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.kowaisugoi.game.control.flags.FlagId;
import com.kowaisugoi.game.interactables.Interactable;
import com.kowaisugoi.game.rooms.RoomId;

package com.kowaisugoi.game.interactables.passages;


public interface Passage extends Interactable {
    public RoomId getDestination();

    public void roomTransition();

    public void transitionComplete();

    public void setTransitionImage(Sprite sprite);

    public void setTravelFlag(FlagId flag);