/* ISLE SLINGERS — levels.js * Original level layouts. Coordinates are world pixels; (x,y) = block CENTER. * World: width 2400, ground surface at y=900. */ (function (root, factory) { var api = factory(); if (typeof module !== 'undefined' && module.exports) module.exports = api; else root.ISLE_LEVELS = api; })(typeof globalThis !== 'undefined' ? globalThis : this, function () { 'use strict'; // helpers to keep the data below readable function wood(x, y, w, h) { return { x: x, y: y, w: w, h: h, mat: 'wood' }; } function ice(x, y, w, h) { return { x: x, y: y, w: w, h: h, mat: 'ice' }; } function stone(x, y, w, h) { return { x: x, y: y, w: w, h: h, mat: 'stone' }; } function mogg(x, y) { return { x: x, y: y, kind: 'mogg' }; } function grum(x, y) { return { x: x, y: y, kind: 'grum' }; } function king(x, y) { return { x: x, y: y, kind: 'king' }; } var SLING = { x: 260, y: 745 }; var LEVELS = [ { id: 1, name: 'First Perch', birds: ['wren', 'wren', 'zippy'], sling: SLING, stars: [12000, 24000, 36000], decor: { palms: [950, 2150, 2350], flowers: [700, 1200, 2050] }, blocks: [ // simple hut wood(1500, 830, 30, 140), wood(1640, 830, 30, 140), wood(1570, 745, 200, 30) ], enemies: [ mogg(1570, 876), mogg(1770, 876) ] }, { id: 2, name: 'Crate Caves', birds: ['wren', 'zippy', 'wren'], sling: SLING, stars: [15000, 28000, 42000], decor: { palms: [1000, 2200], flowers: [800, 1350, 2000] }, blocks: [ // left tower: stone base + wood post stone(1420, 865, 70, 70), wood(1420, 760, 30, 140), // right tower: ice base + ice post ice(1660, 860, 80, 80), ice(1660, 765, 30, 110), // side crates wood(1300, 860, 80, 80), wood(1790, 860, 80, 80) ], enemies: [ mogg(1420, 666), mogg(1660, 686), mogg(1540, 876) ] }, { id: 3, name: 'Glass Works', birds: ['wren', 'zippy', 'boulder'], sling: SLING, stars: [18000, 34000, 50000], decor: { palms: [900, 2250], flowers: [750, 1300, 2100] }, blocks: [ // ice workshop: two-storey ice(1500, 840, 30, 120), ice(1640, 840, 30, 120), wood(1570, 765, 200, 30), ice(1520, 700, 30, 100), ice(1620, 700, 30, 100), ice(1570, 635, 170, 30), // wood hut wood(1850, 830, 30, 140), wood(1950, 830, 30, 140), wood(1900, 745, 160, 30) ], enemies: [ mogg(1570, 876), mogg(1570, 596), grum(1900, 868), mogg(1900, 706) ] }, { id: 4, name: 'Stone Keep', birds: ['wren', 'zippy', 'boulder', 'wren'], sling: SLING, stars: [22000, 40000, 58000], decor: { palms: [1050, 2300], flowers: [850, 1400, 2150] }, blocks: [ // stone wall (three cubes) stone(1600, 865, 70, 70), stone(1750, 865, 70, 70), stone(1900, 865, 70, 70), wood(1750, 815, 400, 30), // second floor wood(1650, 740, 30, 120), wood(1850, 740, 30, 120), wood(1750, 665, 260, 30), // left ice watchtower ice(1450, 840, 30, 120), // right crate stone(2050, 865, 70, 70) ], enemies: [ mogg(1675, 876), mogg(1825, 876), grum(1750, 618), mogg(2050, 806), mogg(1500, 876) ] }, { id: 5, name: 'Mog Fortress', birds: ['wren', 'zippy', 'boulder', 'boulder'], sling: SLING, stars: [28000, 48000, 70000], decor: { palms: [980, 2320], flowers: [780, 1300, 2180] }, blocks: [ // left stone tower (2 stories + ice cap) stone(1450, 865, 70, 70), stone(1450, 760, 70, 70), ice(1450, 710, 30, 30), // center keep stone(1700, 865, 70, 70), stone(1850, 865, 70, 70), wood(1775, 815, 260, 30), wood(1700, 740, 30, 120), wood(1850, 740, 30, 120), wood(1775, 665, 220, 30), ice(1775, 635, 260, 30), // right post stone(2050, 865, 70, 70), wood(2050, 760, 30, 120) ], enemies: [ king(1775, 862), mogg(1450, 671), mogg(1775, 626), mogg(2050, 676), mogg(1575, 876), mogg(1975, 876) ] } ]; return { LEVELS: LEVELS, SLING: SLING }; });