var configObject = function(){ //stage properties... var stageProperties = { stageWidth: 1200, stageHeight: 600, stageBGColor: 'rgba(204, 204, 204, 0)', manifest: [ //scene_0 /* ------------ spritesheets -------- */ {"src": "vial_liquid_spritesheet.png", "id": "vial_liquid_spritesheet" }, {"src": "test_tube_suction_1000.png", "id": "test_tube_suction_1000" }, {"src": "vial_inject_1000.png", "id": "vial_inject_1000" }, {"src": "detergent_solution_suction_30.png", "id": "detergent_solution_suction_30" }, {"src": "vial_inject_30.png", "id": "vial_inject_30" }, {"src": "proteinase_suction_50.png", "id": "proteinase_suction_50" }, {"src": "vial_inject_50.png", "id": "vial_inject_50" }, {"src": "centrifuge_insert.png", "id": "centrifuge_insert" }, {"src": "vial_suction_650.png", "id": "vial_suction_650" }, {"src": "vial_inject_650.png", "id": "vial_inject_650" }, {"src": "rnase_suction_50.png", "id": "rnase_suction_50" }, {"src": "ethyl_alcohol_suction_600.png", "id": "ethyl_alcohol_suction_600" }, {"src": "vial_inject_600.png", "id": "vial_inject_600" }, {"src": "vial_suction_300.png", "id": "vial_suction_300" }, {"src": "vial_inject_300.png", "id": "vial_inject_300" }, /*---- fixed object(s) --- */ { "src": "lab_background_01.png", "id": "labBG01"}, { "src": "table_top_alt.png", "id": "tableTop"}, { "src": "tt_rack_294x101.png", "id": "ttRack"}, { "src": "trash_back_235x250.png", "id": "trashBack"}, { "src": "trash_front_235x250.png", "id": "trashFront"}, { "src": "label_trash_235x250.png", "id": "labelTrash"}, { "src": "centrifuge_closed_282x444.png", "id": "centrifugeClosed"}, { "src": "centrifuge_open_282x444.png", "id": "centrifugeOpen"}, { "src": "centrifuge_zoomed_420x420.png", "id": "centrifugeZoomed"}, /* ---- moveable object(s) --- */ { "src": "bottle_uncapped_back_396x100.png", "id": "bottleUncappedBack"}, { "src": "bottle_uncapped_396x699.png", "id": "bottleUncapped"}, { "src": "bottle_cap_396X200.png", "id": "bottleUncappedCap"}, { "src": "bottle_cap_upside_down_396X200.png", "id": "bottleUncappedCapUpsideDown"}, { "src": "tt_cap_blue_150x181.png", "id": "ttCapBlue"}, { "src": "tt_cap_green_150x181.png", "id": "ttCapGreen"}, { "src": "tt_cap_green_upside_down_150x181.png", "id": "ttCapGreenUpsideDown"}, { "src": "tt_cap_magenta_150x181.png", "id": "ttCapMagenta"}, { "src": "tt_cap_red_150x181.png", "id": "ttCapRed"}, { "src": "testtube_back.png", "id": "testTubeBack"}, { "src": "testtube_empty.png", "id": "testTubeEmpty"}, { "src": "testtube_liquid_240x1454.png", "id": "testTubeLiquid"}, /*---- fixed object(s) --- */ //{ "src": "testtube_rack_front.png", "id": "testTubeRackFront"}, { "src": "tt_rack_front_294x101.png", "id": "ttRackFront"}, /*---- fixed object(s) --- */ { "src": "glass_bottle_back_244x57.png", "id": "glassBottleBack"}, /* ---- moveable object(s) --- */ { "src": "glass_bottle_cap_244x166.png", "id": "glassBottleCap"}, { "src": "glass_bottle_cap_upside_down_244x166.png", "id": "glassBottleCapUpsideDown"}, /* { "src": "stirrer_65x1236.png", "id": "stirrer"}, */ /*---- fixed object(s) --- */ { "src": "glass_bottle_with_water_front_244x527.png", "id": "glassBottle"}, { "src": "vial_holder_base_515x329.png", "id": "vialHolderBase"}, /* ---- moveable object(s) --- */ { "src": "micro_test_tube_closed_200x234.png", "id": "microTTClosed"}, /*---- fixed object(s) --- */ { "src": "vial_holder_front_515x329.png", "id": "vialHolderFront"}, { "src": "dummy_vials_514x240.png", "id": "dummyVials"}, /* ---- moveable object(s) --- */ { "src": "micro_test_tube_open_200x234.png", "id": "microTTOpen"}, { "src": "vial_open_back_200x234.png", "id": "vialOpenBack"}, { "src": "vial_open_front_200x234.png", "id": "vialOpenFront"}, //vial dna { "src": "dna_200x234.png", "id": "dna"}, /*---- fixed object(s) --- */ { "src": "pipette_tip_holder_base_316x310.png", "id": "pipetteTipHolderBase"}, { "src": "dummy_tips_255x183.png", "id": "dummyTips"}, /* ---- moveable object(s) --- */ { "src": "mp_tip-16x91.png", "id": "pipetteTip"}, /*---- fixed object(s) --- */ { "src": "pipette_tip_holder_front02_316x310.png", "id": "pipetteTipHolderFrontRow02"}, { "src": "pipette_tip_holder_front01_316x310.png", "id": "pipetteTipHolderFrontRow01"}, /* ---- moveable object(s) --- */ { "src": "pipette_sans_microtip_204x812.png", "id": "pipette"}, { "src": "pipette_204x966.png", "id": "pipetteTipped"}, { "src": "label_detergent_solution_209x143.png", "id": "labelDetergentSolution"}, { "src": "label_ethyl_alcohol_322x221.png", "id": "labelEthylAlcohol"}, { "src": "label_proteinase_322x221.png", "id": "labelProteinase"}, { "src": "label_rnase_322x221.png", "id": "labelRnase"}, { "src": "thermometer_0_95x250.png", "id": "thermometer0"}, /* -- hands -- */ //default { "src": "rhand_default_650x563.png", "id": "rHandDefault"}, { "src": "rhand_tt_01_650x628.png", "id": "rHandTT01"}, { "src": "rhand_tt_01_thumb_650x628.png", "id": "rHandTT01Thumb"}, { "src": "lhand_default_650x563.png", "id": "lHandDefault"}, { "src": "lhand_tt_02_650x430.png", "id": "lHandTT02"}, { "src": "lhand_default_thumb_650x264.png", "id": "lHandTT02Thumb"}, //pipette //{ "src": "rhand_pipette_02_650x1033.png", "id": "rHandPipetteDefault"}, { "src": "rhand_pipette_01_650x719.png", "id": "rHandPipetteDefault"}, //{ "src": "rhand_pipette_05_650x1003.png", "id": "rHandPipetteDrop"}, //{ "src": "rhand_pipette_02_front_570x548.png", "id": "rHandPipetteDefaultFront"}, { "src": "rhand_pipette_01_front_435x495.png", "id": "rHandPipetteDefaultFront"}, { "src": "lhand_pipette_01_650x719.png", "id": "lHandPipetteDefault"}, { "src": "lhand_pipette_01_front_560x485.png", "id": "lHandPipetteDefaultFront"}, //bottles {"src": "rhand_bottle_04_650x569.png", "id":"rHandBottleDefault"}, {"src": "rhand_bottle_04_front_262x293.png", "id":"rHandBottleFrontDefault"}, {"src": "lhand_bottle_04_650x569.png", "id":"lHandBottleDefault"}, {"src": "lhand_bottle_04_front_650x287.png", "id":"lHandBottleFrontDefault"}, //spoon {"src": "rhand_spoon_01_573x560.png", "id":"rHandSpoonDefault"}, {"src": "rhand_spoon_01_front_112x224.png", "id":"rHandSpoonFrontDefault"}, {"src": "lhand_spoon_01_650x511.png", "id":"lHandSpoonDefault"}, {"src": "lhand_spoon_01_front_420x511.png", "id":"lHandSpoonFrontDefault"}, //vials {"src": "rhand_vial_01_650x500.png", "id":"rHandVialDefault"}, {"src": "rhand_vial_01_133x294_front.png", "id":"rHandVialFrontDefault"}, {"src": "lhand_vial_01_650x500.png", "id":"lHandVialDefault"}, {"src": "lhand_vial_01_650x300_front.png", "id":"lHandVialFrontDefault"}, /* ---------- BUTTONS ---------- */ {"src": "icon_rhand_150x150.png", "id":"rhandIcon"}, {"src": "icon_lhand_150x150.png", "id":"lhandIcon"}, {"src": "icon_up_20x20.png", "id":"upIcon"}, {"src": "icon_down_20x20.png", "id":"downIcon"}, /* ---- virtual asst. --- */ {"src": "vlab_assistant_203x236.png", "id":"virtualAssistant"}, {"src": "main_frame.png", "id":"mainFrame"}, //scene_2 //scene_3 //etc... ], //sound assets, if any... sounds: { path: "./assets/", manifest: [ //Work Bench 01 { id: "wb0101", src: { mp3: "mp3/wb01_01.mp3" } }, { id: "input", src: { mp3: "mp3/input.mp3" } }, { id: "glitch", src: { mp3: "mp3/glitch.mp3" } }, { id: "dialClick", src: { mp3: "mp3/dial_click.mp3" } }, { id: "trashDrop", src: { mp3: "mp3/drop_into_trash.mp3" } }, { id: "fluidPour", src: { mp3: "mp3/fluid_pour.mp3" } }, { id: "pipetteClick", src: { mp3: "mp3/pipette_click.mp3" } }, { id: "ttPopOpen", src: { mp3: "mp3/test_tube_pop_open.mp3" } }, { id: "bottleUnscrew", src: { mp3: "mp3/bottle_unscrew.mp3" } }, { id: "centrifuge", src: { mp3: "mp3/centrifuge.mp3" } }, ] } }; //define the scenes... var scenes = { //names must be in the order they are played... names: [ "", //scene_0 ], //defaults, may be overwritten (TODO) offset: 0, bgColor: 'rgba(255, 255, 255, 1.0)', border: { size: 2, color: 'rgba(0, 0, 0, 1.0)' }, borderRadius: [5, 5, 5, 5], }; //scene-wise bitmap assets... var assets = { properties: [ //scene_0 { vial_liquid_spritesheet: { id: 'vial_liquid_spritesheet', x:0, y:0, scaleX: 1, scaleY: 1, }, test_tube_suction_1000: { id: 'test_tube_suction_1000', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_1000: { id: 'vial_inject_1000', x:0, y:0, scaleX: 1, scaleY: 1, }, detergent_solution_suction_30: { id: 'detergent_solution_suction_30', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_30:{ id: 'vial_inject_30', x:0, y:0, scaleX: 1, scaleY: 1, }, proteinase_suction_50: { id: 'proteinase_suction_50', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_50: { id: 'vial_inject_50', x:0, y:0, scaleX: 1, scaleY: 1, }, centrifuge_insert: { id: 'centrifuge_insert', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_suction_650: { id: 'vial_suction_650', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_650: { id: 'vial_inject_650', x:0, y:0, scaleX: 1, scaleY: 1, }, rnase_suction_50: { id: 'rnase_suction_50', x:0, y:0, scaleX: 1, scaleY: 1, }, ethyl_alcohol_suction_600: { id: 'ethyl_alcohol_suction_600', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_600: { id: 'vial_inject_600', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_suction_300: { id: 'vial_suction_300', x:0, y:0, scaleX: 1, scaleY: 1, }, vial_inject_300: { id: 'vial_inject_300', x:0, y:0, scaleX: 1, scaleY: 1, }, labBG01: { id: 'labBG01', x: 0, y: 0, scaleX: 1, scaleY: 1 }, tableTop: { id: 'tableTop', x: 0, y: 216, scaleX: 1, scaleY: 1 }, trashBack: { id: 'trashBack', x: 790, y: 95, scaleX: 0.75, scaleY: 0.75 }, trashFront: { id: 'trashFront', x: 790, y: 95, scaleX: 0.75, scaleY: 0.75 }, labelTrash: { id: 'labelTrash', x: 790, y: 95, scaleX: 0.75, scaleY: 0.75 }, centrifugeClosed: { id: 'centrifugeClosed', x:0, y:0, scaleX: 1, scaleY: 1, }, centrifugeOpen: { id: 'centrifugeOpen', x:0, y:0, scaleX: 1, scaleY: 1, }, centrifugeZoomed: { id: 'centrifugeZoomed', x:0, y:0, scaleX: 1, scaleY: 1, }, glassBottleBack: { id: 'glassBottleBack', x:0, y:0, scaleX: 1, scaleY: 1, }, glassBottleCap: { id: 'glassBottleCap', x:0, y:0, scaleX: 1, scaleY: 1, }, glassBottleCapUpsideDown: { id: 'glassBottleCapUpsideDown', x:0, y:0, scaleX: 1, scaleY: 1, }, glassBottle: { id: 'glassBottle', x:0, y:0, scaleX: 1, scaleY: 1, }, labelDetergentSolution: { id: 'labelDetergentSolution', x:0, y:0, scaleX: 1, scaleY: 1, }, ttCapBlue: { id: 'ttCapBlue', x:0, y:0, scaleX: 1, scaleY: 1, }, ttCapMagenta: { id: 'ttCapMagenta', x:0, y:0, scaleX: 1, scaleY: 1, }, ttCapRed: { id: 'ttCapRed', x:0, y:0, scaleX: 1, scaleY: 1, }, ttRack: { id: 'ttRack', x:0, y:0, scaleX: 1, scaleY: 1, }, testTubeBack: { id: 'testTubeBack', x: 0, y: 0, scaleX: 1, scaleY: 1 }, testTubeEmpty: { id: 'testTubeEmpty', x: 0, y: 0, scaleX: 1, scaleY: 1 }, testTubeLiquid: { id: 'testTubeLiquid', x: 0, y: 0, scaleX: 1, scaleY: 1 }, ttCapGreen: { id: 'ttCapGreen', x:0, y:0, scaleX: 1, scaleY: 1, }, ttCapGreenUpsideDown: { id: 'ttCapGreenUpsideDown', x:0, y:0, scaleX: 1, scaleY: 1, }, ttRackFront: { id: 'ttRackFront', x:0, y:0, scaleX: 1, scaleY: 1, }, bottleUncappedBack: { id: 'bottleUncappedBack', x:0, y:0, scaleX: 1, scaleY: 1, }, bottleUncapped: { id: 'bottleUncapped', x:0, y:0, scaleX: 1, scaleY: 1, }, bottleUncappedCap: { id: 'bottleUncappedCap', x:0, y:0, scaleX: 1, scaleY: 1, }, bottleUncappedCapUpsideDown: { id: 'bottleUncappedCapUpsideDown', x:0, y:0, scaleX: 1, scaleY: 1, }, bottleUncapped: { id: 'bottleUncapped', x:0, y:0, scaleX: 1, scaleY: 1, }, labelProteinase: { id: 'labelProteinase', x:0, y:0, scaleX: 1, scaleY: 1, }, vialHolderBase: { id: 'vialHolderBase', x:0, y:0, scaleX: 1, scaleY: 1, }, dummyVials: { id: 'dummyVials', x:0, y:0, scaleX: 1, scaleY: 1, }, microTTClosed: { id: 'microTTClosed', x: 0, y: 0, scaleX: 1, scaleY: 1 }, vialHolderFront: { id: 'vialHolderFront', x:0, y:0, scaleX: 1, scaleY: 1, }, microTTOpen: { id: 'microTTOpen', x: 0, y: 0, scaleX: 1, scaleY: 1 }, vialOpenBack: { id: 'vialOpenBack', x: 0, y: 0, scaleX: 1, scaleY: 1 }, vialOpenFront: { id: 'vialOpenFront', x: 0, y: 0, scaleX: 1, scaleY: 1 }, dna: { id: 'dna', x: 0, y: 0, scaleX: 1, scaleY: 1 }, pipetteTipHolderBase: { id: 'pipetteTipHolderBase', x: 0, y: 0, scaleX: 1, scaleY: 1 }, dummyTips: { id: 'dummyTips', x: 0, y: 0, scaleX: 1, scaleY: 1 }, pipetteTip: { id: 'pipetteTip', x: 0, y: 0, scaleX: 1, scaleY: 1 }, pipetteTipHolderFrontRow02: { id: 'pipetteTipHolderFrontRow02', x: 0, y: 0, scaleX: 1, scaleY: 1 }, pipetteTipHolderFrontRow01: { id: 'pipetteTipHolderFrontRow01', x: 0, y: 0, scaleX: 1, scaleY: 1 }, pipette: { id: 'pipette', x:0, y:0, scaleX: 1, scaleY: 1, }, pipetteTipped: { id: 'pipetteTipped', x:0, y:0, scaleX: 1, scaleY: 1, }, thermometer0: { id: 'thermometer0', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandDefault: { id: 'rHandDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandTT01: { id: 'rHandTT01', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandTT01Thumb: { id: 'rHandTT01Thumb', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandDefault: { id: 'lHandDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandTT02: { id: 'lHandTT02', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandTT02Thumb: { id: 'lHandTT02Thumb', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandPipetteDefault: { id: 'rHandPipetteDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandPipetteDefaultFront: { id: 'rHandPipetteDefaultFront', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandPipetteDefault: { id: 'lHandPipetteDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandPipetteDefaultFront: { id: 'lHandPipetteDefaultFront', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandBottleDefault: { id: 'rHandBottleDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandBottleDefault: { id: 'rHandBottleDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandBottleFrontDefault: { id: 'rHandBottleFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandBottleDefault: { id: 'lHandBottleDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandBottleFrontDefault: { id: 'lHandBottleFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandSpoonDefault: { id: 'rHandSpoonDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandSpoonFrontDefault: { id: 'rHandSpoonFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandSpoonDefault: { id: 'lHandSpoonDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandSpoonFrontDefault: { id: 'lHandSpoonFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandVialDefault: { id: 'rHandVialDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, rHandVialFrontDefault: { id: 'rHandVialFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandVialDefault: { id: 'lHandVialDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, lHandVialFrontDefault: { id: 'lHandVialFrontDefault', x:0, y:0, scaleX: 1, scaleY: 1, }, labelEthylAlcohol: { id: 'labelEthylAlcohol', x:0, y:0, scaleX: 1, scaleY: 1, }, labelRnase: { id: 'labelRnase', x:0, y:0, scaleX: 1, scaleY: 1, }, lhandIcon: { id: 'lhandIcon', x:0, y:0, scaleX: 1, scaleY: 1, }, rhandIcon: { id: 'rhandIcon', x:0, y:0, scaleX: 1, scaleY: 1, }, upIcon: { id: 'upIcon', x:0, y:0, scaleX: 1, scaleY: 1, }, downIcon: { id: 'downIcon', x:0, y:0, scaleX: 1, scaleY: 1, }, virtualAssistant:{ id: 'virtualAssistant', x: 0, y: 0, scaleX: 0.5, scaleY: 0.5, }, mainFrame: { id: 'mainFrame', x: 0, y: 0, scaleX: 1, scaleY: 1, } }, //scene_1, etc... ] }; //scene-wise controls (components)... var controls = { properties: [ //scene_0 { slider: { id: 'slider', x: 20, y: 130, width: 200, height: 8, handleWidth: 5, handleMax: 200, handleUnit: 'μl', handleInitPos: 40, trackBGSolid: 'rgba(140, 150, 140, 1)', trackBGType: 'solid', trackBorder: { thickness: 2, color: '#422C02' }, colorChange: false, displayBubble: false, visible: false }, button: { x: 650, y: 330, radius: 20, displayLabel: true, visible: false, type: 'rectangular', text: 'Start Tour', BGFillSolid: { normal: 'rgba(15, 52, 136, 1)', hover: 'rgba(15, 52, 204, 1)', active: 'rgba(208, 0, 0, 1)', }, border: { thickness: 2, color: 'rgba(255, 255, 255, 1.0)' }, }, progressBar: { id: 'progressBar', x: 150, y: 160, width: 410, height: 20, progressMax: 4500, progressUnit: 'mins.', visible: false }, }, //scene_1, etc ... ] }; var about = { appName: 'PETase', appVersion: '1.0.0', appDate: '4th May, 1971',//now you know my birthday, don't forget to send a wish appBuild: '1', appBuildDate: '4th May 1971', author: 'Shubhojoy Mitra', authorEmail: 'shubhojoy@gmail.com', description: 'Describe the app in one line', usage: `Stuff you want user to know, maybe...` }; var config = { setStageProperties: function(){ this.stageProperties = stageProperties; }, setScenes: function(){ this.scenes = scenes; }, setAssets: function(){ this.assets = assets; }, setControls: function(){ this.controls = controls; }, setAbout: function(){ this.about = about; }, init: function(){ this.setStageProperties(); this.setScenes(); this.setAssets(); this.setControls(); this.setAbout(); return this; } }; var globalConfig = config.init(); return globalConfig; };