package cz.jzitnik.game.entities;

import cz.jzitnik.game.Game;
import cz.jzitnik.game.GameSaver;
import cz.jzitnik.game.core.sound.Sound;
import cz.jzitnik.game.handlers.events.EventHandlerProvider;
import cz.jzitnik.game.handlers.pickup.PickupHandlerProvider;
import cz.jzitnik.game.handlers.place.PlaceHandler;
import cz.jzitnik.game.handlers.tooluse.ToolUseProvider;
import cz.jzitnik.game.mobs.EntityHurtAnimation;
import cz.jzitnik.game.mobs.EntityKill;
import cz.jzitnik.game.smelting.Smelting;
import cz.jzitnik.game.sprites.ui.Font;
import cz.jzitnik.game.ui.DeathScreen;
import cz.jzitnik.game.ui.Escape;
import cz.jzitnik.game.ui.Options;

public class Dependencies {
    public PlaceHandler placeHandler = new PlaceHandler();
    public EntityHurtAnimation entityHurtAnimation = new EntityHurtAnimation();
    public EntityKill entityKill = new EntityKill();
    public PickupHandlerProvider pickupHandlerProvider = new PickupHandlerProvider();
    public GameSaver gameSaver = new GameSaver();
    public EventHandlerProvider eventHandlerProvider = new EventHandlerProvider();
    public Smelting smelting = new Smelting();
    public ToolUseProvider toolUseProvider = new ToolUseProvider();
    public Sound sound = new Sound();
    public Font font = new Font();
    public Escape escape;
    public Options options;
    public DeathScreen deathScreen = new DeathScreen();

    public Dependencies(Game game) {
        escape = new Escape(game);
        options = new Options(game);
    }
}
