Casting Chilling Frost and Stealth skill again will not be processed and return an error instead. Fixes #12361. (#12404)

* Added logic for a repeating Chilling Frost skill. Added test case for redundant chilling frost skill cast. Added comments for the logic of repeating Stealth skill because of an error.

* Added logic for a repeating Stealth skill. Avoiding MP reduction still pending because of console error. Test cases pending.

* Completed the logic for a repeated Stealth skill. Added repeated frost skill cast check in common. Removed exclusive test. Test cases are pending.

* Added test case for Stealth skill recast. Fixed lint errors. Fixed a flaw in if statement which led to test case failure.

* Fixed lint errors in test case.

* Added a common JSON entry for skil recasts in three files. Other files remaining. Added Chilling Frost recast check in common code. Modified test cases.

* Added spellDisabled condition in client code.

* Reverted JSON messages for three languages. Added spellAlreadyCast attribute to JSON file in locales/en. Made changes for showing appropriate message in client code.

* Added an import for throwing BadRequest in common code. Modified test case accordingly.

* Update website/common/script/content/spells.js

Co-authored-by: Matteo Pagliazzi <matteopagliazzi@gmail.com>

* Added target and req attributes in cast() method arguments.

* Changed common code test case because of increased function parameters. Moved chilling frost test casse to common tests instead of server tests.

* Changed the test case format in common tests.

* Added a missing done statement.

* Fixed a minor error which led to failing test case. Removed the exclusive test which led to lint error.

* Fixed lint errors.

* Added a class named 'disabled' for the frontend change.

* fix(skills): style cleanup

* fix(skills): unfix

Co-authored-by: Matteo Pagliazzi <matteopagliazzi@gmail.com>
Co-authored-by: Sabe Jones <sabrecat@gmail.com>
This commit is contained in:
Jalansh
2020-08-09 21:55:59 +05:30
committed by GitHub
parent d7d7f82723
commit c0bf2cffea
6 changed files with 72 additions and 17 deletions

View File

@@ -163,6 +163,20 @@ async function castSpell (req, res, { isV3 = false }) {
task: results[1],
});
} else if (targetType === 'self') {
const spellName = spell.key;
// Check if stealth skill has been previously casted or not.
// See #12361 for more details.
if (spellName === 'stealth') {
const incompleteDailiesDue = await Tasks.Task.countDocuments({
userId: user._id,
type: 'daily',
completed: false,
isDue: true,
}).exec();
if (user.stats.buffs.stealth >= incompleteDailiesDue) {
throw new BadRequest(res.t('spellAlreadyCast'));
}
}
await castSelfSpell(req, user, spell, quantity);
let userToJson = user;