diff --git a/game/game.js b/game/game.js index 12f6e0eba..43f0c18b8 100644 --- a/game/game.js +++ b/game/game.js @@ -24746,9 +24746,32 @@ getExpansions:function(tag){ return this.getCards('x',(card)=>card.hasGaintag(tag)); }, + countExpansions:function(tag){ + return this.getExpansions(tag).length; + }, + hasExpansions:function(tag){ + return this.countExpansions(tag)>0; + }, + setStorage:function(name,value){ + return this.storage[name]=value; + }, getStorage:function(name){ return this.storage[name]||[]; }, + hasStorage:function(name){ + return name in this.storage; + }, + initStorage:function(name,value){ + return this.hasStorage(name)?this.getStorage(name):this.setStorage(name,value); + }, + updateStorage:function(name,operation){ + return this.setStorage(name,operation(this.getStorage(name))); + }, + updateStorageAsync:function(name,operation){ + return Promise.resolve(this.getStorage(name)) + .then(value=>operation(value)) + .then(value=>this.setStorage(name,value)) + }, markSkill:function(name,info,card){ if(info===true){ this.syncStorage(name);