diff --git a/migrations/20170811_pinned_items.js b/migrations/20170928_redesign_launch.js similarity index 80% rename from migrations/20170811_pinned_items.js rename to migrations/20170928_redesign_launch.js index 3c12a01531..3ff9970d83 100644 --- a/migrations/20170811_pinned_items.js +++ b/migrations/20170928_redesign_launch.js @@ -1,12 +1,13 @@ var updateStore = require('../website/common/script/libs/updateStore'); var getItemInfo = require('../website/common/script/libs/getItemInfo'); -var migrationName = '20170811_pinned_items.js'; +var migrationName = '20170928_redesign_launch.js'; var authorName = 'paglias'; // in case script author needs to know when their ... var authorUuid = 'ed4c688c-6652-4a92-9d03-a5a79844174a'; //... own data is done /* * Migrate existing in app rewards lists to pinned items + * Award Veteran Pets */ var monk = require('monk'); @@ -16,9 +17,16 @@ var dbUsers = monk(connectionString).get('users', { castIds: false }); function processUsers(lastId) { // specify a query to limit the affected users (empty for all users): var query = { - 'migration':{$ne:migrationName}, + 'migration': {$ne:migrationName}, + 'auth.timestamps.loggedin': {$gt: new Date('2017-09-21')}, }; + var fields = { + 'items.pets': 1, + 'items.gear': 1, + 'stats.class': 1, + } + if (lastId) { query._id = { $gt: lastId @@ -26,6 +34,7 @@ function processUsers(lastId) { } return dbUsers.find(query, { + fields: fields, sort: {_id: 1}, limit: 250, }) @@ -84,6 +93,16 @@ function updateUser (user) { set.pinnedItems = newPinnedItems; + if (user.items.pets['Lion-Veteran']) { + set['items.pets.Bear-Veteran'] = 5; + } else if (user.items.pets['Tiger-Veteran']) { + set['items.pets.Lion-Veteran'] = 5; + } else if (user.items.pets['Wolf-Veteran']) { + set['items.pets.Tiger-Veteran'] = 5; + } else { + set['items.pets.Wolf-Veteran'] = 5; + } + if (count % progressCount == 0) console.warn(count + ' ' + user._id); if (user._id == authorUuid) console.warn(authorName + ' processed'); diff --git a/website/assets/sprites/spritesmith/stable/pets/Pet-Bear-Veteran.png b/website/assets/sprites/spritesmith/stable/pets/Pet-Bear-Veteran.png new file mode 100644 index 0000000000..bf275c27d2 Binary files /dev/null and b/website/assets/sprites/spritesmith/stable/pets/Pet-Bear-Veteran.png differ diff --git a/website/common/locales/en/pets.json b/website/common/locales/en/pets.json index 2318d830f3..38ea8b13c2 100644 --- a/website/common/locales/en/pets.json +++ b/website/common/locales/en/pets.json @@ -18,6 +18,7 @@ "veteranWolf": "Veteran Wolf", "veteranTiger": "Veteran Tiger", "veteranLion": "Veteran Lion", + "veteranBear": "Veteran Bear", "cerberusPup": "Cerberus Pup", "hydra": "Hydra", "mantisShrimp": "Mantis Shrimp", diff --git a/website/common/script/content/stable.js b/website/common/script/content/stable.js index fbff98e70f..1e77d9004e 100644 --- a/website/common/script/content/stable.js +++ b/website/common/script/content/stable.js @@ -69,6 +69,7 @@ let specialPets = { 'JackOLantern-Ghost': 'ghostJackolantern', 'Jackalope-RoyalPurple': 'royalPurpleJackalope', 'Orca-Base': 'orca', + 'Bear-Veteran': 'veteranBear', }; let specialMounts = {