mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 15:17:25 +01:00
lockQuest logic updates
This commit is contained in:
@@ -98,7 +98,7 @@ const quests = {
|
|||||||
notes: t('questAtom2Notes'),
|
notes: t('questAtom2Notes'),
|
||||||
completion: t('questAtom2Completion'),
|
completion: t('questAtom2Completion'),
|
||||||
group: 'questGroupAtom',
|
group: 'questGroupAtom',
|
||||||
previous: 'atom1',
|
previous1: 'atom1',
|
||||||
value: 4,
|
value: 4,
|
||||||
lvl: 15,
|
lvl: 15,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
@@ -124,7 +124,8 @@ const quests = {
|
|||||||
text: t('questAtom3Text'),
|
text: t('questAtom3Text'),
|
||||||
notes: t('questAtom3Notes'),
|
notes: t('questAtom3Notes'),
|
||||||
group: 'questGroupAtom',
|
group: 'questGroupAtom',
|
||||||
previous: 'atom2',
|
previous1: 'atom1',
|
||||||
|
previous2: 'atom2',
|
||||||
completion: t('questAtom3Completion'),
|
completion: t('questAtom3Completion'),
|
||||||
value: 4,
|
value: 4,
|
||||||
lvl: 15,
|
lvl: 15,
|
||||||
@@ -187,7 +188,7 @@ const quests = {
|
|||||||
completion: t('questGoldenknight2Completion'),
|
completion: t('questGoldenknight2Completion'),
|
||||||
group: 'questGroupGoldenknight',
|
group: 'questGroupGoldenknight',
|
||||||
value: 4,
|
value: 4,
|
||||||
previous: 'goldenknight1',
|
previous1: 'goldenknight1',
|
||||||
lvl: 40,
|
lvl: 40,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
boss: {
|
boss: {
|
||||||
@@ -208,13 +209,13 @@ const quests = {
|
|||||||
exp: 750,
|
exp: 750,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
<<<<<<< HEAD
|
|
||||||
goldenknight3: {
|
goldenknight3: {
|
||||||
text: t('questGoldenknight3Text'),
|
text: t('questGoldenknight3Text'),
|
||||||
notes: t('questGoldenknight3Notes'),
|
notes: t('questGoldenknight3Notes'),
|
||||||
group: 'questGroupGoldenknight',
|
group: 'questGroupGoldenknight',
|
||||||
completion: t('questGoldenknight3Completion'),
|
completion: t('questGoldenknight3Completion'),
|
||||||
previous: 'goldenknight2',
|
previous1: 'goldenknight1',
|
||||||
|
previous2: 'goldenknight2',
|
||||||
value: 4,
|
value: 4,
|
||||||
lvl: 40,
|
lvl: 40,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
@@ -222,23 +223,6 @@ const quests = {
|
|||||||
name: t('questGoldenknight3Boss'),
|
name: t('questGoldenknight3Boss'),
|
||||||
hp: 1700,
|
hp: 1700,
|
||||||
str: 3.5,
|
str: 3.5,
|
||||||
=======
|
|
||||||
egg: {
|
|
||||||
text: t('questEggHuntText'),
|
|
||||||
notes: t('questEggHuntNotes'),
|
|
||||||
completion: t('questEggHuntCompletion'),
|
|
||||||
value: 1,
|
|
||||||
category: 'pet',
|
|
||||||
canBuy () {
|
|
||||||
return CURRENT_EVENT && CURRENT_EVENT.season === 'spring';
|
|
||||||
},
|
|
||||||
event: CURRENT_EVENT && CURRENT_EVENT.season === 'spring' ? CURRENT_EVENT : null,
|
|
||||||
collect: {
|
|
||||||
plainEgg: {
|
|
||||||
text: t('questEggHuntCollectPlainEgg'),
|
|
||||||
count: 40,
|
|
||||||
},
|
|
||||||
>>>>>>> upstream/develop
|
|
||||||
},
|
},
|
||||||
drop: {
|
drop: {
|
||||||
items: [
|
items: [
|
||||||
@@ -307,7 +291,7 @@ const quests = {
|
|||||||
notes: t('questMoon2Notes'),
|
notes: t('questMoon2Notes'),
|
||||||
group: 'questGroupMoon',
|
group: 'questGroupMoon',
|
||||||
completion: t('questMoon2Completion'),
|
completion: t('questMoon2Completion'),
|
||||||
previous: 'moon1',
|
previous1: 'moon1',
|
||||||
value: 4,
|
value: 4,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
unlockCondition: {
|
unlockCondition: {
|
||||||
@@ -337,7 +321,8 @@ const quests = {
|
|||||||
notes: t('questMoon3Notes'),
|
notes: t('questMoon3Notes'),
|
||||||
group: 'questGroupMoon',
|
group: 'questGroupMoon',
|
||||||
completion: t('questMoon3Completion'),
|
completion: t('questMoon3Completion'),
|
||||||
previous: 'moon2',
|
previous1: 'moon1',
|
||||||
|
previous2: 'moon2',
|
||||||
value: 4,
|
value: 4,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
unlockCondition: {
|
unlockCondition: {
|
||||||
@@ -370,9 +355,6 @@ const quests = {
|
|||||||
value: 4,
|
value: 4,
|
||||||
lvl: 60,
|
lvl: 60,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
unlockCondition: {
|
|
||||||
lvl: 60,
|
|
||||||
},
|
|
||||||
collect: {
|
collect: {
|
||||||
moonstone: {
|
moonstone: {
|
||||||
text: t('questMoonstone1CollectMoonstone'),
|
text: t('questMoonstone1CollectMoonstone'),
|
||||||
@@ -398,13 +380,9 @@ const quests = {
|
|||||||
completion: t('questMoonstone2Completion'),
|
completion: t('questMoonstone2Completion'),
|
||||||
group: 'questGroupMoonstone',
|
group: 'questGroupMoonstone',
|
||||||
value: 4,
|
value: 4,
|
||||||
// lvl: 60,
|
|
||||||
previous: 'moonstone1',
|
|
||||||
category: 'unlockable',
|
|
||||||
unlockCondition: {
|
|
||||||
lvl: 60,
|
lvl: 60,
|
||||||
previous: 'moonstone1',
|
previous1: 'moonstone1',
|
||||||
},
|
category: 'unlockable',
|
||||||
boss: {
|
boss: {
|
||||||
name: t('questMoonstone2Boss'),
|
name: t('questMoonstone2Boss'),
|
||||||
hp: 1500,
|
hp: 1500,
|
||||||
@@ -428,14 +406,11 @@ const quests = {
|
|||||||
notes: t('questMoonstone3Notes'),
|
notes: t('questMoonstone3Notes'),
|
||||||
group: 'questGroupMoonstone',
|
group: 'questGroupMoonstone',
|
||||||
completion: t('questMoonstone3Completion'),
|
completion: t('questMoonstone3Completion'),
|
||||||
previous: 'moonstone2',
|
previous1: 'moonstone1',
|
||||||
|
previous2: 'moonstone2',
|
||||||
value: 4,
|
value: 4,
|
||||||
lvl: 60,
|
lvl: 60,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
unlockCondition: {
|
|
||||||
lvl: 60,
|
|
||||||
previous: 'moonstone2',
|
|
||||||
},
|
|
||||||
boss: {
|
boss: {
|
||||||
name: t('questMoonstone3Boss'),
|
name: t('questMoonstone3Boss'),
|
||||||
hp: 2000,
|
hp: 2000,
|
||||||
@@ -519,7 +494,7 @@ const quests = {
|
|||||||
value: 4,
|
value: 4,
|
||||||
lvl: 30,
|
lvl: 30,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
previous: 'vice1',
|
previous1: 'vice1',
|
||||||
collect: {
|
collect: {
|
||||||
lightCrystal: {
|
lightCrystal: {
|
||||||
text: t('questVice2CollectLightCrystal'),
|
text: t('questVice2CollectLightCrystal'),
|
||||||
@@ -544,7 +519,8 @@ const quests = {
|
|||||||
notes: t('questVice3Notes'),
|
notes: t('questVice3Notes'),
|
||||||
group: 'questGroupVice',
|
group: 'questGroupVice',
|
||||||
completion: t('questVice3Completion'),
|
completion: t('questVice3Completion'),
|
||||||
previous: 'vice2',
|
previous1: 'vice1',
|
||||||
|
previous2: 'vice2',
|
||||||
value: 4,
|
value: 4,
|
||||||
lvl: 30,
|
lvl: 30,
|
||||||
category: 'unlockable',
|
category: 'unlockable',
|
||||||
@@ -617,7 +593,7 @@ const quests = {
|
|||||||
notes: t('questDilatoryDistress2Notes'),
|
notes: t('questDilatoryDistress2Notes'),
|
||||||
group: 'questGroupDilatoryDistress',
|
group: 'questGroupDilatoryDistress',
|
||||||
completion: t('questDilatoryDistress2Completion'),
|
completion: t('questDilatoryDistress2Completion'),
|
||||||
previous: 'dilatoryDistress1',
|
previous1: 'dilatoryDistress1',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 300,
|
goldValue: 300,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -657,7 +633,8 @@ const quests = {
|
|||||||
notes: t('questDilatoryDistress3Notes'),
|
notes: t('questDilatoryDistress3Notes'),
|
||||||
group: 'questGroupDilatoryDistress',
|
group: 'questGroupDilatoryDistress',
|
||||||
completion: t('questDilatoryDistress3Completion'),
|
completion: t('questDilatoryDistress3Completion'),
|
||||||
previous: 'dilatoryDistress2',
|
previous1: 'dilatoryDistress1',
|
||||||
|
previous2: 'dilatoryDistress2',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 400,
|
goldValue: 400,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -738,7 +715,7 @@ const quests = {
|
|||||||
notes: t('questMayhemMistiflying2Notes'),
|
notes: t('questMayhemMistiflying2Notes'),
|
||||||
group: 'questGroupMayhemMistiflying',
|
group: 'questGroupMayhemMistiflying',
|
||||||
completion: t('questMayhemMistiflying2Completion'),
|
completion: t('questMayhemMistiflying2Completion'),
|
||||||
previous: 'mayhemMistiflying1',
|
previous1: 'mayhemMistiflying1',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 300,
|
goldValue: 300,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -773,7 +750,8 @@ const quests = {
|
|||||||
notes: t('questMayhemMistiflying3Notes'),
|
notes: t('questMayhemMistiflying3Notes'),
|
||||||
group: 'questGroupMayhemMistiflying',
|
group: 'questGroupMayhemMistiflying',
|
||||||
completion: t('questMayhemMistiflying3Completion'),
|
completion: t('questMayhemMistiflying3Completion'),
|
||||||
previous: 'mayhemMistiflying2',
|
previous1: 'mayhemMistiflying1',
|
||||||
|
previous2: 'mayhemMistiflying2',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 400,
|
goldValue: 400,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -854,7 +832,7 @@ const quests = {
|
|||||||
notes: t('questStoikalmCalamity2Notes'),
|
notes: t('questStoikalmCalamity2Notes'),
|
||||||
group: 'questGroupStoikalmCalamity',
|
group: 'questGroupStoikalmCalamity',
|
||||||
completion: t('questStoikalmCalamity2Completion'),
|
completion: t('questStoikalmCalamity2Completion'),
|
||||||
previous: 'stoikalmCalamity1',
|
previous1: 'stoikalmCalamity1',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 300,
|
goldValue: 300,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -881,7 +859,8 @@ const quests = {
|
|||||||
notes: t('questStoikalmCalamity3Notes'),
|
notes: t('questStoikalmCalamity3Notes'),
|
||||||
group: 'questGroupStoikalmCalamity',
|
group: 'questGroupStoikalmCalamity',
|
||||||
completion: t('questStoikalmCalamity3Completion'),
|
completion: t('questStoikalmCalamity3Completion'),
|
||||||
previous: 'stoikalmCalamity2',
|
previous1: 'stoikalmCalamity1',
|
||||||
|
previous2: 'stoikalmCalamity2',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 400,
|
goldValue: 400,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -962,7 +941,7 @@ const quests = {
|
|||||||
notes: t('questTaskwoodsTerror2Notes'),
|
notes: t('questTaskwoodsTerror2Notes'),
|
||||||
group: 'questGroupTaskwoodsTerror',
|
group: 'questGroupTaskwoodsTerror',
|
||||||
completion: t('questTaskwoodsTerror2Completion'),
|
completion: t('questTaskwoodsTerror2Completion'),
|
||||||
previous: 'taskwoodsTerror1',
|
previous1: 'taskwoodsTerror1',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 300,
|
goldValue: 300,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -997,7 +976,8 @@ const quests = {
|
|||||||
notes: t('questTaskwoodsTerror3Notes'),
|
notes: t('questTaskwoodsTerror3Notes'),
|
||||||
group: 'questGroupTaskwoodsTerror',
|
group: 'questGroupTaskwoodsTerror',
|
||||||
completion: t('questTaskwoodsTerror3Completion'),
|
completion: t('questTaskwoodsTerror3Completion'),
|
||||||
previous: 'taskwoodsTerror2',
|
previous1: 'taskwoodsTerror1',
|
||||||
|
previous2: 'taskwoodsTerror2',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 400,
|
goldValue: 400,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -1101,7 +1081,7 @@ const quests = {
|
|||||||
text: t('questLostMasterclasser2Text'),
|
text: t('questLostMasterclasser2Text'),
|
||||||
notes: t('questLostMasterclasser2Notes'),
|
notes: t('questLostMasterclasser2Notes'),
|
||||||
group: 'questGroupLostMasterclasser',
|
group: 'questGroupLostMasterclasser',
|
||||||
previous: 'lostMasterclasser1',
|
previous1: 'lostMasterclasser1',
|
||||||
completion: t('questLostMasterclasser2Completion'),
|
completion: t('questLostMasterclasser2Completion'),
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 500,
|
goldValue: 500,
|
||||||
@@ -1164,7 +1144,8 @@ const quests = {
|
|||||||
notes: t('questLostMasterclasser3Notes'),
|
notes: t('questLostMasterclasser3Notes'),
|
||||||
group: 'questGroupLostMasterclasser',
|
group: 'questGroupLostMasterclasser',
|
||||||
completion: t('questLostMasterclasser3Completion'),
|
completion: t('questLostMasterclasser3Completion'),
|
||||||
previous: 'lostMasterclasser2',
|
previous1: 'lostMasterclasser1',
|
||||||
|
previous2: 'lostMasterclasser2',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 600,
|
goldValue: 600,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -1217,7 +1198,9 @@ const quests = {
|
|||||||
notes: t('questLostMasterclasser4Notes'),
|
notes: t('questLostMasterclasser4Notes'),
|
||||||
group: 'questGroupLostMasterclasser',
|
group: 'questGroupLostMasterclasser',
|
||||||
completion: t('questLostMasterclasser4Completion'),
|
completion: t('questLostMasterclasser4Completion'),
|
||||||
previous: 'lostMasterclasser3',
|
previous1: 'lostMasterclasser1',
|
||||||
|
previous2: 'lostMasterclasser2',
|
||||||
|
previous3: 'lostMasterclasser3',
|
||||||
value: 4,
|
value: 4,
|
||||||
goldValue: 700,
|
goldValue: 700,
|
||||||
category: 'gold',
|
category: 'gold',
|
||||||
@@ -3393,7 +3376,6 @@ const quests = {
|
|||||||
unlock: t('questTurquoiseUnlockText'),
|
unlock: t('questTurquoiseUnlockText'),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
<<<<<<< HEAD
|
|
||||||
// time travelers quests
|
// time travelers quests
|
||||||
robot: {
|
robot: {
|
||||||
text: t('questRobotText'),
|
text: t('questRobotText'),
|
||||||
@@ -3416,28 +3398,6 @@ const quests = {
|
|||||||
spring: {
|
spring: {
|
||||||
text: t('questRobotCollectSprings'),
|
text: t('questRobotCollectSprings'),
|
||||||
count: 10,
|
count: 10,
|
||||||
=======
|
|
||||||
waffle: {
|
|
||||||
text: t('questWaffleText'),
|
|
||||||
notes: t('questWaffleNotes'),
|
|
||||||
completion: t('questWaffleCompletion'),
|
|
||||||
value: 4,
|
|
||||||
category: 'hatchingPotion',
|
|
||||||
canBuy () {
|
|
||||||
return CURRENT_EVENT && CURRENT_EVENT.season === 'spring';
|
|
||||||
},
|
|
||||||
event: CURRENT_EVENT && CURRENT_EVENT.season === 'spring' ? CURRENT_EVENT : null,
|
|
||||||
boss: {
|
|
||||||
name: t('questWaffleBoss'),
|
|
||||||
hp: 500,
|
|
||||||
str: 2,
|
|
||||||
rage: {
|
|
||||||
title: t('questWaffleRageTitle'),
|
|
||||||
description: t('questWaffleRageDescription'),
|
|
||||||
value: 50,
|
|
||||||
progressDrain: 0.5,
|
|
||||||
effect: t('questWaffleRageEffect'),
|
|
||||||
>>>>>>> upstream/develop
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
drop: {
|
drop: {
|
||||||
|
|||||||
@@ -31,24 +31,36 @@ function lockQuest (quest, user) {
|
|||||||
&& user.achievements.quests.taskwoodsTerror3);
|
&& user.achievements.quests.taskwoodsTerror3);
|
||||||
}
|
}
|
||||||
|
|
||||||
// checks for multiple prerequisites
|
|
||||||
// if (quest.prerequisite === true) return true;
|
|
||||||
|
|
||||||
// level requirements
|
// level requirements
|
||||||
if (quest.lvl && user.stats.lvl < quest.lvl) return true;
|
if (quest.lvl && user.stats.lvl < quest.lvl) return true;
|
||||||
|
|
||||||
// unlockCondition requirements
|
// unlockCondition requirements for Lunar Battle
|
||||||
if (quest.unlockCondition
|
if (quest.unlockCondition
|
||||||
&& (quest.key === 'moon1' || quest.key === 'moon2' || quest.key === 'moon3')) {
|
&& (quest.key === 'moon1' || quest.key === 'moon2' || quest.key === 'moon3')) {
|
||||||
return user.loginIncentives < quest.unlockCondition.incentiveThreshold;
|
return user.loginIncentives < quest.unlockCondition.incentiveThreshold;
|
||||||
}
|
}
|
||||||
|
|
||||||
// checks to make sure that previous quest has been completed
|
// checks to make sure 1st quest completed (previous1)
|
||||||
if (user.achievements.quests) {
|
if (user.achievements.quests) {
|
||||||
return quest.previous
|
return quest.previous1
|
||||||
&& !user.achievements.quests[quest.previous];
|
&& !user.achievements.quests[quest.previous1];
|
||||||
}
|
}
|
||||||
return quest.previous;
|
|
||||||
|
// checks to make sure 1st and 2nd quests completed (previous1 and previous2)
|
||||||
|
if (user.achievements.quests) {
|
||||||
|
return quest.previous1
|
||||||
|
&& !user.achievements.quests[quest.previous1]
|
||||||
|
&& !user.achievements.quests[quest.previous2];
|
||||||
|
}
|
||||||
|
|
||||||
|
// checks to make sure 1st, 2nd, & 3rd quests completed (previous1, previous2, previous3)
|
||||||
|
if (user.achievements.quests) {
|
||||||
|
return quest.previous1
|
||||||
|
&& !user.achievements.quests[quest.previous1]
|
||||||
|
&& !user.achievements.quests[quest.previous2]
|
||||||
|
&& !user.achievements.quests[quest.previous3];
|
||||||
|
}
|
||||||
|
return quest.previous1;
|
||||||
}
|
}
|
||||||
|
|
||||||
function isItemSuggested (officialPinnedItems, itemInfo) {
|
function isItemSuggested (officialPinnedItems, itemInfo) {
|
||||||
|
|||||||
Reference in New Issue
Block a user