public void init() throws Exception {
        try {

            aryaImage = Image.createImage("/arya_mini.png");
            bimaImage = Image.createImage("/bima_mini.png");
            cintaImage = Image.createImage("/cinta_mini.png");
            backgroundImage = Image.createImage("/map.jpg");
            winImage = Image.createImage("/Sukses.png");
            loseImage = Image.createImage("/Gagal.png");

            heroes = new Hero[3];
            heroes[0] = new Hero(aryaImage, 37, 45, 0, Hero.ARYA);
            heroes[1] = new Hero(bimaImage, 37, 45, 0, Hero.BIMA);
            heroes[2] = new Hero(cintaImage, 41, 45, 0, Hero.CINTA);
            background = new ChocoSprite(backgroundImage);

            background.setPosition(0, 0);
            keyDownStates = new boolean[4];
            
            //profile
            profile = (MainProfile)engine.getProfile();

            //hud
            berlin = new CustomFont("/font/berlinSansFB12White");
            gothic = new CustomFont("/font/gothic10White");
            hud = new HUD(berlin, gothic, profile.getMoney());

            world = new World(this, heroes, hud);
            gameState = PLAY_STATE;
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }