diff --git a/src/server/mods/mod-iwd-ranger b/src/server/mods/mod-iwd-ranger deleted file mode 160000 index 9ec64b54..00000000 --- a/src/server/mods/mod-iwd-ranger +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 9ec64b54627ed5185b31832aefbcb7195b8240a9 diff --git a/src/server/mods/mod-iwd-souls-moor/factions/pumpkinSailor.js b/src/server/mods/mod-iwd-souls-moor/factions/pumpkinSailor.js deleted file mode 100644 index c362f048..00000000 --- a/src/server/mods/mod-iwd-souls-moor/factions/pumpkinSailor.js +++ /dev/null @@ -1,9 +0,0 @@ -module.exports = { - id: 'pumpkinSailor', - name: 'The Pumpkin Sailor', - description: 'The Pumpkin Sailor scours the seas in search of lost souls that were doomed to roam the open waters alone.', - - rewards: { - - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/images/bigMobs.png b/src/server/mods/mod-iwd-souls-moor/images/bigMobs.png deleted file mode 100644 index 43e01e52..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/bigMobs.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/bigMobs.pyxel b/src/server/mods/mod-iwd-souls-moor/images/bigMobs.pyxel deleted file mode 100644 index f7f5c46c..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/bigMobs.pyxel and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/bosses.png b/src/server/mods/mod-iwd-souls-moor/images/bosses.png deleted file mode 100644 index 43e01e52..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/bosses.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/bosses.pyxel b/src/server/mods/mod-iwd-souls-moor/images/bosses.pyxel deleted file mode 100644 index 46b21ca8..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/bosses.pyxel and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/items.png b/src/server/mods/mod-iwd-souls-moor/images/items.png deleted file mode 100644 index 13d5a2fc..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/items.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/items.pyxel b/src/server/mods/mod-iwd-souls-moor/images/items.pyxel deleted file mode 100644 index e0bcd1ae..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/items.pyxel and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/logo.png b/src/server/mods/mod-iwd-souls-moor/images/logo.png deleted file mode 100644 index a4d8d131..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/logo.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/mobs.png b/src/server/mods/mod-iwd-souls-moor/images/mobs.png deleted file mode 100644 index ed1db367..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/mobs.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/mobs.pyxel b/src/server/mods/mod-iwd-souls-moor/images/mobs.pyxel deleted file mode 100644 index c276e1ef..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/mobs.pyxel and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/skins.png b/src/server/mods/mod-iwd-souls-moor/images/skins.png deleted file mode 100644 index 0f385a07..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/skins.png and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/images/skins.pyxel b/src/server/mods/mod-iwd-souls-moor/images/skins.pyxel deleted file mode 100644 index bc2003df..00000000 Binary files a/src/server/mods/mod-iwd-souls-moor/images/skins.pyxel and /dev/null differ diff --git a/src/server/mods/mod-iwd-souls-moor/index.js b/src/server/mods/mod-iwd-souls-moor/index.js deleted file mode 100644 index 357d08f2..00000000 --- a/src/server/mods/mod-iwd-souls-moor/index.js +++ /dev/null @@ -1,244 +0,0 @@ -module.exports = { - name: 'Event: Halloween', - - mapOffset: { - x: 23, - y: 86 - }, - - extraScripts: [ - 'maps/fjolarok/events/halloween.js', - 'mtx/summonPumpkinSkeleton.js', - 'spells/spellScatterPumpkinPieces.js' - ], - - mapFile: null, - mapW: null, - mapH: null, - - init: function () { - this.mapFile = require('./maps/fjolarok/map'); - this.mapW = this.mapFile.width; - this.mapH = this.mapFile.height; - - this.events.on('onBeforeGetFactions', this.onBeforeGetFactions.bind(this)); - this.events.on('onBeforeGetSkins', this.onBeforeGetSkins.bind(this)); - this.events.on('onBeforeGetEventList', this.onBeforeGetEventList.bind(this)); - //this.events.on('onBeforeGetQuests', this.onBeforeGetQuests.bind(this)); - //this.events.on('onBeforeGetDialogue', this.onBeforeGetDialogue.bind(this)); - this.events.on('onBeforeGetResourceList', this.onBeforeGetResourceList.bind(this)); - //this.events.on('onAfterGetZone', this.onAfterGetZone.bind(this)); - //this.events.on('onBeforeBuildLayerTile', this.onBeforeBuildLayerTile.bind(this)); - //this.events.on('onAfterGetLayerObjects', this.onAfterGetLayerObjects.bind(this)); - this.events.on('onBeforeGetMtxList', this.onBeforeGetMtxList.bind(this)); - this.events.on('onBeforeGetAnimations', this.onBeforeGetAnimations.bind(this)); - //this.events.on('onBeforeGetHerbConfig', this.onBeforeGetHerbConfig.bind(this)); - this.events.on('onBeforeGetSpellsInfo', this.beforeGetSpellsInfo.bind(this)); - this.events.on('onBeforeGetSpellsConfig', this.beforeGetSpellsConfig.bind(this)); - this.events.on('onBeforeGetSpellTemplate', this.beforeGetSpellTemplate.bind(this)); - }, - - beforeGetSpellsInfo: function (spells) { - spells.push({ - name: 'scatter pumpkin pieces', - type: 'scatterPumpkinPieces', - animation: 'melee', - particles: { - color: { - start: ['ff4252', 'b34b3a'], - end: ['b34b3a', 'ff4252'] - }, - scale: { - start: { - min: 2, - max: 14 - }, - end: { - min: 0, - max: 8 - } - }, - lifetime: { - min: 1, - max: 3 - }, - alpha: { - start: 0.7, - end: 0 - }, - randomScale: true, - randomColor: true, - chance: 0.6 - } - }); - }, - - beforeGetSpellsConfig: function (spells) { - spells['scatter pumpkin pieces'] = { - statType: ['str'], - statMult: 0.1, - auto: true, - cdMax: 7, - manaCost: 0, - random: { - - } - }; - }, - - beforeGetSpellTemplate: function (spell) { - if (spell.type === 'ScatterPumpkinPieces') - spell.template = require('./spells/spellScatterPumpkinPieces.js'); - }, - - onBeforeGetFactions: function (mappings) { - extend(mappings, { - pumpkinSailor: './factions/pumpkinSailor' - }); - }, - - onBeforeGetSkins: function (skins) { - skins['3.0'] = { - name: 'Pumpkin-Head Necromancer', - sprite: [0, 0], - spritesheet: `${this.folderName}/images/skins.png` - }; - }, - - onBeforeGetHerbConfig: function (herbs) { - extend(herbs, { - 'Tiny Pumpkin': { - sheetName: 'objects', - cell: 167, - itemSprite: [3, 3], - itemName: 'Candy Corn', - itemSheet: `${this.folderName}/images/items.png`, - itemAmount: [1, 1] - }, - Pumpkin: { - sheetName: 'objects', - cell: 159, - itemSprite: [3, 3], - itemName: 'Candy Corn', - itemSheet: `${this.folderName}/images/items.png`, - itemAmount: [2, 3] - }, - 'Giant Pumpkin': { - sheetName: 'objects', - cell: 158, - itemSprite: [3, 3], - itemName: 'Candy Corn', - itemSheet: `${this.folderName}/images/items.png`, - itemAmount: [2, 5] - } - }); - }, - - onBeforeGetAnimations: function (animations) { - //Skeleton animations - let mobsheet = `${this.folderName}/images/mobs.png`; - if (!animations.mobs[mobsheet]) - animations.mobs[mobsheet] = {}; - - animations.mobs[mobsheet]['0'] = { - melee: { - spritesheet: mobsheet, - row: 1, - col: 0, - frames: 2, - frameDelay: 5 - }, - spawn: { - spritesheet: mobsheet, - row: 2, - col: 0, - frames: 3, - frameDelay: 4, - hideSprite: true, - type: 'attackAnimation' - }, - death: { - spritesheet: mobsheet, - row: 3, - col: 0, - frames: 4, - frameDelay: 4, - type: 'attackAnimation' - } - }; - }, - - onBeforeGetResourceList: function (list) { - list.push(`${this.folderName}/images/mobs.png`); - list.push(`${this.folderName}/images/bosses.png`); - list.push(`${this.folderName}/images/skins.png`); - }, - - onBeforeGetMtxList: function (list) { - list.summonPumpkinSkeleton = this.relativeFolderName + '/mtx/summonPumpkinSkeleton'; - list.hauntedIceSpear = this.relativeFolderName + '/mtx/hauntedIceSpear'; - }, - - onAfterGetLayerObjects: function (info) { - if (info.map !== 'fjolarok') - return; - - let layer = this.mapFile.layers.find(l => (l.name === info.layer)); - if (layer) { - let offset = this.mapOffset; - let mapScale = this.mapFile.tilesets[0].tileheight; - - layer.objects.forEach(function (l) { - let newO = extend({}, l); - newO.x += (offset.x * mapScale); - newO.y += (offset.y * mapScale); - - info.objects.push(newO); - }, this); - } - }, - - onBeforeBuildLayerTile: function (info) { - if (info.map !== 'fjolarok') - return; - - let offset = this.mapOffset; - - let x = info.x; - let y = info.y; - - if ((x - offset.x < 0) || (y - offset.y < 0) || (x - offset.x >= this.mapW) || (y - offset.y >= this.mapH)) - return; - - let i = ((y - offset.y) * this.mapW) + (x - offset.x); - let layer = this.mapFile.layers.find(l => (l.name === info.layer)); - if (layer) - info.cell = layer.data[i]; - }, - - onBeforeGetEventList: function (zone, list) { - if (zone !== 'fjolarok') - return; - - list.push('../' + this.relativeFolderName + '/maps/fjolarok/events/halloween.js'); - list.push('../' + this.relativeFolderName + '/maps/fjolarok/events/halloweenBoss.js'); - }, - - onAfterGetZone: function (zone, config) { - try { - let modZone = require('./maps/' + zone + '/zone.js'); - extend(config, modZone); - } catch (e) { - - } - }, - - onBeforeGetDialogue: function (zone, config) { - try { - let modDialogue = require('./maps/' + zone + '/dialogues.js'); - extend(config, modDialogue); - } catch (e) { - - } - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/dialogues.js b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/dialogues.js deleted file mode 100644 index f2126da4..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/dialogues.js +++ /dev/null @@ -1,106 +0,0 @@ -module.exports = { - 'the pumpkin sailor': { - 1: { - msg: [{ - msg: 'Soul\'s greeting to you.', - options: [1.1, 1.2, 1.3, 1.4] - }], - options: { - 1.1: { - msg: 'Who are you?', - goto: '2' - }, - 1.2: { - msg: 'Have you found anything worth selling?', - goto: 'tradeBuy' - }, - 1.3: { - msg: 'I have some items you might have use for..', - goto: 'tradeSell' - }, - 1.4: { - msg: 'I sold you something by accident.', - goto: 'tradeBuyback' - } - } - }, - 2: { - msg: [{ - msg: 'Most call me the Pumpkin Sailor. Some call me the Sailor of Souls. You can call me either.', - options: [2.1] - }], - options: { - 2.1: { - msg: 'Souls? What kind of souls?', - goto: '3' - } - } - }, - 3: { - msg: [{ - msg: 'Why, human souls! The sea claims without mercy and once in its cold grasp, few ever escape. I do what I can to gather the few I can track down; store them in these jars here.', - options: [3.1] - }], - options: { - 3.1: { - msg: 'Then what?', - goto: '4' - } - } - }, - 4: { - msg: [{ - msg: 'Well, a soul wants to return home; to be at rest. Once ashore, they are free to find their final resting place.', - options: [4.1] - }], - options: { - 4.1: { - msg: 'How do they find their way back?', - goto: '5' - } - } - }, - 5: { - msg: [{ - msg: 'Their loved ones put out pumpkins, carved with their family runes. The souls simply look for something familiar. Unfortunately, they are easily fooled too.', - options: [5.1] - }], - options: { - 5.1: { - msg: 'Who would fool them?', - goto: '6' - } - } - }, - 6: { - msg: [{ - msg: 'I am not without enemies. There are those who would display forged runes; clever replications meant to lure and trap souls. Lord Squash, is one such. A foul creature; powerful and fearful.', - options: [] - }], - options: { - - } - }, - tradeBuy: { - cpn: 'trade', - method: 'startBuy', - args: [{ - targetName: 'the pumpkin sailor' - }] - }, - tradeSell: { - cpn: 'trade', - method: 'startSell', - args: [{ - targetName: 'the pumpkin sailor' - }] - }, - tradeBuyback: { - cpn: 'trade', - method: 'startBuyback', - args: [{ - targetName: 'the pumpkin sailor' - }] - } - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloween.js b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloween.js deleted file mode 100644 index ac4939b0..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloween.js +++ /dev/null @@ -1,112 +0,0 @@ -module.exports = { - name: 'Soul\'s Moor', - description: 'The Pumpkin Sailor has returned to the shores of the living.', - distance: -1, - cron: '* * 1-31 9 *', - durationEvent: true, - disabled: false, - - events: { - - }, - - helpers: { - - }, - - phases: [{ - type: 'hookEvents', - events: { - beforeGatherResource: function (gatherResult, gatherer) { - let itemName = gatherResult.blueprint.itemName; - if ((!itemName) || (itemName.toLowerCase() !== 'candy corn')) - return; - - gatherer.reputation.getReputation('pumpkinSailor', 40); - - //Spawn a Nibbler? - let roll = Math.random(); - if (roll < 0.15) { - let obj = gatherResult.obj; - let spellbook = obj.spellbook; - if (!spellbook) { - spellbook = obj.addComponent('spellbook'); - spellbook.addSpell('summonSkeleton'); - let spell = spellbook.spells[0]; - spell.killMinionsOnDeath = false; - spell.hpPercent = 100; - spell.damagePercent = 100; - - let level = gatherer.stats.values.level; - let hp = ((level * 15) + level) * 2; - let str = ((level * 14.9) + ((level - 1) * 31.49)); - if (level < 10) - str *= [0.1, 0.2, 0.4, 0.7, 1, 1, 1, 1, 1][level - 1]; - - obj.addComponent('stats', { - values: { - hpMax: hp, - hp: hp, - str: str * 1.2, - level: level - } - }); - - obj.addComponent('aggro', { - faction: 'lordSquash' - }); - } - - let pos = obj.instance.physics.getClosestPos(obj.x, obj.y, obj.x, obj.y); - spellbook.spells[0].cast({ - target: { - x: pos.x, - y: pos.y - } - }); - let summoned = spellbook.spells[0].minions[0]; - summoned.name = 'Soul Nibbler'; - summoned.aggro.list.push({ - obj: gatherer, - threat: 1 - }); - - summoned.sheetName = 'server/mods/event-halloween/images/mobs.png'; - summoned.cell = 0; - - summoned.inventory.blueprint = { - noRandom: true, - rolls: 2, - chance: 100, - blueprints: [{ - chance: 3, - name: 'Summon Pumpkin Skeleton', - type: 'mtx', - effects: [{ - mtx: 'summonPumpkinSkeleton' - }], - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [3, 0], - noSpell: true, - noDrop: true, - noDestroy: true, - noSalvage: true - }, { - chance: 100, - name: 'Candy Corn', - spritesheet: 'server/mods/event-halloween/images/items.png', - material: true, - noSpell: true, - sprite: [3, 3], - quantity: [1, 5] - }] - }; - } - }, - - beforeCompleteAutoquest: function (quest, character) { - - } - } - }] -}; diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloweenBoss.js b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloweenBoss.js deleted file mode 100644 index e4c74da0..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/events/halloweenBoss.js +++ /dev/null @@ -1,156 +0,0 @@ -module.exports = { - name: 'Beware Lord Squash', - description: 'Lord Squash haunts the island. Stop him in the name of the Pumpkin Sailor.', - distance: -1, - cron: '0 */2 1-31 9 *', - disabled: false, - - events: { - - }, - - helpers: { - - }, - - phases: [{ - type: 'spawnMob', - spawnRect: { - x: 63, - y: 34 - }, - mobs: [{ - name: 'Lord Squash', - level: 10, - attackable: true, - cell: 0, - sheetName: 'server/mods/event-halloween/images/bosses.png', - id: 'lordSquash', - hpMult: 55, - dmgMult: 40, - grantRep: { - pumpkinSailor: 2000 - }, - pos: { - x: 0, - y: 0 - }, - drops: { - chance: 100, - rolls: 2, - noRandom: true, - blueprints: [{ - chance: 5, - name: 'Haunted Ice Spear', - type: 'mtx', - effects: [{ - mtx: 'hauntedIceSpear' - }], - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [3, 0], - noSpell: true, - noDrop: true, - noDestroy: true, - noSalvage: true - }, { - chance: 100, - name: 'Candy Corn', - spritesheet: 'server/mods/event-halloween/images/items.png', - material: true, - sprite: [3, 3], - noSpell: true, - quantity: [30, 60] - }] - }, - properties: { - cpnBumpAnimation: { - type: 'bumpAnimation', - simplify: function () { - return { - type: 'bumpAnimation', - infinite: true, - deltaX: 0, - deltaY: -1, - updateCdMax: 4 - }; - } - } - }, - chats: { - global: true, - chance: 1, - cdMax: 350, - chats: [{ - msg: 'Souls! Souls! Delicious Souls!' - }, { - msg: '*Gobble Gobble Gobble*' - }, { - msg: 'Come, Sailor. I will be your match!' - }] - }, - spells: [{ - type: 'scatterPumpkinPieces' - }, { - type: 'projectile', - row: 3, - col: 4, - shootAll: true, - particles: { - color: { - start: ['51fc9a', '48edff'], - end: ['48edff', '51fc9a'] - }, - scale: { - start: { - min: 2, - max: 12 - }, - end: { - min: 0, - max: 6 - } - }, - lifetime: { - min: 2, - max: 4 - }, - alpha: { - start: 0.7, - end: 0 - }, - speed: { - start: { - min: 4, - max: 24 - }, - end: { - min: 0, - max: 12 - } - }, - startRotation: { - min: 0, - max: 360 - }, - rotationSpeed: { - min: 0, - max: 360 - }, - randomScale: true, - randomColor: true, - randomSpeed: true, - chance: 0.55, - spawnType: 'circle', - spawnCircle: { - x: 0, - y: 0, - r: 8 - } - } - }] - }] - }, { - type: 'killMob', - mobs: ['lordSquash'] - }] -}; diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/map.json b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/map.json deleted file mode 100644 index 7d96c661..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/map.json +++ /dev/null @@ -1,523 +0,0 @@ -{ "backgroundcolor":"#32222e", - "height":34, - "layers":[ - { - "data":[384, 384, 384, 384, 384, 384, 377, 377, 377, 377, 377, 384, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, 390, 384, 384, 377, 384, 384, 384, 377, 377, 377, 384, 377, 377, 377, 377, 377, 377, 384, 384, 384, 384, 384, 384, 377, 377, 377, 390, 384, 384, 384, 384, 384, 384, 384, 377, 377, 377, 377, 377, 377, 384, 384, 384, 384, 384, 377, 384, 384, 384, 384, 384, 384, 390, 390, 384, 384, 377, 517, 517, 384, 384, 517, 517, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 390, 390, 390, 384, 384, 517, 517, 517, 517, 384, 517, 517, 384, 384, 384, 384, 384, 384, 384, 384, 377, 384, 384, 377, 384, 384, 390, 390, 390, 384, 377, 517, 384, 517, 517, 517, 384, 517, 384, 384, 377, 377, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 342, 390, 390, 390, 384, 384, 384, 384, 517, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 342, 342, 390, 390, 390, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 390, 390, 390, 390, 390, 390, 390, 390, 384, 342, 342, 342, 342, 390, 390, 390, 384, 384, 384, 384, 384, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 342, 342, 342, 390, 390, 390, 173, 384, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 342, 342, 342, 342, 342, 342, 173, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 390, 342, 342, 526, 526, 526, 173, 526, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 342, 342, 342, 342, 509, 509, 509, 526, 342, 390, 342, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 342, 342, 342, 509, 509, 509, 509, 509, 526, 526, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 342, 526, 509, 509, 509, 517, 509, 509, 509, 526, 342, 342, 390, 342, 390, 390, 342, 390, 390, 390, 390, 390, 342, 390, 342, 342, 342, 526, 509, 509, 517, 517, 517, 509, 509, 406, 526, 342, 342, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 390, 342, 342, 526, 526, 509, 509, 509, 517, 406, 517, 509, 508, 516, 526, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 509, 509, 509, 517, 509, 508, 516, 491, 491, 526, 526, 342, 390, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 509, 509, 509, 508, 516, 491, 491, 491, 408, 526, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 406, 508, 516, 491, 491, 491, 491, 491, 491, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 516, 491, 491, 491, 491, 491, 491, 491, 408, 526, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 491, 491, 491, 491, 408, 491, 491, 491, 491, 526, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 408, 491, 491, 491, 491, 491, 491, 508, 516, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 491, 491, 491, 491, 491, 508, 516, 509, 509, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 408, 491, 491, 508, 516, 509, 509, 406, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 491, 508, 516, 509, 408, 509, 509, 509, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 516, 509, 509, 509, 339, 509, 509, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 509, 406, 509, 509, 406, 509, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 342, 526, 526, 509, 509, 509, 509, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 526, 526, 526, 526, 526, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 526, 526, 342, 342, 0, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 0, 0, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 0, 0, 0, 0, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 0, 0, 0, 0, 0, 0], - "height":34, - "name":"tiles", - "opacity":0.550000011920929, - "type":"tilelayer", - "visible":true, - "width":26, - "x":0, - "y":0 - }, - { - "data":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 683, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], - "height":34, - "name":"doodads", - "opacity":1, - "type":"tilelayer", - "visible":true, - "width":26, - "x":0, - "y":0 - }, - { - "data":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 79, 80, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 79, 80, 0, 80, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223, 208, 208, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 223, 587, 0, 0, 0, 0, 205, 672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, 0, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 215, 0, 0, 0, 408, 75, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, 0, 76, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, 0, 0, 0, 0, 0, 0, 671, 205, 672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 669, 206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, 0, 0, 0, 0, 0, 0, 671, 205, 672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 669, 206, 548, 0, 0, 0, 77, 0, 0, 0, 559, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 670, 0, 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, 0, 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 669, 206, 670, 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, 0, 0, 77, 0, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 669, 206, 0, 0, 0, 0, 0, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 207, 0, 0, 0, 0, 216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 206, 207, 207, 207, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], - "height":34, - "name":"walls", - "opacity":1, - "properties": - { - "tileset":"walls" - }, - "propertytypes": - { - "tileset":"string" - }, - "type":"tilelayer", - "visible":true, - "width":26, - "x":0, - "y":0 - }, - { - "draworder":"topdown", - "name":"mobs", - "objects":[ - { - "gid":788, - "height":24, - "id":663, - "name":"the pumpkin sailor", - "rotation":0, - "type":"", - "visible":true, - "width":24, - "x":56, - "y":40 - }], - "opacity":1, - "properties": - { - "faction":"2", - "tileset":"mobs" - }, - "propertytypes": - { - "faction":"string", - "tileset":"string" - }, - "type":"objectgroup", - "visible":true, - "x":0, - "y":0 - }, - { - "draworder":"topdown", - "name":"objects", - "objects":[ - { - "gid":712, - "height":24, - "id":660, - "name":"", - "rotation":0, - "type":"", - "visible":true, - "width":24, - "x":56, - "y":144 - }, - { - "gid":711, - "height":24, - "id":661, - "name":"", - "rotation":0, - "type":"", - "visible":true, - "width":24, - "x":152, - "y":240 - }, - { - "gid":665, - "height":8, - "id":668, - "name":"|greencandle", - "properties": - { - "cpnAggro":"{ \"faction\": 1}" - }, - "propertytypes": - { - "cpnAggro":"string" - }, - "rotation":0, - "type":"", - "visible":true, - "width":8, - "x":40, - "y":40 - }, - { - "gid":665, - "height":8, - "id":670, - "name":"|greencandle", - "properties": - { - "cpnAggro":"{ \"faction\": 1}" - }, - "propertytypes": - { - "cpnAggro":"string" - }, - "rotation":0, - "type":"", - "visible":true, - "width":8, - "x":152, - "y":200 - }, - { - "gid":665, - "height":8, - "id":671, - "name":"|greencandle", - "properties": - { - "cpnAggro":"{ \"faction\": 1}" - }, - "propertytypes": - { - "cpnAggro":"string" - }, - "rotation":0, - "type":"", - "visible":true, - "width":8, - "x":128, - "y":224 - }, - { - "gid":665, - "height":8, - "id":674, - "name":"|greencandle", - "properties": - { - "cpnAggro":"{ \"faction\": 1}" - }, - "propertytypes": - { - "cpnAggro":"string" - }, - "rotation":0, - "type":"", - "visible":true, - "width":8, - "x":56, - "y":160 - }, - { - "gid":665, - "height":8, - "id":675, - "name":"|greencandle", - "properties": - { - "cpnAggro":"{ \"faction\": 1}" - }, - "propertytypes": - { - "cpnAggro":"string" - }, - "rotation":0, - "type":"", - "visible":true, - "width":8, - "x":88, - "y":128 - }], - "opacity":1, - "properties": - { - "blocking":"1", - "tileset":"objects" - }, - "propertytypes": - { - "blocking":"string", - "tileset":"string" - }, - "type":"objectgroup", - "visible":true, - "x":0, - "y":0 - }, - { - "draworder":"topdown", - "name":"clientObjects", - "objects":[], - "opacity":1, - "type":"objectgroup", - "visible":true, - "x":0, - "y":0 - }, - { - "draworder":"topdown", - "name":"notices", - "objects":[ - { - "height":24, - "id":666, - "name":"shopCaptain", - "rotation":0, - "type":"", - "visible":true, - "width":24, - "x":56, - "y":24 - }, - { - "height":24, - "id":667, - "name":"shopCaptain", - "rotation":0, - "type":"", - "visible":true, - "width":24, - "x":56, - "y":24 - }], - "opacity":1, - "type":"objectgroup", - "visible":true, - "x":0, - "y":0 - }, - { - "draworder":"topdown", - "name":"rooms", - "objects":[], - "opacity":1, - "type":"objectgroup", - "visible":true, - "x":0, - "y":0 - }], - "nextobjectid":676, - "orientation":"orthogonal", - "properties": - { - "instanced":"0", - "name":"Test Zone", - "spawn":"[{\"maxLevel\":1,\"x\":60,\"y\":116},{\"maxLevel\":999,\"x\":89,\"y\":48}]" - }, - "propertytypes": - { - "instanced":"string", - "name":"string", - "spawn":"string" - }, - "renderorder":"right-down", - "tileheight":8, - "tilesets":[ - { - "columns":8, - "firstgid":1, - "image":"..\/..\/..\/..\/..\/client\/images\/walls.png", - "imageheight":256, - "imagewidth":64, - "margin":0, - "name":"walls", - "spacing":0, - "tilecount":256, - "tileheight":8, - "tiles": - { - "0": - { - "probability":0.200000002980232 - }, - "2": - { - "probability":0.600000023841858 - }, - "29": - { - "probability":0.800000011920929 - }, - "3": - { - "probability":0.200000002980232 - }, - "30": - { - "probability":0.200000002980232 - }, - "31": - { - "probability":0.200000002980232 - }, - "4": - { - "probability":0.200000002980232 - }, - "50": - { - "probability":0.400000005960464 - }, - "8": - { - "probability":0.100000001490116 - } - }, - "tilewidth":8 - }, - { - "columns":8, - "firstgid":257, - "image":"..\/..\/..\/..\/..\/client\/images\/mobs.png", - "imageheight":80, - "imagewidth":64, - "margin":0, - "name":"mobs", - "spacing":0, - "tilecount":80, - "tileheight":8, - "tileproperties": - { - "19": - { - "portal":"midgaard-inn-room_2,1" - } - }, - "tilepropertytypes": - { - "19": - { - "portal":"string" - } - }, - "tilewidth":8 - }, - { - "columns":8, - "firstgid":337, - "image":"..\/..\/..\/..\/..\/client\/images\/tiles.png", - "imageheight":192, - "imagewidth":64, - "margin":0, - "name":"tiles", - "spacing":0, - "tilecount":192, - "tileheight":8, - "tiles": - { - "0": - { - "probability":2 - }, - "11": - { - "probability":4 - }, - "14": - { - "probability":0.5 - }, - "2": - { - "probability":4 - }, - "23": - { - "probability":0.200000002980232 - }, - "24": - { - "probability":0.200000002980232 - }, - "29": - { - "probability":0.5 - }, - "3": - { - "probability":7 - }, - "30": - { - "probability":0.200000002980232 - }, - "31": - { - "probability":10 - }, - "38": - { - "probability":3 - }, - "39": - { - "probability":3 - }, - "40": - { - "probability":15 - }, - "41": - { - "probability":2 - }, - "42": - { - "probability":26 - }, - "47": - { - "probability":10 - }, - "5": - { - "probability":0.00999999977648258 - }, - "54": - { - "probability":0.5 - }, - "6": - { - "probability":0.00499999988824129 - }, - "7": - { - "probability":0.100000001490116 - }, - "8": - { - "probability":0.5 - }, - "9": - { - "probability":4 - } - }, - "tilewidth":8 - }, - { - "columns":8, - "firstgid":529, - "image":"..\/..\/..\/..\/..\/client\/images\/objects.png", - "imageheight":176, - "imagewidth":64, - "margin":0, - "name":"objects", - "spacing":0, - "tilecount":176, - "tileheight":8, - "tiles": - { - "42": - { - "probability":5 - } - }, - "tilewidth":8 - }, - { - "columns":8, - "firstgid":705, - "image":"..\/..\/..\/..\/..\/client\/images\/bigObjects.png", - "imageheight":240, - "imagewidth":192, - "margin":0, - "name":"bigObjects", - "spacing":0, - "tilecount":80, - "tileheight":24, - "tilewidth":24 - }, - { - "columns":8, - "firstgid":785, - "image":"..\/..\/..\/..\/..\/client\/images\/bosses.png", - "imageheight":240, - "imagewidth":192, - "margin":0, - "name":"bosses", - "spacing":0, - "tilecount":80, - "tileheight":24, - "tilewidth":24 - }], - "tilewidth":8, - "type":"map", - "version":"2017.05.26", - "width":26 -} \ No newline at end of file diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/quests.js b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/quests.js deleted file mode 100644 index 2d3ff3ec..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/quests.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - infini: [] -}; diff --git a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/zone.js b/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/zone.js deleted file mode 100644 index 47022c0d..00000000 --- a/src/server/mods/mod-iwd-souls-moor/maps/fjolarok/zone.js +++ /dev/null @@ -1,202 +0,0 @@ -module.exports = { - resources: { - 'Tiny Pumpkin': { - type: 'herb', - max: 4 - }, - Pumpkin: { - type: 'herb', - max: 2 - }, - 'Giant Pumpkin': { - type: 'herb', - max: 1 - } - }, - mobs: { - 'the pumpkin sailor': { - level: 25, - walkDistance: 0, - attackable: false, - regular: { - drops: { - chance: 75, - rolls: 1 - } - }, - rare: { - count: 0 - }, - - properties: { - cpnTrade: { - items: { - min: 0, - max: 0 - }, - forceItems: [{ - type: 'skin', - id: '3.0', - infinite: true, - worth: { - currency: 'Candy Corn', - amount: 1200 - }, - factions: [{ - id: 'pumpkinSailor', - tier: 6 - }] - }, { - name: 'Signet of Witching', - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [0, 0], - slot: 'finger', - type: 'Ring', - level: 10, - quality: 3, - worth: { - currency: 'Candy Corn', - amount: 400 - }, - stats: { - int: 50, - regenMana: 8 - }, - factions: [{ - id: 'pumpkinSailor', - tier: 5 - }], - infinite: true, - noSalvage: true, - noDrop: true, - noDestroy: true - }, { - name: 'Banshee\'s Will', - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [0, 0], - slot: 'finger', - type: 'Ring', - level: 10, - quality: 3, - worth: { - currency: 'Candy Corn', - amount: 400 - }, - stats: { - str: 25, - int: 25, - regenHp: 10 - }, - factions: [{ - id: 'pumpkinSailor', - tier: 5 - }], - infinite: true, - noSalvage: true, - noDrop: true, - noDestroy: true - }, { - name: 'Black Cat\'s Grace', - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [0, 0], - slot: 'finger', - type: 'Ring', - level: 10, - quality: 3, - worth: { - currency: 'Candy Corn', - amount: 400 - }, - stats: { - dex: 50, - addCritChance: 90 - }, - factions: [{ - id: 'pumpkinSailor', - tier: 5 - }], - infinite: true, - noSalvage: true, - noDrop: true, - noDestroy: true - }, { - name: 'Dead Man\'s Band', - spritesheet: 'server/mods/event-halloween/images/items.png', - sprite: [0, 0], - slot: 'finger', - type: 'Ring', - level: 10, - quality: 3, - worth: { - currency: 'Candy Corn', - amount: 400 - }, - stats: { - str: 50, - armor: 350 - }, - factions: [{ - id: 'pumpkinSailor', - tier: 5 - }], - infinite: true, - noSalvage: true, - noDrop: true, - noDestroy: true - - }], - level: { - min: 1, - max: 5 - }, - markup: { - buy: 0.25, - sell: 2.5 - } - } - } - } - }, - objects: { - shopcaptain: { - properties: { - cpnNotice: { - actions: { - enter: { - cpn: 'dialogue', - method: 'talk', - args: [{ - targetName: 'the pumpkin sailor' - }] - }, - exit: { - cpn: 'dialogue', - method: 'stopTalk' - } - } - } - } - }, - greencandle: { - components: { - cpnLight: { - simplify: function () { - return { - type: 'light', - blueprint: { - color: { - start: ['80f643'], - end: ['4ac441', '51fc9a', 'd07840'] - }, - lifetime: { - min: 2, - max: 6 - } - } - }; - } - } - } - } - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/mtx/hauntedIceSpear.js b/src/server/mods/mod-iwd-souls-moor/mtx/hauntedIceSpear.js deleted file mode 100644 index 971c820e..00000000 --- a/src/server/mods/mod-iwd-souls-moor/mtx/hauntedIceSpear.js +++ /dev/null @@ -1,62 +0,0 @@ -module.exports = { - events: { - beforeSpawnProjectile: function (item, spell, projectileConfig) { - if (spell.name.toLowerCase() !== 'ice spear') - return; - - let cpnProjectile = projectileConfig.components.find(c => (c.type === 'projectile')); - cpnProjectile.particles = { - color: { - start: ['51fc9a', '48edff'], - end: ['48edff', '51fc9a'] - }, - scale: { - start: { - min: 2, - max: 12 - }, - end: { - min: 0, - max: 6 - } - }, - lifetime: { - min: 2, - max: 4 - }, - alpha: { - start: 0.7, - end: 0 - }, - speed: { - start: { - min: 4, - max: 24 - }, - end: { - min: 0, - max: 12 - } - }, - startRotation: { - min: 0, - max: 360 - }, - rotationSpeed: { - min: 0, - max: 360 - }, - randomScale: true, - randomColor: true, - randomSpeed: true, - chance: 0.55, - spawnType: 'circle', - spawnCircle: { - x: 0, - y: 0, - r: 8 - } - }; - } - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/mtx/summonPumpkinSkeleton.js b/src/server/mods/mod-iwd-souls-moor/mtx/summonPumpkinSkeleton.js deleted file mode 100644 index 12dd790d..00000000 --- a/src/server/mods/mod-iwd-souls-moor/mtx/summonPumpkinSkeleton.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - events: { - beforeSummonMinion: function (item, minion) { - minion.sheetName = 'server/mods/event-halloween/images/mobs.png'; - minion.cell = 0; - } - } -}; diff --git a/src/server/mods/mod-iwd-souls-moor/spells/spellScatterPumpkinPieces.js b/src/server/mods/mod-iwd-souls-moor/spells/spellScatterPumpkinPieces.js deleted file mode 100644 index 5be205d5..00000000 --- a/src/server/mods/mod-iwd-souls-moor/spells/spellScatterPumpkinPieces.js +++ /dev/null @@ -1,190 +0,0 @@ -let cpnPumpkinChunk = { - type: 'pumpkinChunk', - - caster: null, - isRotten: false, - - ttl: 250, - - update: function () { - this.ttl--; - - if (this.ttl === 0) - this.obj.destroyed = true; - }, - - collisionEnter: function (o) { - if (!o.player) - return; - - this.obj.destroyed = true; - - if (this.isRotten) { - let drainCounts = this.caster.spellbook.spells.find(s => (s.type === 'scatterPumpkinPieces')).drainCounts; - if (drainCounts[o.name]) - drainCounts[o.name] += 2; - else - drainCounts[o.name] = 1; - - o.effects.addEffect({ - type: 'lifeDrain', - ttl: 10, - amount: drainCounts[o.name], - caster: this.caster - }); - } else { - o.effects.addEffect({ - type: 'frenzy', - ttl: 40, - newCd: 2 - }); - } - } -}; - -module.exports = { - type: 'scatterPumpkinPieces', - - cdMax: 20, - manaCost: 0, - - spread: 5, - range: 10, - speed: 250, - - drainCounts: {}, - - cast: function (action) { - return this.shootChunk(action); - }, - - shootChunk: function (action) { - let obj = this.obj; - - let physics = obj.instance.physics; - - let spread = this.spread; - let toX = obj.x + ~~(Math.random() * spread * 2) - spread; - let toY = obj.y + ~~(Math.random() * spread * 2) - spread; - let target = physics.getClosestPos( - obj.x, - obj.y, - toX, - toY - ); - - if (!target) - return false; - - let ttl = (Math.sqrt(Math.pow(target.x - obj.x, 2) + Math.pow(target.y - obj.y, 2)) * this.speed) - 50; - - let isRotten = (Math.random() < 0.3); - let particles = null; - if (!isRotten) { - particles = { - color: { - start: ['ffeb38', 'db5538'], - end: ['d43346', '763b3b'] - }, - scale: { - start: { - min: 4, - max: 8 - }, - end: { - min: 0, - max: 4 - } - }, - lifetime: { - min: 2, - max: 4 - }, - alpha: { - start: 0.7, - end: 0 - }, - randomScale: true, - randomColor: true, - chance: 0.6 - }; - } else { - particles = { - color: { - start: ['fc66f7', 'a24eff'], - end: ['533399', '393268'] - }, - scale: { - start: { - min: 4, - max: 8 - }, - end: { - min: 0, - max: 4 - } - }, - lifetime: { - min: 2, - max: 4 - }, - alpha: { - start: 0.7, - end: 0 - }, - randomScale: true, - randomColor: true, - chance: 0.6 - }; - } - - let projectileConfig = { - caster: this.obj.id, - components: [{ - idSource: this.obj.id, - target: target, - type: 'projectile', - ttl: ttl, - projectileOffset: null, - particles: particles - }] - }; - - this.sendAnimation(projectileConfig); - - this.queueCallback(this.createChunk.bind(this, isRotten, target, particles), ttl, null, target); - - return true; - }, - - createChunk: function (isRotten, pos, particles) { - let cell = isRotten ? 73 : 72; - - particles.chance = 0.1; - - this.obj.instance.objects.buildObjects([{ - sheetName: `${this.folderName}/images/mobs.png`, - cell: cell, - x: pos.x, - y: pos.y, - properties: { - cpnPumpkinChunk: cpnPumpkinChunk, - cpnParticles: { - simplify: function () { - return { - type: 'particles', - blueprint: this.blueprint - }; - }, - blueprint: particles - } - }, - extraProperties: { - pumpkinChunk: { - caster: this.obj, - isRotten: isRotten - } - } - }]); - } -};