250 lines
13 KiB
JavaScript
250 lines
13 KiB
JavaScript
const lux = 'Lux';
|
|
const wilme = 'Wilme';
|
|
const kamil = 'Kamil';
|
|
const olvan = 'Olvan';
|
|
const esuna = 'Esuna';
|
|
const lejes = 'Lejes';
|
|
const valsu = 'Valsu';
|
|
|
|
const lemele = 'Lemele';
|
|
const rablesk = 'Rablesk';
|
|
const bonro = 'Bonro';
|
|
const zellis = 'Zellis';
|
|
const pell = 'Pell';
|
|
const patrof = 'Patrof';
|
|
const bone = 'Bone';
|
|
const dowaine = 'Dowaine';
|
|
const belaine = 'Belaine';
|
|
const telaine = 'Telaine';
|
|
const pang = 'Pang';
|
|
const polasu = 'Polasu';
|
|
const pandam = 'Pandam';
|
|
const bilthem = 'Bilthem';
|
|
const padal = 'Padal';
|
|
const brush = 'Brush';
|
|
const tiffana = 'Tiffana';
|
|
const valenca = 'Valenca';
|
|
const pharano = 'Pharano';
|
|
const bugask = 'Bugask';
|
|
const guanta = 'Guanta';
|
|
const pasanda = 'Pasanda';
|
|
const melenam = 'Melenam';
|
|
const ligena = 'Ligena';
|
|
const airship = 'Airship';
|
|
const palsu = 'Palsu';
|
|
|
|
const initial = char => `Initial (${char})`;
|
|
|
|
const weapon = (name, attack, cost, users, locations) => {
|
|
return {
|
|
name,
|
|
attack,
|
|
cost,
|
|
users,
|
|
locations,
|
|
};
|
|
};
|
|
|
|
exports.weapons = [
|
|
weapon('Claw', 2, 0, [ wilme ], [ initial(wilme) ]),
|
|
|
|
weapon('ZnteFT', 2, 1000, [ lux ], [initial(lux) ]),
|
|
weapon('KrynFT', 20, 22000, [ lux ], [ melenam, airship ]),
|
|
|
|
weapon('FireAX', 2, 70, [ olvan, kamil ], [ lemele, bonro, initial(olvan) ]),
|
|
weapon('PsyteAX', 6, 300, [olvan, kamil ], [ rablesk, bonro ]),
|
|
weapon('AnimAX', 19, 2500, [ olvan, kamil ], [ zellis, pell ]),
|
|
weapon('AngerAX', 23, 4000, [ olvan, kamil ], [ pell, patrof, bone, dowaine, pang ]),
|
|
weapon('PowerAX', 31, 8100, [ olvan ], [ bone, dowaine, belaine, telaine, polasu ]),
|
|
weapon('DespAX', 40, 16000, [ olvan ], [ belaine, telaine, padal, bilthem, pandam, brush ]),
|
|
weapon('KrynAX', 50, 22200, [ olvan ], [ pang, padal, tiffana, bilthem, pandam, brush, valenca, pharano ]),
|
|
weapon('FearAX', 58, 28000, [ olvan ], [ pang, bugask, guanta ]),
|
|
weapon('MystAX', 72, 35000, [ olvan ], [ valenca, pharano, pasanda, melenam ]),
|
|
weapon('HopeAX', 80, 43000, [ olvan ], [ pasanda, ligena, palsu, melenam ]),
|
|
weapon('ImmoAX', 120, 56000, [ olvan ], [ palsu, airship ]),
|
|
|
|
weapon('TranqSW', 2, 50, [ olvan, kamil, lejes ], [ initial(kamil), initial(lejes) ]),
|
|
weapon('ZnteSW', 2, 100, [ olvan, kamil, lejes ], [ 'Buy in Belaine for 4000G' ]),
|
|
weapon('PsyteSW', 4, 150, [olvan, kamil, lejes ], [ lemele, rablesk ]),
|
|
weapon('AnimSW', 7, 350, [olvan, kamil, lejes ], [ lemele, rablesk, bonro ]),
|
|
weapon('KrynSW', 12, 800, [olvan, kamil, lejes ], [ bonro ]),
|
|
weapon('AngerSW', 16, 1700, [olvan, kamil, lejes ], [ zellis, pell ]),
|
|
weapon('TidalSW', 18, 1000, [olvan, kamil, lejes ], [ 'Buy in Belaine for 1000G' ]),
|
|
weapon('NatrSW', 21, 2600, [olvan, kamil, lejes ], [ zellis, pell, patrof ]),
|
|
weapon('BrillSW', 25, 4500, [ kamil, lejes ], [ patrof, bone, dowaine ]),
|
|
weapon('SwordSW', 25, 2000, [ wilme, olvan, kamil, lejes, valsu, esuna ], [ 'Dropped by Sword' ]),
|
|
weapon('MuraSW', 26, 5020, [ kamil, lejes ], [ 'Buy in Belaine for 5000G' ]),
|
|
weapon('CourSW', 28, 5300, [ kamil, lejes ], [ bone, dowaine, telaine, pang ]),
|
|
weapon('DespSW', 33, 8200, [ kamil, lejes ], [ belaine, telaine, polasu, tiffana, pandam, brush, valenca ]),
|
|
weapon('FearSW', 38, 11500, [ kamil, lejes ], [ belaine, padal, polasu, tiffana, pandam, brush, valenca, bugask, guanta ]),
|
|
weapon('FortSW', 38, 25000, [ valsu, esuna ], [ 'Gorfun Castle (present)' ]),
|
|
weapon('FireSW', 45, 15200, [ kamil ], [ padal, bilthem, bugask, guanta ]),
|
|
weapon('InsaSW', 53, 20000, [ kamil ], [ bilthem ]),
|
|
weapon('AnscSW', 67, 28500, [ olvan, kamil, lejes ], [ guanta, pharano, pasanda, ligena, melenam ]),
|
|
weapon('DoomSW', 90, 37000, [ olvan, kamil, lejes ], [ pharano, pasanda, ligena, palsu, melenam, airship ]),
|
|
weapon('VictSW', 100, 48000, [ kamil ], [ palsu, airship ]),
|
|
|
|
weapon('LightKN', 5, 400, [ valsu, esuna ], [ lemele, rablesk ]),
|
|
weapon('Saber', 11, 1700, [ valsu, esuna ], [ zellis, pell, polasu ]),
|
|
weapon('FireKN', 26, 15200, [ valsu, esuna ], [ polasu ]),
|
|
|
|
weapon('LightST', 1, 30, [ olvan, kamil, lejes, valsu, esuna ], [ initial(valsu), initial(esuna) ]),
|
|
weapon('PetrST', 3, 180, [ olvan, kamil, lejes, valsu, esuna ], [ lemele, rablesk, bonro ]),
|
|
weapon('TideRD', 8, 1000, [ olvan, kamil, lejes, valsu, esuna ], [ zellis, patrof ]),
|
|
weapon('ConfRD', 14, 2500, [ olvan, kamil, lejes, valsu, esuna ], [ patrof, bone, dowaine, belaine, telaine, pandam, valenca ]),
|
|
weapon('BrillRD', 17, 4000, [ olvan, kamil, lejes, valsu, esuna ], [ telaine, pang, padal, tiffana, bilthem, brush ]),
|
|
weapon('DespRD', 20, 5800, [ olvan, kamil, lejes, valsu, esuna ], [ tiffana, bugask, guanta ]),
|
|
weapon('NatrRD', 30, 20000, [ olvan, kamil, lejes, valsu, esuna ], [ bugask, pharano ]),
|
|
weapon('FearRD', 50, 32000, [ olvan, kamil, valsu, esuna ], [ pasanda, ligena ]),
|
|
weapon('MystRD', 75, 40000, [ olvan, kamil, valsu, esuna ], [ ligena ]),
|
|
weapon('ImmoRD', 85, 55000, [ lejes, valsu, esuna ], [ palsu, airship ]),
|
|
];
|
|
|
|
const armor = (name, defense, cost, users, locations, resistance) => {
|
|
resistance = resistance || [ 0, 0, 0, 0, 0 ];
|
|
return {
|
|
name,
|
|
defense,
|
|
cost,
|
|
users,
|
|
locations,
|
|
resistance: {
|
|
thunder: resistance[0],
|
|
fire: resistance[1],
|
|
ice: resistance[2],
|
|
vacuum: resistance[3],
|
|
debuff: resistance[4],
|
|
},
|
|
};
|
|
};
|
|
|
|
exports.armor = [
|
|
armor('Xtri', 2, 0, [ wilme ], [ initial(wilme) ]),
|
|
|
|
armor('Coat', 8, 2000, [ lux ], [ initial(lux) ]),
|
|
armor('Brwn', 12, 3000, [ lux ], [ 'Find in Melenam (present)' ]),
|
|
armor('Blck', 30, 36000, [ lux ], [ melenam, airship ], [ 10, 10, 10, 10, 10 ]),
|
|
|
|
armor('XtriAR', 1, 80, [ olvan, kamil ], [ initial(olvan), initial(kamil) ]),
|
|
armor('PsyteAR', 5, 700, [ olvan, kamil ], [ lemele, rablesk, bonro, zellis, pell, dowaine ]),
|
|
armor('AnimAR', 8, 1600, [ olvan, kamil ], [ zellis, pell, patrof, bone, dowaine ]),
|
|
armor('RoylAR', 14, 2400, [ olvan, kamil ], [ patrof, bone, belaine, telaine, pang, padal, pandam, valenca ]),
|
|
armor('CourAR', 18, 5000, [ olvan, kamil ], [ belaine, telaine, pang, padal, polasu, tiffana, pandam, valenca ]),
|
|
armor('BravAR', 24, 8800, [ olvan, kamil ], [ polasu, tiffana, brush ]),
|
|
armor('MystcAR', 32, 12000, [ olvan, kamil ], [ bilthem, brush, bugask, guanta ]),
|
|
armor('FortAR', 42, 14200, [ olvan, kamil ], [ bilthem, bugask, guanta, pharano, pasanda ]),
|
|
armor('ScaleML', 50, 18000, [ olvan, kamil ], [ pharano, pasanda, ligena, palsu ]),
|
|
armor('ChainML', 72, 23000, [ olvan, kamil ], [ ligena, palsu ]),
|
|
armor('KrynML', 88, 33000, [ olvan, kamil ], [ melenam, airship ]),
|
|
|
|
armor('LghtRB', 1, 60, [ olvan, kamil, lejes, valsu, esuna ], [ initial(lejes), initial(valsu), initial(esuna) ]),
|
|
armor('CttnRB', 2, 440, [ lejes, valsu, esuna ], [ lemele, rablesk ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('SilkRB', 4, 800, [ lejes, valsu, esuna ], [ bonro, zellis, pell ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('XtreRB', 6, 1600, [ olvan, kamil, lejes, valsu, esuna ], [ zellis ]),
|
|
armor('SeasRB', 8, 3700, [ lejes, valsu, esuna ], [ pell, patrof, dowaine, belaine, pang ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('HopeRB', 12, 5600, [ lejes, valsu, esuna ], [ bone, dowaine, belaine, telaine, pang, padal, polasu, tiffana, bilthem, brush ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('AngerRB', 16, 9000, [ lejes, valsu, esuna ], [ telaine, padal, polasu, tiffana, bilthem, pandam, brush ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('VictRB', 21, 14000, [ lejes, valsu, esuna ], [ pandam, valenca, bugask, guanta ], [ 0, 0, 0, 20, 20 ]),
|
|
armor('DespRB', 26, 20000, [ lejes, valsu, esuna ], [ valenca, bugask, guanta, pharano ], [ 10, 10, 10, 20, 20 ]),
|
|
armor('ConfRB', 30, 32000, [ lejes, valsu, esuna ], [ pharano, pasanda, ligena, melenam ], [ 10, 10, 10, 20, 20 ]),
|
|
armor('MystcRB', 36, 48000, [ lejes, valsu, esuna ], [ pasanda, ligena, palsu, melenam, airship ], [ 10, 10, 10, 30, 30 ]),
|
|
armor('ImmoRB', 42, 56000, [ lejes, valsu, esuna ], [ palsu, airship ], [ 20, 20, 20, 30, 30 ]),
|
|
|
|
armor('FireCL', 20, 10000, [ olvan, kamil, lejes, valsu, esuna ], [ 'Find in Dowaine' ], [ 0, 40, 0, 0, 0 ]),
|
|
armor('IceCL', 20, 10000, [ olvan, kamil, lejes, valsu, esuna ], [ 'Find in Baran Castle' ], [ 0, 0, 40, 0, 0 ]),
|
|
];
|
|
|
|
const accessory = (name, defense, cost, users, locations, resistance) => {
|
|
resistance = resistance || [ 30, 30, 30, 30, 30 ];
|
|
return {
|
|
name,
|
|
defense,
|
|
cost,
|
|
users,
|
|
locations,
|
|
resistance: {
|
|
thunder: resistance[0],
|
|
fire: resistance[1],
|
|
ice: resistance[2],
|
|
vacuum: resistance[3],
|
|
debuff: resistance[4],
|
|
},
|
|
};
|
|
};
|
|
|
|
exports.accessories = [
|
|
accessory('Horn', 0, 0, [ wilme ], [ initial(wilme) ]),
|
|
accessory('Pod', 2, 2, [ lux ], [ initial(lux) ]),
|
|
|
|
accessory('XtriSH', 1, 70, [ olvan, kamil ], [ rablesk, bonro, zellis, tiffana ]),
|
|
accessory('KrynSH', 8, 500, [ olvan, kamil ], [ zellis, pell, patrof, bone ]),
|
|
accessory('CourSH', 14, 3000, [ olvan, kamil ], [ patrof, bone, dowaine, pang ]),
|
|
accessory('BrillSH', 18, 6800, [ olvan, kamil ], [ belaine, telaine ]),
|
|
accessory('JustSH', 24, 8600, [ olvan, kamil ], [ pandam ]),
|
|
accessory('SoundSH', 28, 10200, [ olvan, kamil ], [ polasu, bilthem ]),
|
|
accessory('MystSH', 32, 16200, [ olvan, kamil ], [ brush ]),
|
|
accessory('AngerSH', 36, 23000, [ olvan, kamil ], [ padal, pasanda ]),
|
|
accessory('IllusSH', 38, 24000, [ olvan, kamil ], [ 'Find in Grime tower' ]),
|
|
accessory('MystcSH', 40, 31000, [ olvan, kamil ], [ valenca, bugask, guanta, pharano, pasanda ]),
|
|
accessory('FrtnSH', 50, 42000, [ olvan, kamil ], [ ligena, palsu, melenam ]),
|
|
accessory('ImmoSH', 56, 51000, [ olvan, kamil ], [ melenam, airship ]),
|
|
|
|
accessory('XtriHM', 0, 40, [ olvan, kamil, lejes, valsu, esuna ], [ initial(olvan), initial(kamil), initial(lejes), initial(valsu), initial(esuna) ], [ 30, 30, 30, 40, 40 ]),
|
|
accessory('Scarf', 10, 1200, [ lejes, valsu, esuna ], [ bonro ], [ 30, 30, 30, 40, 40 ]),
|
|
accessory('MaskMK', 20, 9500, [ lejes, valsu, esuna ], [ pang ], [ 30, 30, 30, 40, 40 ]),
|
|
accessory('KrynMK', 40, 20000, [ valsu, esuna ], [ bugask ], [ 30, 30, 30, 40, 40 ]),
|
|
accessory('BrillCR', 60, 45000, [ valsu, esuna ], [ palsu, airship ], [ 30, 30, 30, 40, 60 ]),
|
|
|
|
accessory('Ring', 20, 12000, [ olvan, kamil, lejes, valsu, esuna ], [ 'Find in Pandam Inn' ], [ 30, 30, 30, 95, 30 ]),
|
|
accessory('Amulet', 30, 10000, [ olvan, kamil, lejes, valsu, esuna ], [ 'Find in Bilthem' ], [ 30, 30, 30, 30, 95 ]),
|
|
];
|
|
|
|
const item = (name, cost, effect, locations) => {
|
|
return {
|
|
name,
|
|
cost,
|
|
effect,
|
|
locations,
|
|
};
|
|
};
|
|
|
|
exports.items = [
|
|
item('Potn1', 20, 'Heal1', [ lemele, rablesk, bonro, zellis, pell, bone, dowaine, belaine, telaine, pang, padal, polasu, tiffana, bilthem, valenca, bugask, guanta ]),
|
|
item('Potn2', 100, 'Heal2', [ lemele, rablesk, bonro, zellis, pell, patrof, bone, dowaine, belaine, telaine, pang, padal, polasu, tiffana, bilthem, pandam, brush, valenca, bugask, guanta, pharano, pasanda, ligena, palsu, melenam ]),
|
|
item('Potn3', 400, 'Heal3', [ bilthem, brush, valenca, bugask, guanta, pharano, pasanda, ligena, palsu, melenam, airship ]),
|
|
item('Recvry', 1000, 'Elixir', []),
|
|
item('MHerb1', 80, 'Restores 20 MP', [ lemele, rablesk, bonro, pell, bone, belaine, polasu ]),
|
|
item('MHerb2', 200, 'Restores 40 MP', [ valenca, pharano, ligena, palsu, melenam, airship ]),
|
|
item('M Water', 1200, 'Revive2', [ zellis, patrof, bone, dowaine, belaine, telaine, pang, padal, polasu, tiffana, bilthem, pandam, brush, valenca, bugask, guanta, pharano, pasanda, ligena, palsu, melenam, airship ]),
|
|
item('Antid', 80, 'Purify', [ lemele, rablesk, bonro, zellis, pell, patrof, dowaine, padal, tiffana, valenca, bugask, pasanda, ligena, palsu, melenam ]),
|
|
item('B Power', 100, 'Power', [ lemele, pell, patrof, pang, pharano, airship ]),
|
|
item('B Prtct', 100, 'Defense1', [ rablesk, pell, pang, padal ]),
|
|
item('S Dstry', 100, 'Defense2', [ polasu ]),
|
|
item('B Aglty', 100, 'Agility', [ pang, padal, pasanda, palsu, airship ]),
|
|
item('Mirror', 200, 'Reflect Petrify', [ zellis, pang, pandam, guanta, ligena, palsu, airship ]),
|
|
item('Harp', 500, 'Prevents Vacuum', [ polasu, bilthem, ligena, airship ]),
|
|
item('B Fire', 20, 'Fire1', [ bone, guanta ]),
|
|
item('B Ice', 20, 'Ice1', [ dowaine, belaine, bugask ]),
|
|
item('B Fossl', 100, 'Petrify', [ bonro, pang, bugask ]),
|
|
item('Msquito', 150, 'HPCatcher', [ polasu, pasanda ]),
|
|
item('M Siphn', 200, 'MPCatcher', [ telaine, polasu ]),
|
|
item('Vacuum', 200, 'Vacuum1', [ pang, tiffana ]),
|
|
item('Exigate', 40, 'Exit', [ bonro, patrof ]),
|
|
item('Winball', 80, 'Wind Rune', [ pell, bone, dowaine, belaine, telaine, polasu, pandam, brush, valenca, bugask, guanta ]),
|
|
|
|
item('Opal', 100, 'Gem', [ lemele, rablesk, zellis, bone, dowaine, padal, tiffana, pandam, brush ]),
|
|
item('Pearl', 200, 'Gem', [ lemele, rablesk, bonro, pell, patrof, dowaine, belaine, telaine, padal, bilthem, pandam, brush, valenca, bugask, guanta, pharano, pasanda, ligena, palsu, melenam ]),
|
|
item('Topaz', 500, 'Gem', [ lemele, rablesk, bonro, zellis, pell, patrof, bone, telaine, tiffana, pandam, brush, pharano, melenam ]),
|
|
item('Ruby', 1000, 'Gem', [ bonro, zellis, patrof, bone, dowaine, belaine, padal, tiffana, bilthem, brush, valenca, guanta, pharano, pasanda, ligena]),
|
|
item('Saphr', 2500, 'Gem', [ zellis, patrof, belaine, tiffana, bilthem, pandam, pharano, pasanda, palsu, melenam ]),
|
|
item('Emrld', 5000, 'Gem', [ telaine, bilthem, brush, airship ]),
|
|
item('Dmnd', 10000, 'Gem', [ telaine, pandam, melenam, airship ]),
|
|
|
|
item('V Seed', 1000, 'Permanently increase MaxHP by 1-4 points', []),
|
|
item('M Seed', 1000, 'Permanently increase MaxMP by 1-4 points', []),
|
|
item('P Seed', 1000, 'Permanently increase Power by 1-4 points', []),
|
|
item('Pr Seed', 1000, 'Permanently increase Guard by 1-4 points', []),
|
|
item('I Seed', 1000, 'Permanently increase Magic by 1-4 points', []),
|
|
item('A Seed', 1000, 'Permanently increase Speed by 1-4 points', []),
|
|
];
|