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', []), ];