From 99e4f9b458e814b9e83411baaf295a18c6c8f99b Mon Sep 17 00:00:00 2001 From: Alice Harris Date: Wed, 10 Sep 2014 18:40:08 +1000 Subject: [PATCH] fix rebirth issues: reset levelDrops, wipe buffs, deequip all gear types --- dist/habitrpg-shared.js | 10 ++++++++-- script/index.coffee | 4 ++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/dist/habitrpg-shared.js b/dist/habitrpg-shared.js index 4dc51b7bd3..1b9ad8fe11 100644 --- a/dist/habitrpg-shared.js +++ b/dist/habitrpg-shared.js @@ -13213,6 +13213,7 @@ api.wrap = function(user, main) { }); gear = user.items.gear; _.each(['equipped', 'costume'], function(type) { + gear[type] = {}; gear[type].armor = 'armor_base_0'; gear[type].weapon = 'weapon_warrior_0'; gear[type].head = 'head_base_0'; @@ -13252,6 +13253,7 @@ api.wrap = function(user, main) { flags.itemsEnabled = false; flags.dropsEnabled = false; flags.classSelected = false; + flags.levelDrops = {}; if (!user.achievements.rebirths) { user.achievements.rebirths = 1; user.achievements.rebirthLevel = lvl; @@ -13259,6 +13261,10 @@ api.wrap = function(user, main) { user.achievements.rebirths++; user.achievements.rebirthLevel = lvl; } + user.stats.buffs = {}; + if (typeof user.markModified === "function") { + user.markModified('stats'); + } if (typeof cb === "function") { cb(null, user); } @@ -14471,5 +14477,5 @@ api.wrap = function(user, main) { }; -}).call(this,require("/Users/lefnire/Dropbox/Sites/habitrpg/modules/habitrpg-shared/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js")) -},{"./content.coffee":5,"./i18n.coffee":6,"/Users/lefnire/Dropbox/Sites/habitrpg/modules/habitrpg-shared/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js":2,"lodash":3,"moment":4}]},{},[1]) \ No newline at end of file +}).call(this,require("/vagrant/node_modules/habitrpg-shared/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js")) +},{"./content.coffee":5,"./i18n.coffee":6,"/vagrant/node_modules/habitrpg-shared/node_modules/browserify/node_modules/insert-module-globals/node_modules/process/browser.js":2,"lodash":3,"moment":4}]},{},[1]) \ No newline at end of file diff --git a/script/index.coffee b/script/index.coffee index b3f1253061..b58af72004 100644 --- a/script/index.coffee +++ b/script/index.coffee @@ -467,6 +467,7 @@ api.wrap = (user, main=true) -> # Deequip character, set back to base armor and training sword gear = user.items.gear _.each ['equipped', 'costume'], (type) -> + gear[type] = {}; # deequip weapon, eyewear, headAccessory, etc, plus future new types gear[type].armor = 'armor_base_0' gear[type].weapon = 'weapon_warrior_0' gear[type].head = 'head_base_0' @@ -485,6 +486,7 @@ api.wrap = (user, main=true) -> flags.itemsEnabled = false flags.dropsEnabled = false flags.classSelected = false + flags.levelDrops = {} # Award an achievement if this is their first Rebirth, or if they made it further than last time if not (user.achievements.rebirths) user.achievements.rebirths = 1 @@ -492,6 +494,8 @@ api.wrap = (user, main=true) -> else if (lvl > user.achievements.rebirthLevel or lvl is 100) user.achievements.rebirths++ user.achievements.rebirthLevel = lvl + user.stats.buffs = {} + user.markModified? 'stats' cb? null, user ga?.event('purchase', 'Rebirth').send()