import { getPrefab, addTo, addImage, getSlice3, addOmnipresentSound, getComplex, getMesh, getDummy, addInteractiveMediaAsset, getImage, } from './helpers';
export function reference(root) {
    const slice = getSlice3({ p: [5, -1, 5] });
    addTo(root, slice);
    const cube1 = getPrefab({ p: [0, 2, 0] });
    addImage(cube1, 'https://cdn.hibervr.com/demo/img/Mona.jpg');
    addTo(slice, cube1);
    const mesh = getMesh({
        id: 'en_b_cube_01',
        p: [8, -1, 5],
        physical: false,
        material: 'palette_01_white',
        s: [3, 5, 0.1],
        r: [0, 0, 45],
    });
    addTo(root, mesh);
    addOmnipresentSound(root, 'a_am_amusement_park_01', 1);
    addTo(root, getDummy({ p: [5, 5, 5.1], r: [90, 0, 0], avatar: 'hibertina_devil_smile', emot: 'an_default_emote_sit' }));
    addTo(root, getDummy({ p: [5, 5, 4.9], r: [270, 0, 0], avatar: 'hibertina_devil_smile', emot: 'an_default_emote_sit' }));
    /*
    const soundCenter = getGroup({ p: [5, 1, 0] });
    addSoundCell(soundCenter, 'a_mu_bass_meant_jazz_kevin_macleod_01', 1, 1);
    addTo(root, soundCenter);
    */
    const floor = getComplex({
        p: [20, 0.1, 10],
        dim: 5,
        height: 5,
        rooms: [
            { coords: [0, 0, 0], wallTypes: ['PLAIN', 'PLAIN', 'DOOR', 'WINDOW'] },
            { coords: [1, 0, 0], roomType: 'CONNECTED' },
            { coords: [1, 0, 1], roomType: 'OPEN' },
            { coords: [1, 0, 2], roomType: 'CONNECTED' },
            { coords: [2, 0, 2], roomType: 'WINDOWS' },
            { coords: [2, 0, 0], roomType: 'CONNECTED' },
        ],
    });
    addTo(root, floor);
    const img = getImage({ p: [10, 0, 10], src: 'https://cdn.hibervr.com/demo/img/Lunch.jpg', ratio: 1000 / 750 });
    addInteractiveMediaAsset(img, {
        header: 'The Son of Man',
        body: 'The Son of Man is a 1964 painting by the Belgian surrealist painter René Magritte.',
        url: 'https://hiberworld.com/',
    });
    addTo(root, img);
    const img2 = getImage({ p: [13, 0, 10], src: 'https://cdn.hibervr.com/demo/img/Lunch.jpg', ratio: 1000 / 750 });
    addInteractiveMediaAsset(img2, {
        header: 'The Son of Man',
        body: 'The Son of Man is a 1964 painting by the Belgian surrealist painter René Magritte.',
        url: 'https://hiberworld.com/',
    });
    addTo(root, img2);
    /*
    const imgage1 = getImage({ p: [0, 5, 5], src: 'https://cdn.hibervr.com/demo/img/Lunch.jpg', ratio: 1000 / 750 });
    addTo(root, imgage1);
  
    addTo(root, getLaser({ p: [29, 20, 0], s: [0.5, 0.5, 0.5], angle: 20, spinDuration: 16 }));
  
    let grp2 = getGroup({ p: [10, 3, 5], r: [45, 0, 0] });
  
    addTo(grp2, getPrefab({ id: 'ancient_urns_01' }));
    addTo(grp2, getPrefab({ id: 'ancient_urns_01', p: [0, 0, 1] }));
    addTo(root, grp2);
  
    const cube3 = getPrefab({ material: 'palette_01_white' });
    addTo(root, getRamped(cube3, { dim: 2, repeats: 7, p: [-25, -3.8, -2], r: [0, 0, 0] }));
  
    const room1 = getRoom({
      p: [0, 0.3, 5],
      wallTypes: ['DOOR', 'WINDOW', 'DOOR', 'WINDOW'],
      wallThickness: 0.7,
      doorWidth: 3,
      doorHeight: 5,
      windowHeight: 3,
      windowWidth: 6,
      height: 10,
      width: 10,
      depth: 10,
      wallMaterial: 'palette_02_teal',
    });
    addTo(root, room1);
  
    const hull = getPrefab({ material: 'palette_01_black', p: [-23, 3, -25], s: [1, 1, 3], r: [-90, 0, 0] });
    addTo(root, hull);
    let wing = getPrefab({ material: 'palette_02_red', p: [1, 1, 0], s: [1, 1, 1], id: 'wedge_45', r: [0, 0, -90] });
    addTo(hull, [wing, getMirrorX(wing)]);
  
    const hull1 = getPrefab({ material: 'palette_01_black', p: [-31, 2, -21], s: [1, 1, 3], r: [-90, 180, -0] });
    addTo(root, hull1);
    let wing1 = getPrefab({ material: 'palette_01_black', p: [1, 1, 0], s: [1, 1, 1], id: 'wedge_45', r: [0, 0, -90] });
    addTo(hull1, [wing1, getMirrorY(wing1)]);
  
    const hull2 = getPrefab({ material: 'palette_01_black', p: [-15, 3, -25], s: [1, 1, 3], r: [-90, 0, 0] });
    addTo(root, hull2);
    let wing2 = getPrefab({ material: 'palette_02_red', p: [1, 1, 0], s: [1, 1, 1], id: 'wedge_45', r: [0, 0, -90] });
    addTo(hull2, [wing2, getMirrorZ(wing2)]);
  
    //club
    const floor2 = getComplex({
      p: [25, 0, -10],
      dim: 5,
      height: 5,
      rooms: [
        { coords: [0, 0, 0], wallTypes: ['PLAIN', 'PLAIN', 'DOOR', 'NONE'] }, // Define wall types
        { coords: [1, 0, 0], roomType: 'CONNECTED' }, // Or randomize them using roomType
        { coords: [1, 0, 1], roomType: 'OPEN' },
        { coords: [1, 0, 2], roomType: 'CONNECTED' },
        { coords: [2, 0, 2], roomType: 'WINDOWS' },
        { coords: [2, 0, 0], roomType: 'CONNECTED' },
      ],
    });
    addTo(root, floor2);
  
    const cube = getPrefab({ id: 'sofa_01_t1', p: [39.5, 0, -5], r: [0, -90, 0], material: 'palette_02_silver' });
    const options: AudioOptions = { id: 'a_m_iconic_bullet_01', volume: 1 };
    addAudio(cube, options);
    addTo(root, cube);
  
    const cube2 = getPrefab({ id: 'sofa_01_t1', p: [30.5, 0, -1], r: [0, 90, 0], material: 'palette_02_silver' });
    addPointSound(cube2, 'a_m_iconic_bullet_01', 10);
    addTo(root, cube2);
  
    //stand1
    const tmp3 = getCircularTemple({ p: [35, 1, 14], r: [0, 90, 0], seed: 4, s: [0.1, 0.1, 0.1] });
    addTo(root, tmp3);
  
    const cube8 = getPrefab({ id: 'cube_01', material: 'palette_02_silver' });
    addTo(root, getSpinning(cube8, { p: [35, -1.1, 14], axis: 'y', r: [0, 20, 0] }));
  
    addTo(root, getSpotlight({ p: [35, 5, 14], color: [0, 0, 100], radius: 6, strength: 6 }));
  
    //stand2
    addTo(
      root,
      getBasic({
        objectMaterial: 'palette_02_silver',
        p: [39, -1.1, -1],
      })
    );
  
    const tmp = getCircularTemple({ p: [39, 1, -1], r: [0, 90, 0], seed: 8, s: [0.1, 0.1, 0.1] });
    addTo(root, tmp);
  
    addTo(root, getSpotlight({ p: [39, 6, -1], color: getRandomColor(4), size: 50, strength: 5 }));
    //stand3
    const tmp1 = getCircularTemple({ p: [31.5, 1, 3], r: [0, 90, 0], seed: 1, s: [0.1, 0.1, 0.1] });
    addTo(root, tmp1);
  
    addTo(root, getPointLight({ p: [31.5, 3, 3], radius: 6, color: [0, 0, 100], strength: 4 }));
    const cube4 = getPrefab({ id: 'cube_01', p: [31.5, -1.1, 3], material: 'palette_02_silver' });
    addTo(root, cube4);
  
    const cube5 = getClone(cube4, { p: [33.7, -1.1, -13.9] });
    addTo(root, cube5);
  
    const tmp2 = getCircularTemple({ p: [33.7, 1, -13.9], r: [0, 90, 0], seed: 3, s: [0.1, 0.1, 0.1] });
    addTo(root, tmp2);
  
    const sl = addSpotlight(getGroup({ p: [33.7, 4, -13.9] }), {
      radius: 6,
      color: '#0f83f7',
      strength: 20,
    });
    addTo(root, sl);
  
    addTo(
      root,
      getVideoPlayer({
        src: 'https://cdn.hibervr.com/video/bike.mp4',
        p: [49.9, 0, -10],
        r: [0, 90, 0],
        width: 5,
        ratio: 40 / 40,
      })
    );
  
    const image = getFramedImage({
      src: 'https://cdn.hibervr.com/demo/img/Lunch.jpg',
      ratio: 1000 / 750,
      frame: 0,
      p: [25, 3, -5],
      r: [0, -0, 0],
      s: pop3(1),
    });
    addTo(root, image);
  
    const sCube = getPrefab({ id: 'cube_01', material: 'palette_01_white' });
    const rig = getStack(sCube, {
      p: [27, 0, -15],
      repeats: [
        {
          repeats: 2,
          direction: 'UP',
        },
        {
          repeats: 2,
          direction: 'RIGHT',
        },
        {
          repeats: 4,
          direction: 'DOWN',
        },
      ],
    });
    addTo(root, rig);
  
    const room = getRoom({
      p: [-25, 0, 0],
      wallTypes: ['DOOR', 'WINDOW', 'DOOR', 'PLAIN'],
    });
    addTo(root, room);
  
    addTo(root, getSkyScraper({ p: [0, 0, 50], bottom: 1, middle: 3, top: 1 }));
  
    const cube7 = getPrefab({ id: 'glowing_cube_01' });
    addTo(root, getSpinning(cube7, { p: [20, 2, 10], axis: 'y', r: [10, 20, 30] }));
  
    addTo(root, getSunSailFestivalTent({ p: [5, 29, 0], s: pop3(3) }));
  
    const sign1 = getTextSign({ text: 'Welcome to the club buddy', width: 300, height: 100, p: [25, 4, -16] });
    addTo(root, sign1);
  
    const floor1 = getPrefab({
      id: 'greek_floor_01' as Prefab,
    });
    addTo(root, getTiles(floor1, { p: [5, -1, 0], dim: 3, reps: 5 }));
  
    const wall = getWall({ id: 'en_m_primitive_wall_01', p: [10, 0, -25], height: 1, width: 1, wallType: 'PLAIN' });
    addTo(root, wall);
  
    const cube31 = getPrefab({ id: 'cube_01' });
    const cube11 = getPrefab({ id: 'cube_01', p: [2, 5, 0] });
    const group = getSpinningGroup({ direction: 1, duration: 2, axis: 'y', p: [5, 2, 0] });
    addTo(group, cube31);
    addTo(group, cube11);
    addTo(root, group);
  
    addTo(root, getSpinning(cube, { p: [0, 1, 10], axis: 'y', r: [10, 20, 30] }));
    addTo(root, getVideoPlayer({ src: 'https://cdn.hibervr.com/video/bike.mp4', p: [0, 1, 5], width: 5 }));
  
    placeInCircle({
      radius: 4,
      numberOfItems: 20,
      onEach: (data: IPlaceInCircleForEachOptions) => {
        const prefab = getPrefab({
          p: data.p,
          r: data.r,
        });
        addTo(root, prefab);
      },
    });
    const prefab = getPrefab({
      p: [0, 0, 5],
      s: pop3(2),
      id: 'rock_01_t1',
    });
    addTo(root, prefab);
  
    const kf: KeyFrameOptions[] = [
      { ts: 0.25, p: [0, 2, 0] },
      { ts: 0.5, p: [2, 2, 0] },
      { ts: 0.5, r: [0, 90, 180] },
      { ts: 0.75, p: [4, 2, 0] },
      { ts: 0.8, r: [0, 90, 0] },
      { ts: 1, p: [6, 2, 0] },
    ];
  
    const tweenWrapper = getGroup({ p: [0, 0, 5] });
    addTo(root, tweenWrapper);
  
    const spr = getPrefab({ id: 'sphere_01' });
    addTo(tweenWrapper, getTween(spr, kf, { loopBehaviour: 'RESTART' }));
  
    let grp = getGroup({ p: [0, 10, 5] });
    addTo(root, grp);
  
    addTo(root, getHovering(getPrefab({ id: 'apple_tree_01_t1' }), { p: [0, 2, 5] }));
  
    addTo(
      root,
      getMannequinStand({
        p: [20, 0, -10],
        avatar: EXTERNAL_AVATARS.RPMPunk,
        emot: animations.an_default_buildleft,
        mannequinScale: 2.5,
        musicId: undefined,
        header: 'My Header',
        preBody: 'My pre body',
        body: '',
        url: 'https://hiber.mv',
      })
    );
  
    const lightSource = getPrefab({ p: [-10, 0, 5], r: [50, 0, 0] });
    addPointLight(lightSource, { offset: [0, 2, 0], strength: 100, radius: 100 });
    addTo(root, lightSource);
  
    const cube33 = getPrefab({ p: [10, 2, 6] });
    addVideo(cube33, { src: 'https://cdn.hibervr.com/video/dj.mp4' });
    addTo(root, cube33);
  
    const head = getPrefab({ p: [0, 3, 5], s: [1, 1, 1], id: 'en_p_jaguar_head_01_t2' });
    addBillboard(head);
    addTo(root, head);
  
    const spawn = getPrefab({ r: [0, 180, 0], id: 'gpl_spawn_point_01' });
    addTo(root, spawn);
  
    addTo(
      root,
      getDjBooth({
        p: [0, 0, 5],
      })
    );
  
   
  
    const addFireworks = (target: HNode) => {
      const grp = getGroup();
  
      const fx_particlesystem_fireworks_01 = getPrefab({ id: 'fx_particlesystem_fireworks_01', p: [10, 5, 10] });
      addTo(grp, fx_particlesystem_fireworks_01);
  
      return target;
    };
    addFireworks(root);
  
    const cube111 = getPrefab({ p: [-3, 1, 5] });
    addInvisibility(cube111);
    addTo(root, cube111);
  
    const tmp22 = getCircularTemple({ p: [0, 0, 0], seed: 8 });
    addTo(root, tmp22);
  
    const cube222 = getPrefab({ p: [0, 1, 5] });
    addParticles(cube222, PARTICLE_PRESETS.blueTail);
    addTo(root, getMoving(cube222));
  
    const kf1: KeyFrameOptions[] = [
      { ts: 0.25, p: [0, 2, 0] },
      { ts: 0.5, p: [2, 2, 0] },
      { ts: 0.5, r: [0, 90, 180] },
      { ts: 0.75, p: [2, 0, 0] },
      { ts: 0.8, r: [0, 90, 0] },
      { ts: 1, p: [0, 0, 0] },
    ];
    const tweenWrapper2 = getGroup({ p: [0, 0, 5] });
    addTo(root, tweenWrapper2);
    const spr2 = getPrefab({ id: 'sphere_01' });
    addTo(tweenWrapper2, getTween(spr2, kf1, { loopBehaviour: 'RESTART' }));
  
    addTo(root, getDummy({ p: [1, 2, 1], avatar: 'red_robot', emot: 'an_default_emote_shuffledance' }));
  
    const rpmAvatar = getExternalAvatar({
      avatar: EXTERNAL_AVATARS.Head5,
      p: [0, 5, 5],
      r: [0, 180, 0],
      emot: animations.an_default_idle,
    });
  
    addTo(root, rpmAvatar);
  
    const flapWrap = getGroup({ children: [getPrefab()] });
    addTo(root, getFlapping(flapWrap, { p: [0, 0, 5], angle: 20, axis: 'x', duration: 0.5 }));
    */
}
//# sourceMappingURL=reference.js.map